Commit graph

61 commits

Author SHA1 Message Date
Aleix Pol
c2349bacd7 Make sure we don't eat all system memory
I had wrong configuration files, the encription algorithm definitely
doesn't take it into account.
2016-05-05 17:45:49 +02:00
David Kahles
174cf3d3ce Don't reset m_pairStatus when unpair is requested by remote device
unpairInternal() will take care of this, otherwise pairingChanged() will not
be emited and though, the model won't notice it.

REVIEW: 127641
2016-04-13 08:44:47 +02:00
David Edmundson
f1f3f48aaf Export pairStatus 2015-09-12 22:03:39 +02:00
Aleix Pol
2c2cb21ee1 Don't clean the devices that looked us up in the first place 2015-09-12 20:53:05 +02:00
Albert Vaca
217d4b60ff Fixed outging capabilities 2015-09-12 08:51:39 -07:00
Aleix Pol
4730022810 Pass arguments as const-reference 2015-09-12 09:45:59 +02:00
Albert Vaca
89afa5b9af Renamed capabilties so we don't clash with KDE4's broken implementation 2015-09-11 06:20:15 -07:00
Aleix Pol
47147c5fa1 Merge branch 'stable' 2015-09-11 14:04:54 +02:00
Aleix Pol
c2acc37da6 Fix filtering of plugins that don't support capabilities 2015-09-11 14:00:15 +02:00
Aleix Pol
95f01c4bea Use C++ for setting the default argument 2015-09-11 12:34:52 +02:00
Albert Vaca
4df14d1c7d Fixed plugins without incoming nor outgoing packages being disabled 2015-09-11 01:12:22 -07:00
Albert Vaca
c65be84a89 Only send capabilities packets for paired devices 2015-09-09 01:19:38 -07:00
Aleix Pol
a0da8ba858 Let the KPluginSelector react to changes in the plugin configuration
Mainly whenever the remote capabilities change.

Reviewed by The Vaca Man
2015-09-08 20:03:44 +02:00
Aleix Pol
b101e828a4 Fix capabilities detection
Only consider capabilities as unsupported if both incoming and outgoing are
empty, rather than either.

Reviewed by Albert Vaca
2015-09-08 17:58:40 +02:00
Aleix Pol
6a379e9227 Rename missingPlugins to unsupportedPlugins 2015-09-08 17:38:33 +02:00
Aleix Pol
617b66aeb8 small code simplification
removes changes from list to set
always uses the same path for figuring out the interfaces.

reviewed by Albert Vaca
2015-09-08 17:35:30 +02:00
Aleix Pol
df3581459a Add a test that makes sure that capabilities are gathered correctly
While at it, fix the logic, because it wasn't working all that well.

Reviewed by Albert Vaca
2015-09-08 17:35:30 +02:00
Albert Vaca
854e4227fa Read the capabilities in the first addLink instead of only the constructor 2015-09-08 08:37:43 -07:00
Albert Vaca
1a63d18ada Print more info 2015-09-08 01:12:00 -07:00
Aleix Pol
4023bf0599 Only keep connections alive with unpaired devices when discovery is enabled
At the moment, we were keeping the connection alive with every reachable
device. While this works optimally for most use-cases, on networks with
several devices with KDE Connect, the amount of connections grows
exponentially.

Reviewed by Albert Vaca

CCBUG: 352424
2015-09-08 09:30:55 +02:00
Aleix Pol
4960247fb5 Add a package type that updates the device capabilities
Every time we reload the plugin list, report the plugins that we support.
If the remote devices' capabilities change, update the plugin list.

Reviewed by Albert Vaca
2015-09-07 20:03:05 +02:00
Aleix Pol
f65a1f206f Turn core qWarnings into qCWarning 2015-09-07 19:35:07 +02:00
Aleix Pol
91351773fd Mark incompatible plugins as such in the kcm
If a plugin isn't available, display it as unsupported by the device. This
is figured out through capabilities.

Reviewed by Albert Vaca
2015-09-07 19:35:07 +02:00
Aleix Pol
d835d01a09 Add a test for file sending, using the loopback device
Extends unit testing by making sure that file sharing works locally.

REVIEW: 125086
2015-09-07 15:03:04 +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
Albert Vaca
08938689c5 Emit less redundant events 2015-06-21 19:39:04 -07:00
Albert Vaca
a4c8934ee7 If both devices request pairing at the same time, we just pair.
The second device accepts the request instead of failing.
2015-06-15 09:03:26 -07:00
Aleix Pol
ef788e0658 Restore removed API, deprecate
REVIEW: 124084
2015-06-12 17:54:47 +02:00
Aleix Pol
b592dc99a0 Merge pairingSuccessful and unpaired signals into pairingChanged(bool)
REVIEW: 124067
2015-06-11 16:19:00 +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
Aleix Pol
8f777040f7 Remove KNotifications dependency from libkdeconnectcore
Moves the implementation into the actual daemon. This opens the
possibility for different ways to expose these notifications depending on
where the libkdeconnect will be deployed.

REVIEW: 123076
2015-03-24 12:26:37 +01: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
Albert Vaca
654ee39b37 Fixed bug when pairing fails if initiated by the desktop
If the phone thinks that it's already paired with the computer when
receiving a pairing request, it will answer stuff back that will cause
the desktop to abort the pairing process.
2015-03-15 19:31:01 -07:00
Albert Vaca
563233cac7 Fixed unpair still using the old KConfig 2015-03-15 19:31:01 -07: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
807926473d Use better types to store the device internal data
https://marcmutz.wordpress.com/effective-qt/containers/
2015-03-14 04:07:55 +01:00
Aleix Pol
0e96d837ff Make sure the capabilities don't change over time by constifying
It exposed a problem later on, where we'd end up removing our own
capabilities into the remote's.
2015-03-14 02:44:21 +01:00
Aleix Pol
4c195e1a16 No need to set up the timeout every time 2015-03-14 00:39:13 +01: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
Aleix Pol
ef70772f70 Clean up generation of the host's private key
Only look for it in the writable path, as it won't ever be installed in a
common place.
Don't look for the path in the config file either.
Don't make it depend on the application name.

REVIEW: 122744
2015-03-02 00:49:44 +01:00
Albert Vaca
c50f1a22ae Fixed rejectPairing being always called 2015-02-23 21:43:46 -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
a58fab4fb3 Merge branch 'master' into frameworks
Conflicts:
	cli/kdeconnect-cli.cpp
	core/device.cpp
	core/filetransferjob.cpp
	core/filetransferjob.h
	core/networkpackage.h
	kded/CMakeLists.txt
	plugins/share/shareplugin.cpp
	plugins/telephony/telephonyplugin.cpp
2014-11-11 21:40:54 -08:00
Albert Vaca
7d3fe6239c Updating .notifyrc file 2014-11-09 20:36:45 -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
Àlex Fiestas
dbea3171bd Make kdeconnect core compile without KDELibs4Support
This meant to add a lot of dependencies to each plugin since we had
KDELibs4support as PUBLIC link meaning that anything linking against
kdeconnectcore was linking at the same time to mostly all frameworks.

Now each plugin has more or less its dependencies in the CMake some
still depend on KDELibs4Support.

For the mousepad plugin I needed to add a fixX11.h file that basically
undefines/defines again some stuff xlib has that conflcits with normal
C++ and Qt.

Before it was not conflicting because some lib within KDELibs4Support
was including this file, but now we have to do it ourselves.
2014-09-22 02:40:51 +02:00
Àlex Fiestas
2328738beb Port core from KStandardDirs to QStandardPaths
Tested, both code return the same thing.
2014-09-22 01:23:27 +02:00
Àlex Fiestas
d971269bd5 Remove kdebugnamespace completely and replace by core_debug
In those places that belong to "core" we use core_debug, in any other
place we have added custom logging categories so we use those instead.
2014-09-22 00:59:34 +02:00
Àlex Fiestas
df0c262998 Port core to qCDebug
I had to keep the old kDebug code in kdebugnamespace because other parts
of the code are using it. Will be removed as soon as all code using it
is ported as well.
2014-09-21 23:54:27 +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