Commit graph

50 commits

Author SHA1 Message Date
Nicolas Fella
e601755644 Force usage of QStringLiteral and port remaining offenders 2019-06-10 14:40:28 +00:00
Weixuan Xiao
5431073844 Add wrapper for macos dbus connection 2019-06-09 15:28:49 +00:00
Nicolas Fella
96cd55920e Use notification hints from new Plasma notification system 2019-06-02 14:03:11 +00:00
Nicolas Fella
3b8fedea1a Replace http GNU urls with https 2019-03-23 17:29:26 +01:00
Nicolas Fella
957975898b Add actions to notifications
Summary:
When Android sends a list of possible actions add them to the notification. When the action is triggered send a package containing the id and the action back
CCBUG: 366475

Test Plan: Send dummy notification, see the actions, trigger it, look for received package on Android

Reviewers: #kde_connect, apol

Reviewed By: #kde_connect, apol

Subscribers: apol, kdeconnect, broulik, mtijink, #kde_connect

Tags: #kde_connect

Differential Revision: https://phabricator.kde.org/D12293
2019-02-08 23:54:04 +01:00
Nicolas Fella
74e7a90cd8 Simplify notification handling
Summary:
Use QPointer for KNotification
Use ready signal for signalling updates

BUG: 400010

Test Plan: Spawned some notifications

Reviewers: #kde_connect, broulik, albertvaka

Reviewed By: #kde_connect, albertvaka

Subscribers: albertvaka, kdeconnect

Tags: #kde_connect

Differential Revision: https://phabricator.kde.org/D18354
2019-01-24 09:19:14 +01:00
Yuri Chornoivan
5fe74ce041 Fix minor EBN issues and typos 2018-10-07 21:23:20 +03: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
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
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
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
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
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
c864267f04 Replace Q_FOREACH with C++11 range-for
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
2017-07-21 09:57:19 +02:00
Julian Wolff
4eeb329014 These changes allow replying to any notifications that offer quick reply text fields
Summary: These changes allow replying to any notifications that offer quick reply text fields

Reviewers: #kde_connect, apol

Reviewed By: #kde_connect, apol

Subscribers: apol

Maniphest Tasks: T4674

Differential Revision: https://phabricator.kde.org/D5993
2017-05-31 15:36:43 +02:00
Nicolas Fella
891f1bd355 Notification icons from Android are now displayed
- 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
2017-04-13 21:32:03 +02:00
Albert Vaca
60331ccbf1 Clazy says all this QStringLiteral and QLatin1String were missing/wrong 2016-11-26 16:21:29 +01:00
Aleix Pol
f9406e8afc Introduce QVariantMap as an argument of NetworkPackage
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
2016-06-21 20:07:12 +02:00
Albert Vaca
e880e14ed5 Preffer Q_FOREACH to foreach 2016-06-21 14:50:17 +02:00
Aleix Pol
bfd698af36 Fix issues detected by clazy
Don't use for(:) on Qt containers. It detaches without need.
2016-06-20 19:22:29 +02:00
Aleix Pol
9aa794b0da Merge branch 'master' into sslrefactor 2016-05-31 17:29:06 +02:00
Aleix Pol
e7578cc129 Refactor capabilities together with Albert
He is committing a similar patch to kdeconnect-android
2016-05-31 17:16:01 +02:00
Albert Vaca
3f82eb9cc7 Less verbose and more useful logging. 2016-05-25 14:33:58 -06:00
Albert Vaca
0c95010c3b Merge branch 'master' into sslrefactor
# Conflicts:
#	core/device.cpp
#	interfaces/devicesmodel.cpp
2016-04-14 19:00:42 -07:00
David Kahles
aefa51fa86 Remove notifications from plasmoid, if the notifications plugin gets disabled
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
2016-04-06 02:30:50 +02:00
David Kahles
e86ea7b3bd Remove the keys from the notification hashmap
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
2016-04-05 23:33:45 +02:00
Albert Vaca
ff9775e1c9 Better logging of what's going on 2016-03-07 16:01:44 -08:00
Holger Kaelberer
2a74eb68f8 notifications: add initial support for desktop-to-xxx notifications
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.
2015-12-05 23:23:22 +01:00
Albert Vaca
6deec3429a Use id instead of a pointer in the dismissRequested signal and slot.
Also changed connection to the Qt5 way.
2015-10-17 15:32:13 -07:00
Albert Vaca
f35ce9c16f Trying to fix a couple of crashes when unpairing and repairing devices. 2015-09-07 00:14:52 -07:00
Albert Vaca
e6402f7e97 We were not clearing notifications when a device disconnected 2015-06-14 18:59:53 -07:00
Albert Vaca
cd62979f3c Merge branch 'master' into frameworks 2015-01-20 22:57:10 -08:00
Albert Vaca
77dd964b02 Added "silent" param that makes new notifications not popup
Should replace requestAnswer eventually, for now both are here for compat.
2015-01-20 22:56:47 -08:00
Kai Uwe Broulik
930c107f7b Cleanup notifications
Use iconName instead of sending a fixed-size pixmap around, fix wording and use title
capitalization, more meaningful names in notifyrc, QStringLiteral and new style connect.

REVIEW: 122121
2015-01-18 01:53:20 +01:00
Albert Vaca
f204faeae9 Removed unnecessary .moc include 2014-11-29 00:17:42 -08:00
Àlex Fiestas
11f106c464 Port notifications away from KDELibs4Support 2014-09-22 10:17:44 +02:00
Àlex Fiestas
73db3eb694 Port Notifications from kDebug to qCDebug 2014-09-22 00:45:06 +02:00
Àlex Fiestas
42269a9dda Port from KIcon to QIcon
Executed kcm and some notifications, icons are still shown.
2014-09-13 01:04:48 +02:00
Lukáš Tinkl
994057af0e fix the Configure action
display the kdeconnect kcm
2014-09-10 10:19:44 +02:00
Albert Vaca
a303b73238 Merge branch 'master' into frameworks
Conflicts:
	cli/kdeconnect-cli.cpp
	core/CMakeLists.txt
	plasmoid/package/contents/ui/FullRepresentation.qml
	plugins/ping/pingplugin.cpp
2014-07-01 23:59:38 +02:00
Albert Vaca
cabb0f2f7b Simplified debug areas so we only have one, called "kdeconnect" 2014-07-01 01:26:08 +02:00
Albert Vaca
3147067fbf Fixed notifications not being appearing in the model nor in the plasmoid
The parent of the QDbusAdaptor has to be a Device, and now it was a
KdeConnectPlugin for the Notifications plugin.

Instead of passing the parent (that is actually a Device) to the
QDbusAdaptor as we were doing in the Battery plugin, I preferred to get the
actual Device from the KdeConnectPlugin, even though it needs a const_cast.
2014-07-01 01:26:07 +02:00
Aleix Pol
a1a560c469 First approach to a KF5 port of KDE Connect
Ported using KDELibs4Support, for a smaller delta, so we can keep
developing on master until we decide not to.

At the moment, it builds and installs but tests don't pass because
of a QCA2 initialization problem I didn't manage to debug yet.

CCMAIL: kdeconnect@kde.org
2014-06-16 20:02:07 +02:00
Albert Vaca
8c7c95f98b Workaround for the bug where old notifications could not be erased 2014-06-15 21:40:18 +02:00
Aleix Pol
6ce0b6b874 Document in the desktop files the outgoing types for the plugins
This way we narrow the things a plugin can send, to its own scope. Still
every plugin can set a list of types, so it should be ok.
2014-06-14 20:35:00 +02:00
Aleix Pol
741abafaf7 Move the plugins into a different top-ĺevel directory
Reviewed by Albert Vaca
2014-06-14 16:34:11 +02:00
Renamed from core/plugins/notifications/notificationsdbusinterface.cpp (Browse further)