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
3103bd0c5a
Improve filtering of devices in the DevicesModel
...
We need to remove devices from the model if the filter doesn't match, to
prevent listing disconnected devices in the plasmoid.
REVIEW: 127610
2016-04-08 17:01:33 +02: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
12ccbaef98
Improve NotificationsModel
...
Don't refresh the whole notification list, if a notification is added or
removed.
REVIEW: 127565
2016-04-05 23:33:45 +02:00
David Kahles
6cc1946443
Allow paired and not reachable devices in the model
...
The server supports this device state (e.g. if a device was saved as paired,
but isn't reachable), so let's expose it to the model.
The display filter should take care of excluding such devices if
nessecarry.
To make sure that such devices aren't shown in the kcm (we can't do anything
useful with them at the moment), set the display filter accordingly.
REVIEW: 127553
2016-04-05 23:33:45 +02:00
David Kahles
a8bd062baf
Stop clearing the notification list twice
...
There were two clearNotifications() calls when refreshing the notification
list. As there happens nothing relevant in between them, the second call is
useless.
REVIEW: 127542
2016-04-05 23:33:45 +02:00
Albert Vaca
cf6cbd2925
WIPx3!
2015-12-01 10:45:14 -08:00
Aleix Pol
b1692142b1
Polish NotificationsModel::isAnyDismissable proprety
...
Let qml know it's computed on every call.
Consider it might have changed whenever a new notification enters as well.
2015-11-12 12:27:30 +01:00
Aleix Pol
f6cb042000
Revert "Add a hack to export auto generated interfaces"
...
This reverts commit 1501090b41
.
2015-09-12 22:12:38 +02:00
Aleix Pol
50b9d331d1
Fix hack
...
Expose the signal on the exported interface.
2015-09-12 22:12:18 +02:00
David Edmundson
1501090b41
Add a hack to export auto generated interfaces
2015-09-12 22:03:26 +02:00
Aleix Pol
d8310cb38a
Remove unused arguments
2015-09-12 09:48:18 +02:00
David Edmundson
9985a59608
Find my phone plugin
...
Add a plugin that sends a package to ring an alarm on a phone
Also adjusts plasmoid to have a button to invoke this.
2015-09-11 21:12:12 +02:00
Aleix Pol
501e5431ec
Merge branch 'stable'
2015-09-10 20:26:43 +02:00
Aleix Pol
972c260628
Make sure kdeconnectd gets started when required
...
BUG: 352522
BUG: 352520
2015-09-10 20:21:41 +02:00
Aleix Pol
a9d2840664
Use acquire and release instead of a boolean property
...
This way we hope we won't end up without discovery if 2 instances need
discovery at the same time.
Reviewed by Albert Vaca
2015-09-09 20:09:04 +02:00
Aleix Pol
d58f6314fe
run Clang Modernize
...
Minus the auto change
2015-09-08 10:47:37 +02:00
Boris Egorov
1924173df2
Fix various krazy2 warnings
...
Fix following krazy2 warning types:
[explicit], [endswithnewline], [doublequote_chars], [includes], [normalize],
[postfixop], [spelling]
See http://ebn.kde.org/krazy/reports/playground/base/kdeconnect-kde/index.html
for details.
SLOT/SIGNAL normalization done with Qt normalize utility:
https://github.com/qtproject/qtrepotools/tree/master/util/normalize
REVIEW: 124857
2015-08-21 22:38:54 +06:00
Aleix Pol
be2a3252c2
Make it possible to lock the screen from KDE Connect
...
Connects to freedesktop ScreenSaver interface and un/locks it upon request.
REVIEW: 124170
2015-07-22 03:37:34 +02:00
Aleix Pol
b99ac42ede
Fix geninterface usage
2015-07-22 03:21:28 +02:00
Aleix Pol
058f7c7c90
Implement the touchpad forwarding into kcapp
...
This way the computer's cursor can be controlled from the device. Keyboard
is not yet implemented.
2015-07-22 03:21:28 +02:00
Lamarque V. Souza
208c11de1a
Fix battery widget not appearing after kdeconnectd restarts.
...
I also added a workaround to prevent memory leak described in
0f38eb34a4
.
REVIEW: 124361
2015-07-17 00:40:45 -03:00
Aleix Pol
06493a8192
Keep track of whether the daemon is alive
...
Listen to dbus registrations. Remove all devices if the service dies,
create all devices back when restored.
Same for the NotificationsModel.
REVIEW: 124183
2015-06-25 21:19:23 +02:00
Aleix Pol
6d83827b18
Don't rely on Q_PROPERTY if we're inheriting QDBusAbstractInterfaceBase
...
See bug:
https://bugreports.qt.io/browse/QTBUG-46858
2015-06-25 04:08:00 +02:00
Aleix Pol
43451d6ae1
Simplify Device::id management
...
Removes the id->row mapping. It was broken as the indices weren't updated
when a row was added or removed.
Stop exposing Device::id through dbus, just store it in the interface
class.
* It's redundant as it's part of the interface definition
* If we keep it it will save us quite some dbus round-trips
* It will be reliable, as nowadays id() sometimes QString() if the dbus
connection is invalid.
REVIEW: 124158
2015-06-24 20:57:17 +02:00
Albert Vaca
9fa8538bf1
Removed some assertions that could not be true if using the model filter
...
Also fixed ugly hack where the KCM updated the model
2015-06-21 20:20:40 -07:00
Albert Vaca
fd65570487
Some TODOs done :)
...
Also renamed the Status flags enum to make it more understandable
2015-06-21 19:42:16 -07:00
Aleix Pol
46b57003cd
Display the device model section
...
This way we can differentiate between the different states
2015-06-19 07:14:02 +02:00
Aleix Pol
68b206e525
Move the generation of dbus interfaces into interfaces/
...
Simplifies the code altogether by centralizing the generation into 1 call
that does all the steps.
REVIEW: 124120
2015-06-18 19:06:14 +02:00
Aleix Pol
5c79e8a7a6
Implement an MPRIS client plugin
...
Makes it possible to control remote MPRIS instances.
REVIEW: 124100
2015-06-18 04:01:01 +02:00
Aleix Pol
7c2e2fb726
QML-ify
...
Add API to call random public plugin methods
qdbusxml2cpp is not generating the Q_PROPERTY attribute. For now [1], add
it ourselves by addding a proxy signal.
REVIEW: 124077
2015-06-13 01:28:36 +02:00
Aleix Pol
6ddac08978
Introduce a device Role
...
REVIEW: 124067
2015-06-11 16:47:53 +02:00
Aleix Pol
a83bf73a4d
Move the DevicesSortProxyModel to interfaces/
...
This way it can be used by other parts of the project. It belongs with the
DevicesModel.
REVIEW: 124067
2015-06-11 16:09:27 +02:00
Albert Vaca
e5b897884c
Added device status icons to be used in the KCM instead of the IM ones
2015-05-17 23:28:58 -07:00
Albert Vaca
50f611f8e3
IconModelRole now uses IconNameModelRole
2015-05-17 18:48:10 -07:00
Albert Vaca
519d67023c
Added tooltip to model
2015-05-17 18:47:31 -07:00
Albert Vaca
f21746cfae
Returning a QIcon instead of a fixed size QPixmap for DecorationRole.
2015-04-19 22:21:37 -07:00
Aleix Pol
05491442e6
Make it possible to fetch the device from the DevicesModel from QML
...
Uses the row as the argument instead of the QModelIndex.
Defines the Device type so it can be used from QML.
REVIEW: 123361
2015-04-15 13:00:23 +02:00
Albert Vaca
b5420048f9
Fixed warning
2015-03-23 20:44:18 -07:00
Aleix Pol
c7cee37330
Port away from KServiceTrader
...
Uses KPluginLoader+KPluginMetadata instead.
Describes plugins in json instead of desktop files. These desktop files are
then embedded into the .so file. All the plugins will be in a kdeconnect/
directory, and those will be the ones to look for.
Note it doesn't drop the KService dependency as KIOCore is a KDE Connect
dependency as well.
REVIEW: 123042
2015-03-19 16:36:53 +01:00
Aleix Pol
fda4556dfc
Take into account the integrated filter in the DevicesModel
2015-03-16 02:31:59 +01:00
Aleix Pol
28bc226e5d
Make the NotificationsModel also async
...
The code was almost identical to the one in DevicesModel, so I did the same
2015-03-14 05:37:16 +01:00
Aleix Pol
6fe7a9b158
Make it possible for the DevicesModel to react to device name changes
2015-03-14 04:28:54 +01:00
Aleix Pol
bb97cc19b6
Don't try to initialize the devices model with an empty list
2015-03-14 04:28:06 +01:00
Aleix Pol
fb9143a2aa
Ensure the watcher never leaks
2015-03-14 04:27:30 +01:00
Aleix Pol
b99cba1949
Make the DevicesModel::deviceAdded code more robust
...
If deviceAdded is reported even though it's already in the model, don't
add it twice.
2015-03-14 03:40:01 +01:00
Aleix Pol
e592081094
Fix issue spotted by modeltest
...
Off by 1 index... :(
2015-03-14 03:32:53 +01:00
Aleix Pol
a4ccc93518
Make the devices list a vector
...
It's the suggested data type to use according to:
https://marcmutz.wordpress.com/effective-qt/containers/
2015-03-14 03:25:14 +01:00
Aleix Pol
7d6cf97551
Treat dbus errors are warnings rather than debug information
...
Hopefully it will make it easier to pick up at some point.
2015-03-14 02:42:18 +01:00
Aleix Pol
5d1750b716
Implement TODO
...
When a device is added, just add the new device instead of refreshing the
whole list.
2015-03-14 02:32:38 +01:00
Aleix Pol
7af7dbdc2f
Improve DevicesModel::receivedDeviceList
...
Make the population asynchronous on dbus. Wait for the device list and
don't populate it until it's ready. There's no reason to block.
Don't emit after endInsertRows. It doesn't help, as the views will have
already refreshed.
2015-03-14 02:30:35 +01:00
Aleix Pol
128241c95c
Don't call the QString copy constructor without need
2015-03-14 02:20:25 +01:00
Jonathan Riddell
ce2bb1e433
don't install library dev files until there is an API/ABI policy
2015-03-12 12:42:10 +01:00
Albert Vaca
0a1128ae86
Actually, why are we compiling the modeltest as part of the regular build?
2015-03-08 19:16:06 -07:00
Albert Vaca
a8df2558e4
Fixed annoying warning in modeltest.cpp
2015-03-08 19:13:34 -07:00
Albert Vaca
c7c91c1289
Added KdeConnectConfig class that aims to be a KConfig abstraction
...
Benefits:
- We had config files in different paths, now they will be centralized.
- Daemon, LanLinkProvider and NetworkPackage depend only on Qt now.
- KConfig is accessed with strings as keys, where a typo can go unnoticed.
- Daemon is now thinner, as it doesn't need to initialize config values.
- QCA::Initializer is in a single place now (was in Daemon and Plugin).
2015-03-01 20:16:07 -08:00
Albert Vaca
18ba161f17
Fully replaced KDED for autostart + dbus activation, so we work outside KDE
2015-02-23 22:12:45 -08:00
Albert Vaca
c013966f4b
Version number is now set in a single place
2015-02-04 23:52:07 -08:00
Albert Vaca
6cc6d287fc
Merge branch 'master' into frameworks
...
Conflicts:
cli/kdeconnect-cli.cpp
core/filetransferjob.cpp
core/filetransferjob.h
interfaces/notificationsmodel.cpp
plasmoid/declarativeplugin/kdeconnectdeclarativeplugin.h
plugins/sftp/sftpplugin.cpp
2015-01-20 22:44:31 -08:00
Albert Vaca
da1cb4c354
Coding style
2015-01-20 22:22:14 -08:00
Albert Vaca
91d4a03258
Made notification id accessible from QML
2015-01-20 22:17:01 -08:00
Aleix Pol
21ab5a4f81
Merge branch 'master' into frameworks
...
Mostly kDebug -> qCDebug
Also some KCmdLineArgs -> QCommandLineParser
Conflicts:
cli/kdeconnect-cli.cpp
core/CMakeLists.txt
core/backends/lan/lanlinkprovider.cpp
core/daemon.cpp
core/pluginloader.cpp
interfaces/CMakeLists.txt
kio/kiokdeconnect.cpp
plugins/mousepad/CMakeLists.txt
plugins/mousepad/mousepadplugin.h
plugins/mpriscontrol/mpriscontrolplugin.cpp
plugins/sftp/sftpplugin.cpp
2014-11-04 19:12:29 +01:00
Aleix Pol
b086866409
qVariantCanConvert -> QVariant::canConvert
2014-09-23 19:55:07 +02:00
Aleix Pol
968ccb22c6
Port away from deprecated setRoleNames
2014-09-23 19:27:47 +02:00
Àlex Fiestas
e949bcf19f
Forgot to add this file, needed for interfaces to build
...
Ups...
2014-09-22 00:46:54 +02:00
Àlex Fiestas
02fd748f41
Interfaces no longer depend on kdelibs4support
...
Also since fileitemactionplugin was using them (and inhering
kdelibs4support) not we have tu explicitly link against it in there.
2014-09-22 00:16:39 +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
Àlex Fiestas
f20f489999
Port to aelperay from QJson to native json support
...
Straight forward port from QJson to the native Json support.
As a note I have added 2 helper functions that make the code bit more
readable (object2qvariant and qvariatn2qobject).
2014-09-13 00:49:56 +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
Aleix Pol
5aeb71873c
Fix cmake warning, make link visibility explicit for kdeconnectinterfaces
2014-07-01 02:16:45 +02:00
Albert Vaca
12411da360
Added some debug info to devices and notifications models
2014-07-01 01:26:08 +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
d72ebc4cf7
Workaround to make devices be correctly filtered again.
...
Flags in QML are not working correctly (as they are in Qt5), so we will
use integer values for the flags for now.
2014-07-01 01:26:07 +02:00
Aleix Pol
446dbbc230
Remove IsPairedRole
...
It was not a good idea
2014-06-27 16:16:45 +02:00
Aleix Pol
e227c61cf8
Expose flags so that the plasmoid doesn't need to use magic numbers
2014-06-27 16:09:01 +02:00
Aleix Pol
dc2f9c0f3c
Introduce a IsPaired role in the DevicesModel
...
Reviewed by Albert Vaca
2014-06-23 18:13:43 +02:00
Aleix Pol
bf272ea3e7
Remove usage of KDE4_ variables
2014-06-18 02:39:30 +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
Aleix Pol
b7420146eb
Expose the icon name from the device instance
2014-06-14 19:42:34 +02:00
Aleix Pol
7a0557f482
cmake fixes
...
Use the new directory structure when installing generated files.
Remove unneeded add_dependencies calls.
2014-06-14 16:56:41 +02:00
Rohan Garg
83c882cbdd
Fix build
2014-06-14 16:50:54 +02:00
Aleix Pol
b88897847b
Reorganize sources
...
We broke kded into core and kded, core contains the library with the backends
and plugins.
Also we renamed libkdeconnect to interfaces.
2014-06-14 15:22:40 +02:00