Commit graph

835 commits

Author SHA1 Message Date
Simon Redman
9009439956 Handle case where more messages were requested but there were no more available from the remote
Previously, we would have a thread which was never woken. Now we wake the thread and it does its thing, even though we were not able to do anything about its request

Resolves https://bugs.kde.org/show_bug.cgi?id=400488
2018-12-14 09:59:42 -07:00
Simon Redman
2c35c1af51 [SMS App] Allow scrolling up to load and display older messages
Summary:
Scroll up to show older messages

Newly received messages will not force the view to the bottom unless the new message is being added "very close" to the visible area

Test Plan:
Message History:
 - Open conversation
 - Scroll/Drag up to load older messages

New Message:
 - Open conversation
 - Scroll to bottom
 - Verify that a newly-received or newly-sent message is added to the GUI
 - Scroll up
 - Verify that sending/receiving a message does not disturb the view
 - Scroll back to verify that the new message was indeed added to the list

Reviewers: #kde_connect, apol

Reviewed By: #kde_connect, apol

Subscribers: apol, nicolasfella, kdeconnect

Tags: #kde_connect

Maniphest Tasks: T9556

Differential Revision: https://phabricator.kde.org/D15979
2018-12-12 22:50:50 -07:00
Simon Redman
7025fd6795 Un-break build. Apparently I didn't test as I thought I had. 2018-12-12 22:49:33 -07:00
Simon Redman
019e8d6a1c [SMS App] Make requestMoreMessages asynchronous, blocking, and caching
Summary:
The most serious change from this patch is to move the asynchronous replying to a request from the app for more messages to a newly-spawned, self-destructing thread. Within that thread, we block until the remote device replies with the requested messages.

All gotten messages are cached in the ConversationDbusInterface, so all future requests are fast and don't hit the remote device.

Test Plan: After applying this diff, the messaging app should show 10 messages every time it is opened

Reviewers: #kde_connect, nicolasfella, albertvaka

Reviewed By: #kde_connect, albertvaka

Subscribers: albertvaka, apol, nicolasfella, kdeconnect

Tags: #kde_connect

Differential Revision: https://phabricator.kde.org/D16475
2018-12-12 22:42:56 -07:00
Simon Redman
5cdfb9b087 [Desktop] Change ThreadID to long
Summary: Change ThreadID to long

Test Plan:
Messages should send and receive as before. Additionally, if your device has assigned extremely large ThreadIDs, the SMS plugin should no longer crash.

This patch corresponds to the Android-side revision D17517

Reviewers: #kde_connect, nicolasfella

Reviewed By: #kde_connect, nicolasfella

Subscribers: nicolasfella, kdeconnect

Tags: #kde_connect

Differential Revision: https://phabricator.kde.org/D17516
2018-12-11 18:03:30 -07:00
Yuri Chornoivan
5c468f0ecd Fix minor typos 2018-12-11 19:23:06 +02:00
l10n daemon script
686af65e10 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-12-04 05:37:53 +01:00
l10n daemon script
590afee817 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-12-03 05:29:48 +01:00
Albert Vaca
d017d5293a Make plugin less verbose 2018-12-02 19:26:36 +01:00
l10n daemon script
baef9265d9 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-12-02 05:23:51 +01:00
Erik Duisters
b6c15289f5 Combine multiple upload jobs into a single KCompositeJob so only 1 notification will be shown
Summary:
Combine multiple upload jobs for files into a single KCompositeJob so only 1 notification will be shown
Includes changes introduced in D16279

Test Plan:
1. Share of multiple files is performed using 1 composite job

   Setup:
	- Select multiple (big) files in dolphin and share with an Android device
   Result:
	- The files will be transferred using 1 CompositeUploadJob and showing only 1 notification

2. Share of file while another share is already running adds job to existing composite job

   Setup:
	- Select multiple (big) files in dolphin and share with an Android device
	- Share an additional file with the same Android device
   Result:
	- The files are all transferred using 1 CompositeUploadJob and showing only 1 notification
	- The notification is updated after adding the last file

3. Other packets are transmitted as usual

   Setup:
        - Setup sharing desktop notification with device
	- Share a big file with an Android device
	- Generate a desktop notification (eg. sending or receiving an email)

   Result:
	- Notification packet is send immediately

Reviewers: #kde_connect, nicolasfella, albertvaka

Reviewed By: #kde_connect, albertvaka

Subscribers: albertvaka, apol, nicolasfella, broulik, kdeconnect

Tags: #kde_connect

Differential Revision: https://phabricator.kde.org/D17081
2018-11-30 08:26:00 +01:00
Erik Duisters
538872ddc8 Handle receiving empty file from Android
Summary: When a file share is received the share plugin  does not detect that an empty file is being shared

Test Plan:
Send an empty file from android
The empty file should be created

Reviewers: #kde_connect, albertvaka

Reviewed By: #kde_connect, albertvaka

Subscribers: albertvaka, kdeconnect

Tags: #kde_connect

Differential Revision: https://phabricator.kde.org/D17175
2018-11-28 15:50:06 +01:00
Nicolas Fella
ded463eb49 [clazy] Properly emit signals
Test Plan: Receive a file

Reviewers: #kde_connect, albertvaka

Reviewed By: #kde_connect, albertvaka

Subscribers: kdeconnect

Tags: #kde_connect

Differential Revision: https://phabricator.kde.org/D17166
2018-11-26 13:25:16 +01:00
Nicolas Fella
d74edc33b9 Don't make signals const
Reviewers: #kde_connect, albertvaka

Reviewed By: #kde_connect, albertvaka

Subscribers: kdeconnect

Tags: #kde_connect

Differential Revision: https://phabricator.kde.org/D17165
2018-11-26 13:23:37 +01:00
Nicolas Fella
bd17dc2041 Fix container detach warnings from clazy
Reviewers: #kde_connect, apol

Reviewed By: #kde_connect, apol

Subscribers: apol, kdeconnect

Tags: #kde_connect

Differential Revision: https://phabricator.kde.org/D17164
2018-11-26 13:21:39 +01:00
l10n daemon script
5843a02e1b SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-11-23 05:34:14 +01:00
l10n daemon script
8bd15a95c2 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-11-22 05:55:58 +01:00
l10n daemon script
38fed324bf SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-11-21 05:40:27 +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
l10n daemon script
83101cad2c SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-11-18 05:55:43 +01:00
l10n daemon script
50a94b26e8 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-11-16 05:48:33 +01:00
Simon Redman
c1e36895b5 [Desktop] Make message syncronization interface capable of handling future changes
Summary:
Add "event" field to ConversationMessage

Update packet type with proper field names and commenting

Future "proof" SmsPlugin against new event types

Test Plan:
 - Install the corresponding Android-side patch D16600
 - Verify that it is possible to synchronize messages the same as it was before

Reviewers: #kde_connect, apol

Reviewed By: #kde_connect, apol

Subscribers: apol, kdeconnect

Tags: #kde_connect

Differential Revision: https://phabricator.kde.org/D16599
2018-11-15 17:04:24 -07:00
Nicolas Fella
4bd509dfce Always play when call ended
Summary:
When the music is resumed during the call it was paused again when the call ends

Bug: 400787

Test Plan: Get called, resume music during call, check state after call

Reviewers: #kde_connect, apol

Reviewed By: #kde_connect, apol

Subscribers: kdeconnect

Tags: #kde_connect

Differential Revision: https://phabricator.kde.org/D16809
2018-11-15 00:46:10 +01:00
l10n daemon script
e82fce2329 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-11-12 05:48:12 +01:00
l10n daemon script
49d48790db SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-11-09 05:56:39 +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
l10n daemon script
7bfebd581f SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-11-08 05:57:38 +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
Albert Vaca
a70c9aad64 Fix Windows build which I just broke 2018-11-07 17:13:18 +01:00
Bertrand Lacost
a685a4910e Add detection of the Meta/Super key press
Differential Revision: https://phabricator.kde.org/D10379
2018-11-07 16:05:21 +01:00
Albert Vaca
ede8f17e15 Incorrect Q_EMIT syntax 2018-11-06 23:29:39 +01:00
Albert Vaca
73129abbf5 Unused var 2018-11-06 23:28:03 +01:00
Nicolas Fella
ccd476c150 Add open on remote device (Desktop)
Summary:
Add openFile to Share Plugin and extend handler to open local file urls

Future extension: Modify the desktop file to allow Open with > Open on connected device

Depends on D16605

Test Plan: Apply Android patch. Use kdeconnect-handler file:///somefile. Check phone for reaction

Reviewers: #kde_connect, albertvaka

Reviewed By: #kde_connect, albertvaka

Subscribers: sredman, kdeconnect

Tags: #kde_connect

Maniphest Tasks: T8637

Differential Revision: https://phabricator.kde.org/D15294
2018-11-04 19:55:30 +01:00
Billy Laws
0b72150ed8 Add support for sharing text via qml
Summary: This allows you to send a text string from qml, this can be used in the plasmoid and qml app.

Reviewers: nicolasfella

Reviewed By: nicolasfella

Subscribers: kdeconnect

Tags: #kde_connect

Differential Revision: https://phabricator.kde.org/D16640
2018-11-03 22:23:03 +01:00
Simon Redman
787e76ee91 Change SmsPlugin qDebug to qCDebug 2018-11-01 09:36:43 -06:00
l10n daemon script
0faa5c5f18 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-11-01 05:51:47 +01:00
Jun Bo Bi
467ac64be7 [remoteinput] Added keyboard support for windows
Summary:
Added keyboard input support for Windows
Completes T6269

Test Plan:
  - Open Remote input
  - Type something in

Reviewers: #kde_connect, albertvaka

Reviewed By: #kde_connect, albertvaka

Subscribers: albertvaka, kdeconnect, #kde_connect

Tags: #kde_connect, #windows

Differential Revision: https://phabricator.kde.org/D16501
2018-10-30 11:31:58 +01:00
l10n daemon script
19bea39619 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-10-28 04:53:25 +01:00
Simon Redman
b01652f54d Fix include guards
Summary:
Some plugins were copy/pasted from a template and forgot to change their include guards. Since plugin header files are never cross-referenced, this was not a serious issue, but it looks nicer to be correct

NotificationListener.h did not have an include guard. As before, this is not a problem currently, but it's best to have it fixed

Test Plan: Project should build, compile, and run as normal

Reviewers: #kde_connect, nicolasfella

Reviewed By: #kde_connect, nicolasfella

Subscribers: kdeconnect

Tags: #kde_connect

Differential Revision: https://phabricator.kde.org/D16437
2018-10-26 15:29:39 -06:00
l10n daemon script
6879cf14cd SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-10-24 05:55:51 +02: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
l10n daemon script
a98533b8f4 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-10-23 06:01:17 +02:00
l10n daemon script
283211b4eb SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-10-10 06:19:16 +02:00
Simon Redman
a7db3ab5e1 [Desktop] Update conversation list when a new message arrives
Summary:
When a new message is delivered, the conversation list should update by changing the preview text and re-sorting the conversations

Bonus bug discovered and fixed:  previously, when the conversations list was being populated, it made a request for the first message in every conversation. This would be fine if the conversationdbusinterface pulled from local cache. However, this actually triggers a request to the phone for *every* conversation.

This should be handled differently in conversationdbusinterface's requestConversation as well, but that's a project for a later day (TODO comments added)

Test Plan:
 - Launch SMS app
 - Verify conversations list appears
 - Verify lack of massive stream of debug output indicating lots of messages for the wrong conversation are being received
 - Verify that opening a particular conversation shows the messages after a short delay while the backend fetches the content from the phone
 - Verify that receiving a new message into an existing conversation updates the conversation list

Reviewers: #kde_connect, nicolasfella

Reviewed By: #kde_connect, nicolasfella

Subscribers: nicolasfella, apol, kdeconnect

Tags: #kde_connect

Differential Revision: https://phabricator.kde.org/D15608
2018-10-07 21:46:39 -06:00
Yuri Chornoivan
5fe74ce041 Fix minor EBN issues and typos 2018-10-07 21:23:20 +03:00
Simon Redman
563dde9891 Correct braces and add contributors
Summary: Braces to start a method are on a newline, braces to begin an in-method block are on the same line

Test Plan: Pure source code cosmetic changes. Hopefully no functionality has changed!

Reviewers: #kde_connect, nicolasfella

Reviewed By: #kde_connect, nicolasfella

Subscribers: apol, nicolasfella, kdeconnect

Tags: #kde_connect

Differential Revision: https://phabricator.kde.org/D15978
2018-10-06 21:59:15 -06:00
l10n daemon script
d314758670 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-10-05 05:52:20 +02:00
l10n daemon script
f145ef8833 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-09-30 05:50:17 +02:00
l10n daemon script
c1c206ebf5 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-09-29 05:58:22 +02:00
l10n daemon script
14994132f8 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-09-22 06:01:11 +02:00
l10n daemon script
b2a53c6d2e SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-09-19 05:53:16 +02:00
l10n daemon script
d7284963de SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-09-18 05:45:43 +02:00
Simon Redman
23d931cb10 [Desktop] Allow SMS app to handle newly recieved messages
Summary:
Update sms app model to use new conversationUpdated signal

Filter incoming messages which belong to a different conversation than the one currently being viewed

See Android-side diff D15360 which adds support for sending live updates when a new message is sent or received

Test Plan:
This patch relies on D15360 for Android-side support
  - Positive case:
    - Open a conversation in the SMS app
    - Receive a new message into that conversation (text yourself?)
    - Verify that the new message appears at the bottom of the appropriate conversation
  - Negative case:
    - Open a conversation in the SMS app
    - Receive a new message into a different conversation (text yourself?)
    - Verify that the new message does *not* appear in the open conversation

Reviewers: #kde_connect, nicolasfella

Reviewed By: #kde_connect, nicolasfella

Subscribers: nicolasfella, kdeconnect

Tags: #kde_connect

Differential Revision: https://phabricator.kde.org/D15409
2018-09-16 16:20:45 -06:00
Simon Redman
64062b3cc9 [Desktop] SMS plugin no longer creates desktop notifications -- Old functionality still supported by notifications plugin
Summary:
Drop support for creating notifications from the SMS plugin. The old usecase is better handled by the notifications plugin reply box anyway

Rename packets defined in SMS plugin from PACKET_TYPE_TELEPHONY_* to PACKET_TYPE_SMS_*

Update TELEPHONY plugin packet description to point to SMS plugin

Define TELEPHONY_REQUEST_MUTE packet to replace old TELEPHONY_REQUEST with mute event field

Please see Android-side patch here: D15544

Test Plan:
I see four test cases, based on the version of the app being used, where "old" means any version built with sources not containing this revision and "new" means any version built with sources using this revision:
 - New Android vs. New Desktop
   - Supported and works for me
 - New Android vs. Old Desktop
   - Supported and works for me
 - Old Android vs. New Desktop
   - Not supported - Download a new app from the Play store or F-Droid
 - Old Android vs. Old Desktop
   - If this is broken, it is not my fault :)

In the supported use cases:
 - Test SMS reply
   - Receive SMS (or MMS!) message
   - Verify that the //notification// plugin forwards a replyable notification and that replying works
 - Test incoming call ringer mute
   - Enable ringer volume (not vibrate)
   - Receive phone call
   - Verify a desktop notification with a Mute button appears
   - Verify that clicking the mute button causes the phone to stop making the ringer noise (vibration not affected)

Reviewers: #kde_connect, albertvaka, nicolasfella

Reviewed By: #kde_connect, albertvaka, nicolasfella

Subscribers: nicolasfella, kdeconnect

Tags: #kde_connect

Differential Revision: https://phabricator.kde.org/D15543
2018-09-16 16:06:53 -06:00
l10n daemon script
707a4bd252 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-09-15 05:55:10 +02:00
l10n daemon script
969f3105ef SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-09-14 05:48:01 +02:00
Mark Dominus
e409cdfdaa Spelling corrections in kde-connect sftp plugin
Reviewers: kdeconnect, nicolasfella

Reviewed By: nicolasfella

Subscribers: nicolasfella, kdeconnect

Tags: #kde_connect

Differential Revision: https://phabricator.kde.org/D15478
2018-09-13 16:56:00 +02:00
l10n daemon script
a0c6047a41 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-09-13 05:52:26 +02:00
Simon Redman
4bd207e857 Use better icon for SMS plugin 2018-09-12 16:39:26 -06:00
l10n daemon script
4d62832997 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-09-12 06:07:09 +02:00
l10n daemon script
6818cbe881 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-09-11 06:16:50 +02:00
Nicolas Fella
3b91acf082 Use better icon for contactsplugin 2018-09-10 17:30:49 +02: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
Simon Redman
e5b6c147d8 Sort Cached Messages
Summary: Previously, incoming messages were appened to a QList. This list was accidentally sorted because that's how Android returned them, but new messages were appended to the wrong end of the list. This patch specifically and intentionally sorts messages so new ones become visible

Test Plan:
- Open SMS GUI, verify that the most-recent messages are shown
- Either send or recieve an SMS
- Wait about 5s (I do not know why this is necessary. Probably some Android weirdness)
- De-select the current conversation, then re-select it
  - TODO: Make the app automatically respond to new messages
- The newly sent or recieved message should be shown in the most-recent position

Reviewers: apol

Reviewed By: apol

Subscribers: apol, nicolasfella, kdeconnect

Tags: #kde_connect

Differential Revision: https://phabricator.kde.org/D15108
2018-09-08 12:52:49 -06:00
Albert Vaca
9bfa255a60 It's DSS we want to enable
My previous commit changed it to RSA by mistake
2018-09-04 14:40:42 +02:00
l10n daemon script
5fb5af164c SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-09-03 05:46:27 +02:00
Albert Vaca
91d54b9db1 Also allow modern algorithms, for compat with future apps 2018-08-31 10:47:22 +02:00
l10n daemon script
d5573b51ac SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-08-27 05:46:19 +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
l10n daemon script
1ccf1a8809 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-08-22 05:44:19 +02:00
l10n daemon script
932b7e2834 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-08-18 05:41:47 +02:00
Albert Vaca
be9c58c3f6 Reduce contactsplugin verbosity 2018-08-16 14:17:15 +02:00
Albert Vaca
e063ea422d Fix add_subdirectory for Windows, that got changed 2018-08-05 21:20:32 +02:00
l10n daemon script
027c147671 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-08-05 05:29:07 +02:00
l10n daemon script
36aecee429 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-08-04 05:41:07 +02:00
Nicolas Fella
e4385042eb Show icons in plugin list
Summary:
Show the plugin's icons in the list

Depends on D14567

{F6172885}

Reviewers: #kde_connect, apol

Reviewed By: #kde_connect, apol

Subscribers: kdeconnect

Tags: #kde_connect

Differential Revision: https://phabricator.kde.org/D14571
2018-08-03 02:25:39 +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
Albert Vaca
76ea0dd12d Remove characters from UUID that aren't legal in URLs 2018-08-01 11:10:14 +02:00
l10n daemon script
316387ad00 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-08-01 05:50:17 +02:00
l10n daemon script
8c7f2c983f SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-07-31 05:43:03 +02:00
l10n daemon script
2a242d426e SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-07-30 05:23:44 +02:00
l10n daemon script
3223397566 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-07-29 05:30:47 +02:00
Nicolas Fella
69698f3407 Fix typos 2018-07-27 15:00:23 +02: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
l10n daemon script
040f30e33e SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-07-25 05:32:56 +02:00
l10n daemon script
d709b5b198 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-07-19 05:21:27 +02:00
Nicolas Fella
48108cd316 Fix crashing devicetest
Summary:
When running the test m_impl will be nullptr leading to a crash. This is because when running as a test no platform is loaded.
The fancy way to solve this would be to have a TestImpl, but I think this is enough.

Test Plan: Test passes now

Reviewers: #kde_connect, apol

Reviewed By: #kde_connect, apol

Subscribers: kdeconnect, #kde_connect

Tags: #kde_connect

Differential Revision: https://phabricator.kde.org/D13629
2018-07-12 16:14:44 +02:00
l10n daemon script
9d0eda2582 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-07-10 05:34:22 +02:00
Nicolas Fella
6c7e5adca1 Improve notificationsplugin README 2018-06-30 23:05:38 +02:00
l10n daemon script
dc524e081e SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-06-30 05:43:37 +02:00
l10n daemon script
0057c44a30 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-06-21 05:33:36 +02:00
Nicolas Fella
17e1e1eced Enable running commands from app
Summary:
The RemotecommandsPlugin lacks a graphical frontend.

Inlcudes a Dbus Interface for fetching the commands and a Model exposing them to QML. For this I oriented on the NotificatonsPlugin.

Test Plan:
Open command list in app, check available commands, trigger some. Do same for CLI.
Activate edit action, check KCM opening on remote device, add command, check for new command in list

Reviewers: #kde_connect, apol

Reviewed By: #kde_connect, apol

Subscribers: apol, kdeconnect, #kde_connect

Tags: #kde_connect

Differential Revision: https://phabricator.kde.org/D13503
2018-06-20 08:23:15 +02:00
l10n daemon script
e40312bf5e SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-06-18 05:27:46 +02:00
l10n daemon script
82d0f2dc0b SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-06-17 05:29:14 +02:00
l10n daemon script
e4ff1cdaae SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-06-13 05:35:14 +02:00
Nicolas Fella
bf70f311e4 Fix DBus signals in Mprisremote
Summary: This seems to fix the issue I mentioned on Telegram/Mail

Test Plan:
Before: Use Mprisremote plugin with App. View did not update when e.g. next is pressed.
Now: View correctly represents the DBus data

Reviewers: #kde_connect

Subscribers: #kde_connect

Tags: #kde_connect

Differential Revision: https://phabricator.kde.org/D12528
2018-06-10 01:07:40 +02:00
Aleix Pol
31e93ef7bf (WIP) Upgrade Telephony plugin to read SMS history (KDE side)
Summary:
For real usecases of SMS support, we will almost always need access to the message history in some way

Specifically resolve T8338

Incidentally resolve T6651 since Telephony shall no longer create a notification

Test Plan:
Setup:
- Build corresponding Android-side diff (D11698)
- Build this diff

Step 1: Does anything at all work?
- Put a breakpoint in the handleBatchMessages method of the telephony plugin, ideally after constructing a Message object
- Use DBus to poke /modules/kdeconnect/devices/<deviceID>/telephony.requestAllConversations()
- Verify that the constructed Message is one you sent or received and that it is the most recent in the corresponding conversation

Step 2: DBus
- Open the Interface org.kde.kdeconnect.device.conversations of /modules/kdeconnect/devices/<deviceId>
- Poke activeConversations and verify an empty array is returned
- Poke requestAllConversationThreads
- Poke activeConversations and verify that a list of numbers has been returned. These are conversationIds
- Use a conversationId to call getFirstFromConversation
  - Verify that the returned Message object is one which you recognize
  - Note that if the message is an MMS it will be blank and meaningless. Try a different conversationId. MMS support "coming soon!"

Step 3: SMS App
- Use ccmake (or similar) to set SMSAPP_ENABLE to ON
- Build the project
- Run ./bin/kdeconnect-sms
- Verify that the app shows a list of everyone you have an SMS conversation with (MMS messages are stripped out)
  - If you have the Contacts plugin working, verify that most contacts have their name and photo instead of their phone number

Reviewers: #kde_connect, nicolasfella, apol

Reviewed By: #kde_connect, nicolasfella, apol

Subscribers: andyholmes, apol, nicolasfella, #kde_connect

Tags: #kde_connect

Maniphest Tasks: T8338, T6651

Differential Revision: https://phabricator.kde.org/D11854
2018-06-09 13:35:26 -06:00
l10n daemon script
aa351e1cec SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-06-08 05:49:22 +02:00
l10n daemon script
01793fab5a SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-06-01 05:33:57 +02:00
l10n daemon script
2724ca1f64 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-05-30 05:30:31 +02:00
l10n daemon script
f09927a1f0 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-05-29 05:34:48 +02:00
l10n daemon script
dc67eed401 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-05-28 05:28:39 +02:00
Ivan Čukić
f7a5c3220b Added a few useful 'Sample commands' for the Run Command plugin
Summary:
Added the following example commands for the Run Command plugin:

- Lock Screen
- Unlock Screen
- Close All Vaults
- Forcefully Close All Vaults

Reviewers: #plasma, ngraham, albertvaka, nicolasfella, #kde_connect

Reviewed By: nicolasfella, #kde_connect

Subscribers: ngraham, kdeconnect

Tags: #kde_connect

Differential Revision: https://phabricator.kde.org/D13136
2018-05-26 23:06:34 +02:00
l10n daemon script
72fe2b65e0 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-05-22 05:31:24 +02:00
l10n daemon script
4c16492ec0 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-05-21 05:22:10 +02:00
l10n daemon script
642f144d26 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-05-20 05:25:18 +02:00
l10n daemon script
e21442ca22 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-05-19 06:05:53 +02:00
l10n daemon script
24908dba48 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-05-17 05:32:51 +02:00
l10n daemon script
868e35d67a SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-05-16 05:26:25 +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
Nicolas Fella
3c4aa590f1 Enable desktop2desktop keyboard input
Summary:
Fixes T6701

The reason it did not work before is that the "Keyboard" did not report itself as available.

Test Plan:
Type in plasmoid on one Desktop, see text on another.
Note that no ack packets are sent, so the text does not appear in the original input text field. I want to await the discussion in D12670 before doing that

Reviewers: apol

Reviewed By: apol

Subscribers: mtijink, kdeconnect

Tags: #kde_connect

Maniphest Tasks: T6701

Differential Revision: https://phabricator.kde.org/D12812
2018-05-12 17:52:07 +02:00
Nicolas Fella
68d0c5d143 Do not require Frameworks 5.45
Summary: Ifdef for old KF5 as discussed in D11684.

Test Plan: Can still use feature when above 5.45

Reviewers: apol

Reviewed By: apol

Subscribers: kdeconnect

Tags: #kde_connect

Differential Revision: https://phabricator.kde.org/D12810
2018-05-10 19:48:40 +02:00
l10n daemon script
1ad59b231c SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-05-04 05:28:59 +02:00
l10n daemon script
1046368b89 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-05-02 05:27:43 +02:00
l10n daemon script
c8e55db419 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-04-30 05:27:39 +02:00
l10n daemon script
659ed39edf SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-04-29 05:21:10 +02:00
l10n daemon script
9f0024a475 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-04-28 05:27:44 +02:00
Nicolas Fella
88d0e72667 Request status when connecting
Summary:
Send requestNowPlaying packet when a player is discovered
Depends on D12546

Test Plan: Restart daemon, open app. Status is now displayed correctly, previously it was not until the first update

Reviewers: #kde_connect, apol

Reviewed By: #kde_connect, apol

Subscribers: #kde_connect

Tags: #kde_connect

Differential Revision: https://phabricator.kde.org/D12550
2018-04-28 00:23:52 +02:00
Nicolas Fella
1b622de1f1 Support multiple players in MprisRemote
Summary: Current code only supports one player

Test Plan: Run two media sessions. Dbus inspection works fine, UI has some issues with values not updated, but out of scope for this diff

Reviewers: #kde_connect, apol

Reviewed By: #kde_connect, apol

Subscribers: apol, #kde_connect

Tags: #kde_connect

Differential Revision: https://phabricator.kde.org/D12546
2018-04-28 00:22:58 +02:00
l10n daemon script
fc1335b403 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-04-27 05:27:16 +02:00
l10n daemon script
eaa91a3c39 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-04-26 05:16:51 +02:00
l10n daemon script
7dfe45bf89 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-04-25 05:23:19 +02:00
l10n daemon script
fcfd1d7c69 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-04-24 05:25:16 +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
Aleix Pol
dd031d3deb Show the KCM with the run commands open when a setup packet is received
Summary: Depends on D11683.

Test Plan: Tested the `kcmshell kdeconnect --args mydeviceid:kdeconnect_runcommand` works

Reviewers: #kde_connect, nicolasfella

Reviewed By: #kde_connect, nicolasfella

Subscribers: nicolasfella

Tags: #kde_connect

Differential Revision: https://phabricator.kde.org/D11684
2018-04-19 03:03:42 +02:00
Heiko Becker
4a4e8216aa Use OPTIONAL_COMPONENTS to search for KF5Wayland and DocTools
Summary:
Otherwise cmakes complains when invoked with
-DCMAKE_DISABLE_FIND_PACKAGE_KF5Wayland=TRUE: "CMake Error at
/usr/share/cmake/Modules/FeatureSummary.cmake:459 (message):
feature_summary() Error: REQUIRED package(s) are missing, aborting
CMake run."

Reviewers: #kde_connect

Tags: #kde_connect

Differential Revision: https://phabricator.kde.org/D12141
2018-04-12 12:08:03 +02:00
Albert Vaca
171eb0b571 Added -o reconnect to sshfs
It has been reported to fix some errors
2018-04-09 18:30:14 +02:00
Albert Vaca
6905234325 Fix Windows build 2018-04-09 18:23:54 +02:00
Albert Vaca
bda995b832 Make Qt X11Extras not a hard dependency
Should fix the CI build
2018-04-08 19:21:02 +02:00
l10n daemon script
c42829a7d6 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-04-07 05:22:03 +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
Aleix Pol
c863feef58 Optionally include sms app
Creates a tiny messaging app that uses KPeople to query the contacts and
KDE connect telephony plugins to send plugins.
To be ready, still needs some work on the contacts sync side and some
messages history would be nice.
2018-03-25 20:48:38 +02:00
Matthijs Tijink
33c2a100b1 Support file url album art - Desktop
Summary: If the android code sees a file url, and album art is needed, it will start a request to transfer the album art. This code does some sanity checks to prevent abuse and then transfers the album art.

Test Plan: Art is transferred succesfully.

Reviewers: #kde_connect, nicolasfella, albertvaka

Reviewed By: #kde_connect, albertvaka

Subscribers: nicolasfella, albertvaka

Differential Revision: https://phabricator.kde.org/D11017
2018-03-25 13:45:01 +02:00
Albert Vaca
22d14de018 Fix addNotification being called twice
It broke the notifications, which is probably a different bug

Reviewed by Albert Astals
2018-03-24 21:28:43 +01:00
Albert Vaca
da8f3d19d0 Do not start a second transfer if one is in progress
Reviewed by Albert Astals
2018-03-24 21:28:43 +01:00
Aleix Pol
47f6effe08 Introduce a Run command preset menu in the run command kcm
Summary:
It's a way for users to understand what it's supposed to do and offer
some useful features.

Reviewers: #kde_connect, mtijink

Reviewed By: #kde_connect, mtijink

Subscribers: mtijink

Differential Revision: https://phabricator.kde.org/D11656
2018-03-24 20:19:12 +01:00
Friedrich W. H. Kossebau
cfe83bb69d Revert accidental hard dependency on KF5Wayland 2018-03-22 17:34:15 +01:00
Adam Pigg
ebc316f703 Add a method for creating simple notifications
Summary:
Add a helper function to the daemon interface, which must be subclassed
by the implementations, which creates a simple notification.

For more complex needs, involving interacting with the notification, it
will still be nescessary to use KNotification directly, but this allows
for other future implementations to create a simple notification without
ifdef'ing the code.

Reviewers: kdeconnect, apol

Reviewed By: apol

Subscribers: kdeconnect

Differential Revision: https://phabricator.kde.org/D11104
2018-03-18 12:52:22 +01:00
Friedrich W. H. Kossebau
8d6236bb7e MPRIS control: fix instance indicator with multiple app instances
Summary:
Not sure what operator+ overload has been used exactly for the int,
in any case it does not work as intended and needs e.g. an explicit
QString::number() invocation.

Also start with number 2 for duplicated instances.

Test Plan:
Start multiple instances of an MPRIS player (e.g. Gwenview). Before the
second instance would get labelled with "Name []", with this patch it is
labelled with "Name [2]".

Reviewers: #kde_connect, mtijink

Reviewed By: #kde_connect, mtijink

Subscribers: mtijink, nicolasfella

Tags: #kde_connect

Differential Revision: https://phabricator.kde.org/D11411
2018-03-17 23:37:26 +01:00
Friedrich W. H. Kossebau
bb3ab8b631 Clean-up requirements: cmake 3.0, qt 5.7, use min versions, deduplicate KF5
Summary:
* cmake 2.8.12 is really outdated, 3.0 is minimum in plasma & kf5
* cmake_minimum_required should be at begin of toplevel CMakeLists.txt
* bump qt version to 5.7, matching the min Qt version of kf5 5.42
* with ecm being part of kf5 since early versions, share ${KF5_MIN_VERSION}
* use QT_MIN_VERSION & KF5_MIN_VERSION also for separate find_package calls
* deduplicate all KF5 components searched for in unconditionally included
  subdirs

Test Plan: Still configures and builds with all options OFF & ON

Reviewers: #kde_connect, nicolasfella

Reviewed By: #kde_connect, nicolasfella

Subscribers: nicolasfella

Differential Revision: https://phabricator.kde.org/D11418
2018-03-17 23:34:33 +01:00
Friedrich W. H. Kossebau
1f0d6b2a62 Remove unused "Encoding": "UTF-8" from plugins' metadata JSON
Summary:
Had slipped in from conversion of metadata in desktop file format,
but are of no use in the JSON variant.

Test Plan: Plugins load and work as before

Reviewers: #kde_connect, nicolasfella

Reviewed By: #kde_connect, nicolasfella

Differential Revision: https://phabricator.kde.org/D11417
2018-03-17 23:32:27 +01:00
Friedrich W. H. Kossebau
72fc67ee05 MPRIS control: do not accumulate interface objects
Summary:
If MPRIS players were appearing and disappearing multiple times, the
OrgFreedesktopDBusPropertiesInterface & OrgMprisMediaPlayer2PlayerInterface
instances created for listening to the signals had been accumulating and
thus resulting in X signals per X restarted player, because the instances
were not deleted when a player disappeared.
Additionally were instances of them created on the fly on the stack in
some of the methods, instead of reusing the existing ones.

This patch changes that by introducing a class MprisPlayer which holds all
data & instances per player. This allows to look up the respective
interfaces instances to reuse them as well as properly controlling their
lifetime.

Test Plan:
Starting and restarting multiple MPRIS players (incl. multiple instances of
the same player app) works as expected as befire. They are listed on the
Android Media control as well as have proper states there when selected.
Additionally no longer multiple change signals are emitted if restarting a
player.

Reviewers: #kde_connect, mtijink

Reviewed By: #kde_connect, mtijink

Subscribers: mtijink

Differential Revision: https://phabricator.kde.org/D11389
2018-03-16 23:53:40 +01:00
Aleix Pol
69ef7cfe13 Make sure we don't request multiple times the notification icon
Reviewers: #kde_connect, albertvaka

Reviewed By: #kde_connect, albertvaka

Subscribers: albertvaka

Differential Revision: https://phabricator.kde.org/D11371
2018-03-16 00:06:47 +01:00
l10n daemon script
d813fefbf7 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-03-13 05:16:27 +01:00
Albert Vaca
f47f517827 Rename NetworkPackage -> NetworkPacket
Summary: KDE Connect, now with correct naming!

Test Plan: It still builds.

Reviewers: #kde_connect, apol, nicolasfella

Reviewed By: #kde_connect, apol, nicolasfella

Subscribers: nicolasfella

Differential Revision: https://phabricator.kde.org/D11036
2018-03-05 20:03:23 +01:00
Nicolas Fella
d58f6cf2ae Remove unused code in NotificationDbusInterface
Summary: The isRequest codepath is never used. The requestAnswer path is not implemented and after D9558 not needed anymore.

Test Plan: Sending notifications works like before

Reviewers: #kde_connect, albertvaka

Reviewed By: #kde_connect, albertvaka

Subscribers: albertvaka, #kde_connect

Differential Revision: https://phabricator.kde.org/D9559
2018-03-04 13:13:18 +01:00
Aleix Pol
6495e8dc53 On my system the notification is null
It may be a bug, but we better not crash anyway
2018-01-30 17:43:58 +01:00
l10n daemon script
83158aac7a SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-01-29 05:02:00 +01:00