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
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
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
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
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
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
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
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
Summary:
The use of Q_FOREACH is advised against (https://doc.qt.io/qt-5/qtglobal.html#Q_FOREACH) since Qt 5.7 and will eventually be removed from Qt.
I replaced all occurrences with the range-for loop introduced in C++11 (except for the one in daemon.cpp in deviceIdByName which might have a bug / typo in it).
I added const to the container or casted it with qAsConst when appropriate to avoid unnecessary copies.
(This is my first submission. I did all the unit tests, and they all passed but I don't know how to show it here.)
Reviewers: #kde_connect, nicolasfella, apol
Reviewed By: #kde_connect, nicolasfella, apol
Subscribers: albertvaka, apol, nicolasfella
Tags: #kde_connect
Differential Revision: https://phabricator.kde.org/D6724
Summary: I think it looks nicer than the kind of angry default icon and is the expected behaviour
Reviewers: #kde_connect, albertvaka
Reviewed By: #kde_connect, albertvaka
Subscribers: albertvaka, apol, #kde_connect
Tags: #kde_connect
Differential Revision: https://phabricator.kde.org/D6089
Summary:
Show an icon for each notification which has an icon.
Show a toolbutton which can be used to reply to notifications which offer a quick reply.
Reviewers: #kde_connect, albertvaka
Reviewed By: #kde_connect, albertvaka
Subscribers: albertvaka
Maniphest Tasks: T4674, T4658
Differential Revision: https://phabricator.kde.org/D6058
- FileTransferJob is now nonblocking.
- Files are stored based on the image MD5.
- Some improvements in displaying the notification, e.g. title is only
displayed when different than the app name.
- Most of the notification display code moved to the Notification class.
REVIEW: 130050
Summary:
Don't use QDBusConnection::ExportAllContents
No need to make connect and receivedPackage public slots (they're are the
parent's already)
Fixes T4975
Test Plan: Rough manual test
Reviewers: #kde_connect, albertvaka
Reviewed By: #kde_connect, albertvaka
Maniphest Tasks: T4975
Differential Revision: https://phabricator.kde.org/D3871
Makes it possible to specify the different properties sent at once,
rather than one by one as we used to do.
Also port whenever possible to the initializer-list syntax.
REVIEW: 128269
Therefore notify the client that we're deleting all notifications.
Otherwise the client wouldn't notice this and the notifications would still
be available in the plasmoid.
REVIEW: 127582
When disabling the notifications plugin, we can't delete the notification
adapter due to a QT bug. Thus we leak it, and to not expose the notifications
anymore, we clean up the notifications in the adaptor. Therefore we delete
the QStrings in the notification hashmap (mNotifications) with qDeleteAll().
But this function does only free the QStrings, but no remove the keys from the
hashmap. Thus, a subsequent call to activeNotifications() has an undefined
behavior, as there are dangling pointers in the hashmap. This is solved by
removing the keys from the hashmap.
REVIEW: 127543
Configurably attach icons as payload to notification packages. By
design and due to restrictions on mobile devices *only* png is sent.
As KIconLoader preferably returns svg icons from iconPath() we fall
back to loading from "hicolor" using KIconTheme directly. Otherwise
*many* icons are dropped because of svg format.
This also improves slightly the test-case to use a tweaked TestDevice
to allow for inspecting sent NetworkPackage-s.
REVIEW: 126666
Added kcm ui with global and app-specific config options.
Global options affect all notifications:
- Persistent only? --> Sync only notifications with timeout == 0?
- Include body? --> Add body string to summary when syncing?
- Minimum urgency
Per-application options affect notifications sent by a specific
application:
- Sync it at all?
- If yes, allow to define a "blacklist" pattern (QRegularExpression)
to define which notifications should *not* be synced.
Applications are maintained in the per-device config and added when
seen the first time by the notification listener. From that moment on
they can be configured in the kcm ui.
Eavesdrop on the Notify call of the org.freedesktop.Notifications
dbus-interface, proxy all caught notifications to our peer device and
track them in the internal notifications-list.
Also fix "cancel" requests from peer devices, by cutting of
kdeconnect-android's id-prefix.