Commit graph

78 commits

Author SHA1 Message Date
Heiko Becker
97e47efdf6 Make mmtelephony plugin optional
I see little purpose in pulling that stack in on a desktop computer,
which doesn't even have a modem.
2023-03-20 20:44:14 +01:00
Yoram Bar-Haim
7b1f10d4d5 Add support for phone side telephony plugin on Linux.
## Summary

Add support for Phone side (like in the Android and SailfishOS apps) to telephony plugin.
this requires ModemManager to work.
Call state notifications are currently supported, more capabilities are possible.

Tested on PinePhone but should probably work on every linux Phone with ModemManager.
to test, pair kdeconnect on your linux phone to desktop, and call your phone.
you should get notification on the desktop, telling you that phone call is incoming.
2022-12-28 01:06:22 +00:00
Volker Krause
002848efa8 Adapt build system to also support Qt 6
This is complicated by the Qt 5.6 requirement of SailfishOS, hopefully
that didn't get broken by this.
2022-10-29 16:51:41 +02:00
Aleix Pol
084bfebcc8 Introduce the VirtualMonitor plugin
It allows to use other paired devices as external displays
transparently.
2022-05-25 00:04:47 +02:00
Nicolas Fella
f7f3c01ec8 Use undeprecated install dirs
Using kde-dev-scripts/kf5/cmakelists_install_vars.pl
2022-04-21 00:50:14 +02:00
Nicolas Fella
dc34cfb66c Disable Battery plugin on Windows
It's causing severe issues

https://bugs.kde.org/show_bug.cgi\?id\=444612
2021-12-15 19:12:45 +01:00
Weixuan XIAO
55b946f825 Enable presenter on macOS
QML is currently available on macOS after packing in Craft
2021-07-30 09:35:39 +02:00
Piyush Aggarwal
86c12cd8e8 plugins: disable sendnotifications for Windows 2021-06-12 18:12:03 +05:30
David Shlemayev
a75da62f4d Add backend for ConnectivityReport plugin 2021-03-12 23:27:16 +00:00
Nicolas Fella
6016229082 Remove obsolete kservicetypes file 2020-11-16 12:21:24 +00:00
Nicolas Fella
8b82a30d40 CMake cleanup
Remove all include_directory calls

They are either unnecessary or can be done better
2020-11-16 12:21:07 +00:00
Piyush Aggarwal
be9e673127 bigscreenplugin: disable bigscreen plugin for Windows and MacOS builds.
BigScreen plugin does not make sense on Windows or MacOS (no Plasma DE)
2020-11-13 18:09:44 +05:30
Jun Bo Bi
4c011458c2 Add real support for mpriscontrol on Windows 2020-05-31 15:50:56 -04:00
Aditya Mehra
cf2967b9af Add Bigscreen plugin with support for Bigscreen STT packet type 2020-05-23 22:10:24 +00:00
Weixuan XIAO
15cbe32259 Disable presenter because of missing of qml 2020-05-09 11:57:48 +02:00
Richard Liebscher
bb5539c8c3 Make plugins work in SailfishConnect 2020-03-01 20:00:40 +00:00
Piyush Aggarwal
c1f8d689db re-write findthisdevice plugin + add support for Windows 2019-09-19 22:45:39 +00:00
Piyush Aggarwal
7e25e60c5f add inhibit screensaver plugin for Windows 2019-08-31 10:40:43 +00:00
Piyush Aggarwal
f65737da21 add basic SFTP Plugin for Windows 2019-08-22 02:21:32 +00:00
Piyush Aggarwal
c22c670fee pause music plugin for Win32 2019-08-21 02:38:35 +00:00
Nicolas Fella
24777524ad Make PulseAudioQt optional
Hopefully keeps those Pulseaudio deniers out pf my inbox
2019-08-01 13:57:32 +02:00
Albert Vaca Cintora
97a5f91cef Build presenter plugin by default 2019-07-20 18:28:50 +02:00
Nicolas Fella
f1b0d016ab Always build Kirigami app
Summary: It is functional on the desktop as well and provides a place for controls for desktop to desktop features (e.g. MprisRemote, LockPlugin) and controls for non-Plasma desktops (e.g. Remotekeyboard, not yet implemented)

Test Plan: Builds

Reviewers: #kde_connect, apol, sredman

Reviewed By: apol

Subscribers: piggz, apol, sredman, kdeconnect

Tags: #kde_connect

Differential Revision: https://phabricator.kde.org/D15399
2019-07-20 13:08:57 +02:00
Aleix Pol
a40c6e8101 Submitted proof of concept for a presenter plugin
Will show a cursor so we can point at interesting things on the screen during
presentations.
2019-07-05 17:58:46 +02:00
Weixuan Xiao
074c42c72b System Volume Plugin for macOS 2019-07-02 12:37:01 +00:00
Weixuan Xiao
12f1a0a75b Add inhibit screensaver plugin for macOS 2019-06-30 20:40:23 +00:00
Weixuan Xiao
58beafb242 Fix macos build 2019-05-19 09:41:56 +00:00
Nicolas Fella
ba30d97f92 [findthisdevice] Unmute muted sinks before ringing 2019-05-13 22:36:29 +00:00
Nicolas Fella
1d9ea25c2f Make PulseAudioQT mandatory
The ci issue has been sorted out

This reverts commit d3b41924b5.
2019-05-09 01:05:23 +02:00
Nicolas Fella
d3b41924b5 Revert "Make PulseAudioQT mandatory"
This breaks CI as PAQt is not yet available there

This reverts commit b48596d7c3.
2019-05-01 14:53:30 +02:00
Albert Vaca Cintora
3eb2f67d38 Fixme from 2014 is probably not a fixme 2019-05-01 14:46:25 +02:00
Nicolas Fella
b48596d7c3 Make PulseAudioQT mandatory 2019-05-01 14:41:50 +02:00
Piyush Aggarwal
5b73c081da replace phonon with QtMultimedia 2019-04-30 16:24:09 +00:00
Nicolas Fella
3f4f475991 [pausemusic] Port to PulseAudioQt 2019-04-28 19:31:39 +00:00
Nicolas Fella
dbccc641ed Add plugin for taking photos on remote device
Summary: This plugin sends a request for a photo to the connected device. The device then sends the photo back, currently via the SharePlugin.

Test Plan:
kdeconnect-cli --photo
Check for photo in Downlaods folder

Reviewers: #kde_connect, broulik, albertvaka

Reviewed By: #kde_connect, albertvaka

Subscribers: sredman, albertvaka, apol, ngraham, kdeconnect

Tags: #kde_connect

Differential Revision: https://phabricator.kde.org/D18140
2019-03-04 23:57:08 +01:00
Jun Bo Bi
f4c7e12ea6 [mpriscontrol] add primitive windows support
Summary: Added primitive support for the mpriscontrol plugin on Windows by simulating VK_MEDIA key presses. I took a look into `ISystemMediaTransportControls`, but there doesn't seem to query it since it's per app. Leaving simulating key presses our only option for now. Completes T10000

Reviewers: kdeconnect, #kde_connect, albertvaka

Reviewed By: #kde_connect, albertvaka

Subscribers: albertvaka

Tags: #kde_connect, #windows

Maniphest Tasks: T10000

Differential Revision: https://phabricator.kde.org/D17702
2018-12-21 19:24:06 +01:00
Jun Bo Bi
929fd062f2 Added Windows support to systemvolume plugin
Summary: I've added Windows support to the systemvolume plugin.

Test Plan: Move the volume sliders in the Android app

Reviewers: kdeconnect, #kde_connect, albertvaka

Reviewed By: #kde_connect, albertvaka

Subscribers: albertvaka, kdeconnect

Tags: #kde_connect, #windows

Maniphest Tasks: T10000

Differential Revision: https://phabricator.kde.org/D16936
2018-11-20 01:15:10 +01:00
Albert Vaca
f0486e16c9 [runcommand] Add windows support
Summary:
Added windows support to the runcommand plugin
Completes T10001

Test Plan:
1. Run a command
2. Run the command

Reviewers: #kde_connect, nicolasfella, albertvaka

Reviewed By: #kde_connect, albertvaka

Subscribers: albertvaka, shivanshukantprasad, apol, nicolasfella, kdeconnect, #kde_connect

Tags: #kde_connect, #windows

Differential Revision: https://phabricator.kde.org/D16746
2018-11-08 14:55:34 +01:00
Nicolas Fella
2f76d2143f [app] Add system volume control
Summary: Add a remote systemvolume plugin.

Test Plan:
Change volume via slider -> Volume on target changes
Change volume on target -> Slider changes

Mute via button -> Mute on target changes
Mute on target -> Button changes icon

Add/remove sink on host -> Sink is add/removed in list

Reviewers: #kde_connect, apol

Reviewed By: #kde_connect, apol

Subscribers: apol, kdeconnect

Tags: #kde_connect

Differential Revision: https://phabricator.kde.org/D16667
2018-11-08 00:43:12 +01:00
Adam Pigg
ee52c8cd03 use libkeepalive to wakeup daemon
Summary:
Main change is to use libkeepalive to wake up the system to ensure connections stay alive

Other minor changes are:
-Log daemon messages for debugging purposes
-Add way to forece refresh of device list
-Minor spec improvements

The keepalive changes certainly seem to help, not sure if it completely solves the problems
The logging changes are temporary, and I could use them locally, but they only affect sailfish users
Im not sure if the refresh method is correct, but seems to force the daemon to check for devices

Reviewers: #kde_connect, nicolasfella, albertvaka

Reviewed By: #kde_connect, albertvaka

Subscribers: kdeconnect

Tags: #kde_connect

Differential Revision: https://phabricator.kde.org/D15414
2018-10-23 08:30:48 +01:00
Simon Redman
bcc9fb06db Split SMS and Telephony plugin on desktop
Summary:
Telephony and SMS handling are quite distinct so they should be in separate plugins for better maintainability, given that @sredman has big plans with SMS.
This diff should be fully backwards compatible, but whether we really want to do that is up to discussion

Test Plan: Only supeficially tested. Receive an SMS (old way), Notification is shown

Reviewers: #kde_connect, sredman

Reviewed By: sredman

Subscribers: albertvaka, apol, sredman, kdeconnect, #kde_connect

Tags: #kde_connect

Differential Revision: https://phabricator.kde.org/D13594
2018-09-10 11:31:05 +02:00
Adam Pigg
064b07c0ce Fixup the sfos mpris control
Summary:
-Fix type in pause icon
-Remove unnescessary label
-Size volumne slider correctly
-Centre buttons
-Make volume control work

Reviewers: #kde_connect, nicolasfella, kossebau, albertvaka

Reviewed By: #kde_connect, albertvaka

Subscribers: albertvaka, apol, kdeconnect

Tags: #kde_connect

Differential Revision: https://phabricator.kde.org/D14568
2018-08-26 21:10:05 +01:00
Albert Vaca
e063ea422d Fix add_subdirectory for Windows, that got changed 2018-08-05 21:20:32 +02:00
Adam Pigg
9a8f1b48a0 Build kdeconnect on sailfish and port some simple plugins
Summary:
Below is a lost of the commits, but, in summary
Port the build system for Sailfish, which means selectively building only the bits we need/can, and only against the KF5 libs that are available.
Allow to build on Qt 5.6
Switch from knotification to nemo notification (not complete!)
Add a very simple example sailfish app.

Note, there is still much missing functionality.  Notifications dont work, pairing sort of works but not really, but when it is paired you can send a ping to the desktop client

Dont build kio for Sailfish

Port core build system

Port daemon buld system

Require CoreAddons on Sailfish

Port plugins build for sailfish and include the ping plugin for now

Final build changes for sailfish.

Disable tests and other not needed parts

Add includes for QCA

Fix build errors on sailfish

Get core/ to build on sailfish

Get interfaces/ to build on sailfish

Build daemon on sailfish

On sailfish, dont install the kcm file

Start port plugin to sailfish

Fixup installed files

Add sfos app

Hack declarative plugin to give a public interface

Build sfos app

Compile declarativeplugin into the sfos app for now

Redefine qAsConst for qt 5.6

Packaging fixes

Use official icon

Package .desktop

Reviewers: #kde_connect, apol, nicolasfella, albertvaka

Reviewed By: #kde_connect, apol, nicolasfella, albertvaka

Subscribers: kdeconnect, andyholmes, albertvaka, kossebau, mtijink, vonreth, apol, #kde_connect, nicolasfella

Tags: #kde_connect

Differential Revision: https://phabricator.kde.org/D10703
2018-08-02 20:10:59 +01:00
Nicolas Fella
02e52b787b Add systemvolume plugin
Summary: This plugin allows controlling the system value from a remote device.

Test Plan: Apply Android patch, open up MPRIS Activity and play with the slider

Reviewers: #kde_connect, mtijink, albertvaka

Reviewed By: #kde_connect, albertvaka

Subscribers: kdeconnect, apol, zhigalin, albertvaka, davidedmundson, mtijink, #kde_connect

Tags: #kde_connect

Maniphest Tasks: T4659

Differential Revision: https://phabricator.kde.org/D7992
2018-07-27 09:22:44 +02:00
Friedrich W. H. Kossebau
0e023346a3 New plugin: Find this device (v2, now hopefully fine for all compilers)
Summary:
Allows other devices to make this device discoverable via a
kdeconnect.findmyphone.request command, if running.

Currently supports playing a sound.

Counterpart to FindMyPhone plugin

Test Plan:
Connect with other device running KDE Connect (with Plasmoid).
Select a working play sound in the Find My Device plugin settings.
On other device trigger Find My Phone button for this device in KDE Connect
Plasmoid and notice this device playing the configured sound.

Reviewers: #kde_connect, nicolasfella

Reviewed By: #kde_connect, nicolasfella

Subscribers: kdeconnect, sredman, mtijink, apol, nicolasfella

Tags: #kde_connect

Differential Revision: https://phabricator.kde.org/D11773
2018-05-15 22:15:21 +02:00
Nicolas Fella
dab6cdaf65 Revert "New plugin: Find this device"
This reverts commit fcffc10591.
2018-05-15 21:11:30 +02:00
Friedrich W. H. Kossebau
fcffc10591 New plugin: Find this device
Summary:
Allows other devices to make this device discoverable via a
kdeconnect.findmyphone.request command, if running.

Currently supports playing a sound.

Counterpart to FindMyPhone plugin

Test Plan:
Connect with other device running KDE Connect (with Plasmoid).
Select a working play sound in the Find My Device plugin settings.
On other device trigger Find My Phone button for this device in KDE Connect
Plasmoid and notice this device playing the configured sound.

Reviewers: #kde_connect, nicolasfella

Reviewed By: #kde_connect, nicolasfella

Subscribers: kdeconnect, sredman, mtijink, apol, nicolasfella

Tags: #kde_connect

Differential Revision: https://phabricator.kde.org/D11773
2018-05-15 15:44:20 +02:00
Simon Redman
9c1d6e43ad Add contacts-reading plugin (KDE side)
Summary:
Add a plugin to KDE Connect which supports exporting the Android contacts databases to vcards on the desktop

When the devices are connected, the plugin sends a request for all timestamps and IDs

When a packet with timestamps and IDs is received, it verifies it has vcards for each ID and that the timestamps match and deletes any vcards for IDs which were not reported. It then sends a request for all vcards which were missing or need updating

When a packet with vcards is received they are unconditionally written to disk, possibly overwriting existing vcards

Provides one dbus method: contacts/synchronizeRemoteWithLocal which triggers the request for all timestamps and IDs

BUG: 367999

Test Plan:
Connect the device to the desktop and verify that vcards are created in QStandardPaths::GenericDataLocation / kpeoplevcard". On my system this is ~/.local/share/kpeoplevcard

Create a dummy contact on the device and verify it is synchronized (Currently not automatic, have to disconnect and reconnect or use dbus)

Modify the dummy contact and verify the modifications are synchronized (Currently not automatic, have to disconnect and reconnect or use dbus)

Delete the dummy contact and verify the deletion is synchronized (Currently not automatic, have to disconnect and reconnect or use dbus)

Reviewers: #kde_connect, apol

Reviewed By: #kde_connect, apol

Subscribers: mtijink, #kde_connect, apol

Tags: #kde_connect

Maniphest Tasks: T8283

Differential Revision: https://phabricator.kde.org/D9691
2018-04-23 22:30:27 +02:00
Albert Vaca
f1f19eb01b Split platform-specific code from mousepad plugin
Summary:
Windows no longer needs a separate plugin, and X11 and Wayland are now in
separate files instead of having lots of ifdefs.

Test Plan: Tested on X11, Wayland and Windows.

Reviewers: #kde_connect, apol, nicolasfella

Reviewed By: #kde_connect, apol, nicolasfella

Subscribers: apol, nicolasfella

Tags: #kde_connect

Differential Revision: https://phabricator.kde.org/D11692
2018-04-04 22:38:16 +02:00