Commit graph

601 commits

Author SHA1 Message Date
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
l10n daemon script
ab006521f8 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-28 05:06:41 +01:00
Aleix Pol
895a9206ff Was getting a double-delete, now it won't crash 2018-01-16 20:31:05 +01:00
Matthijs Tijink
1f6544e55c Add album art to mpris network packets.
Summary: Sends the album art url, so that the android app can display the album art (by fetching it from the internet). Transferring local album art is not supported yet, but can be added in a future diff.

Test Plan: Works for me in players with/without album art and with/without local file album art.

Reviewers: #kde_connect, nicolasfella

Reviewed By: #kde_connect, nicolasfella

Differential Revision: https://phabricator.kde.org/D9563
2018-01-03 20:40:08 +01:00
Matthijs Tijink
71d8eb07c3 Add title, artist and album to MPRIS network packets
Summary: This diff adds the title, artist and album to the MPRIS network packets. That's useful when you need more detail than just "artist - title", for example in the future media control notification. It also fixes weird song descriptions for empty artist strings (e.g. Spotify uses an empty (but present) artist when playing ads)

Reviewers: #kde_connect, apol

Reviewed By: #kde_connect, apol

Subscribers: nicolasfella, apol

Differential Revision: https://phabricator.kde.org/D8957
2017-12-30 12:21:57 +01:00
Nicolas Fella
7e7aa6df3f Fix information leak via /tmp
Summary: BUG: 383144

Reviewers: #kde_connect, apol, albertvaka

Reviewed By: #kde_connect, apol, albertvaka

Subscribers: thomasp, apol, #kde_connect, albertvaka

Tags: #kde_connect

Differential Revision: https://phabricator.kde.org/D7146
2017-12-29 21:19:03 +01:00
l10n daemon script
ba5e3ab2f8 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"
2017-11-27 04:56:48 +01:00
l10n daemon script
405825b304 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"
2017-11-08 08:42:35 +01:00
Nicolas Fella
fbf8852d6f Fix Notifications in Plasmoid
Summary:
Fixed Issues mentioned in https://phabricator.kde.org/T6729
This patch also fixes a crash when the filetransfer of the icon fails

Test Plan:
Receive a notification with a previously unknown icon -> icon in Plasmoid is displayed correctly
Receive a notification with an already existing id -> notification in Plasmoid is updated

Reviewers: #kde_connect, apol

Reviewed By: #kde_connect, apol

Subscribers: albertvaka, broulik, apol, #kde_connect

Tags: #kde_connect

Differential Revision: https://phabricator.kde.org/D7209
2017-11-06 04:15:50 +01:00
l10n daemon script
e2713f20fa 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"
2017-11-04 04:46:50 +01:00
l10n daemon script
a543e39c81 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"
2017-10-30 04:45:10 +01:00
l10n daemon script
d26daa14d9 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"
2017-10-13 04:58:29 +02:00
Aleix Pol
214950b3bb Make sure there's not a path within the filename
Reviewers: #kde_connect, aacid, albertvaka

Reviewed By: #kde_connect, albertvaka

Subscribers: albertvaka

Differential Revision: https://phabricator.kde.org/D8106
2017-10-07 13:52:26 +02:00
Thomas Posch
7d6e489520 share plugin: path display
Summary: The path displayed in the configuration of the share plugin is wrongly url-encoded on load (and default). This leads to %1 being displayed as %251. Consistently using the text property of kurlrequester fixes this issue.

Test Plan: manual inspection

Reviewers: #kde_connect, albertvaka

Reviewed By: #kde_connect, albertvaka

Subscribers: albertvaka

Differential Revision: https://phabricator.kde.org/D7963
2017-10-03 21:48:30 +02:00
Nicolas Fella
9639d5cd03 Use pactl instead of KMix in PauseMusic Plugin
Summary: Using pulseaudio via pacmd for controlling the system volume is way easier than using KMix. Same could be done to control the system volume in the MPRIS Plugin

Reviewers: #kde_connect, albertvaka

Reviewed By: #kde_connect, albertvaka

Subscribers: anthonyfieroni, thomasp, albertvaka, #kde_connect

Tags: #kde_connect

Differential Revision: https://phabricator.kde.org/D7922
2017-09-23 10:42:04 +02:00
l10n daemon script
aeb17bc5a5 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"
2017-09-20 08:36:56 +02:00
l10n daemon script
057a114629 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"
2017-09-19 04:58:52 +02:00
Aleix Pol
956d515fe9 Merge branch '1.x' 2017-09-18 20:02:53 +02:00
Tobias C. Berner
c93d83dfb2 Add support for the normal 'umount' porgram.
Summary: FreeBSD does not install fusermount, so we need to use 'umount'.

Reviewers: #kde_connect, albertvaka

Reviewed By: #kde_connect, albertvaka

Subscribers: albertvaka, #kde_connect

Differential Revision: https://phabricator.kde.org/D6945
2017-09-05 22:25:01 +02:00
l10n daemon script
749cf63244 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"
2017-09-04 06:08:28 +02:00
l10n daemon script
b825bee1c9 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"
2017-09-04 04:35:03 +02:00
Albert Vaca
84bba9429f Merge branch 'master' into 1.x
# Conflicts:
#	core/backends/lan/downloadjob.cpp
#	core/backends/lan/downloadjob.h
#	core/filetransferjob.cpp
#	core/filetransferjob.h
#	plugins/notifications/sendreplydialog.cpp
#	plugins/notifications/sendreplydialog.h
#	plugins/telephony/sendsmsdialog.cpp
#	plugins/telephony/sendsmsdialog.h
2017-09-03 22:05:54 +02:00
Jean Vincent
72535ecf48 Make member variable names, & placement and * placement more coherent
Summary:
Change all member variables to the form m_fooBar because it is the preferred form in Qt (it was half and half between this and mFooBar, and a minority didn't have anything).
Place all references and pointers on the side of the type since it is the majority.

Basically:
 - mFoo -> m_foo
 - foo -> m_foo (if it is a member variable)
 - Type &ref -> Type& ref
 - Type *ptr -> Type* ptr

Reviewers: #kde_connect, nicolasfella, albertvaka

Reviewed By: #kde_connect, nicolasfella, albertvaka

Subscribers: albertvaka, #kde_connect

Tags: #kde_connect

Differential Revision: https://phabricator.kde.org/D7312
2017-09-03 21:45:08 +02:00
Nicolas Fella
1d78a2d288 Fix Notifications in Plasmoid
Summary:
Fixed Issues mentioned in https://phabricator.kde.org/T6729

Test Plan:
Receive a notification with a previously unknown icon -> icon in Plasmoid is displayed correctly
Receive a notification with an already existing id -> notification in Plasmoid is updated

Reviewers: #kde_connect, apol

Reviewed By: #kde_connect, apol

Subscribers: broulik, apol, #kde_connect

Tags: #kde_connect

Differential Revision: https://phabricator.kde.org/D7209
2017-08-13 20:18:31 +02:00
Aleix Pol
28f11bd5c9 Fix receiving files with invalid URL characters
Summary:
QUrl constructor assumes the string passed is already encoded so we need
to pass it through setPath and QUrl::DecodedMode.

Test Plan: sent a file with a weird character

Reviewers: #kde_connect, jeanv

Reviewed By: jeanv

Differential Revision: https://phabricator.kde.org/D7224
2017-08-11 02:31:09 +02:00
l10n daemon script
dadcc76841 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"
2017-08-06 06:02:06 +02:00
l10n daemon script
0356908fc8 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"
2017-08-06 04:42:32 +02:00
Aleix Pol
ec97af93a6 Use the same dialog for SendReply and SendSms 2017-08-05 02:11:27 +02:00
Aleix Pol
824eac228e Improvements on the SendReplyDialog
Use a designer file for it
Make sure the focus is on the reply widget
Disable focus from the original text
raise() the dialog when we show it to make sure it's over the other windows
2017-08-03 17:26:29 +02:00
Jean Vincent
9e0d4874c0 Make sure MPRIS players have a unique name
Summary:
Add a number in brackets to distinguish different players with the same display name so that they can all be controlled.
See this task: https://phabricator.kde.org/T6500

Reviewers: #kde_connect

Tags: #kde_connect

Differential Revision: https://phabricator.kde.org/D7017
2017-08-02 15:43:08 +02:00
Aleix Pol
299b1ee2bb Remove cruft from send notifications ui file 2017-08-02 02:20:08 +02:00
Albert Vaca
b83b969f90 Remote command host can only be used from the qml app 2017-08-02 02:05:01 +02:00
Albert Vaca
36c2e15fc7 Check if there was an error before emitting shareReceived.
And change shareReceived arg from QUrl to QString so it works on DBus
2017-08-01 23:59:38 +02:00
l10n daemon script
473a6c14ac 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"
2017-07-30 04:49:43 +02:00
l10n daemon script
08f31736ad 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"
2017-07-26 10:23:47 +02:00