Albert Vaca
6792b45fae
Adapt to new API in master
2017-05-24 23:54:58 +02:00
Saikrishna Arcot
d711547ab5
Add initial Bluetooth backend implementation.
...
KDE Connect runs, and the bluetooth service gets published in the SDP
(service discovery protocol), which other devices use to determine what
services are available.
The getPairedDevices() method in the link provider class uses D-Bus to get
the list of paired devices, since Qt doesn't have a method giving that
information. As a result, that part of the code only works on Linux.
REVIEW: 122174
2017-05-24 23:54:58 +02:00
Nicolas Fella
f0010763e7
Fixed filetransferjob broken after adding icons.
...
The plasmoid didn't know the transfer ended.
REVIEW: 130116
2017-05-07 20:16:19 +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
34d419756b
Merge branch '1.x'
2017-04-13 21:23:29 +02:00
Albert Vaca
a4f2a60d47
Do not use the default proxy.
...
Qt uses the system proxy if set up, explicitly disable it.
BUG: 376187
2017-03-06 22:02:08 +01:00
Albert Vaca
7cc39aada8
Added an option to the cli to return your own device id
2017-02-24 22:37:22 +01:00
Aleix Pol
f65392ca6b
Expose pair requests on the KCM
2017-02-20 21:00:26 +01:00
Albert Vaca
b75d52fe31
Do not use a location under home as mount point
...
Try to use XDG_RUNTIME_DIR and fall back to /tmp.
https://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html
2017-02-18 16:14:51 +01:00
Albert Vaca
1b308a547d
Fix warning because of missing enum value in switch
2017-02-18 15:32:55 +01:00
Albert Vaca
2c1c8525e5
Now a 100% more compiling
2017-02-14 23:03:59 +01:00
Albert Vaca
25e0cea373
Make error message reflect the actual ports we use
2017-02-14 22:52:37 +01:00
Albert Vaca
f0a96a3ab9
Do not error if we try to request pair again
2017-02-10 00:54:03 +01:00
Albert Vaca
7e63a90da6
Merge branch '1.x'
...
# Conflicts:
# app/org.kde.kdeconnect.app.desktop
# plugins/kdeconnect.notifyrc
# plugins/remotecommands/kdeconnect_remotecommands.json
# plugins/sendnotifications/kdeconnect_sendnotifications_config.desktop
2017-02-05 16:12:25 +01:00
Albert Vaca
12a3027be6
Wrong order, condition was always false.
2017-02-05 16:08:20 +01:00
Albert Vaca
768fdb443f
Fixed sftp plugin
...
Scriptable slots show be exposed on dbus
2017-01-27 01:39:03 +01:00
Aleix Pol
6c77bc5a9f
Debug pairing handlers
...
Make sure we don't emit if it doesn't actually change
Make sure if it changed when we react to a pairing
Pair-programmed with Albert Vaca
2017-01-25 01:18:14 +01:00
Aleix Pol
5d088041c0
Don't leak pairing handlers
2017-01-25 01:16:07 +01:00
Aleix Pol
ea41d3786e
Expose pairing state for devices
...
Will allow to have information about whether we're pairing, mostly for
better GUI.
Pair-programmed with Albert Vaca
2017-01-25 00:22:22 +01:00
Albert Vaca
461874f4a5
Comment got displaced
2017-01-14 02:50:25 +01:00
Aleix Pol
c038c41eec
Remove unused enum
2017-01-13 17:48:37 +01:00
Holger Kaelberer
8c9253440d
Export scriptable plugin signals
...
A plugin should have the possibility to define signals to be exposed
on dbus.
REVIEW: 129811
2017-01-13 08:05:35 +01:00
Aleix Pol
3734d6ce4d
Reduce API exposed through dbus
...
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
2017-01-10 18:15:01 +01:00
Holger Kaelberer
a75e0ba031
Make pairing notifications more persistent
...
Notifications are not persistent, and once gone there is no
way to accept the request. Clicking the notification in the
notification history does nothing in plasma and gnome.
There make them persistent and close them after the pairing timeout,
after which they are no longer useful.
BUG: https://phabricator.kde.org/T5002
2017-01-05 19:11:55 +01:00
Aleix Pol
e72bbfe1d2
Remove dash in icon
...
We use it to display the state and we're providing them as fallback,
they will always be available.
Otherwise, on some platform this clashes with the icon engine falling
back to less specific version of the icon (i.e. smartphone instead of
smartphone-connected).
https://specifications.freedesktop.org/icon-naming-spec/icon-naming-spec-latest.html
Reviewed by Albert Vaca
2016-11-28 16:27:34 +01:00
Albert Vaca
3df5e0dc11
Define the debug category in core_debug.cpp
2016-11-28 15:57:58 +01:00
Albert Vaca
6a2a0b1c76
Merge branch '1.x'
...
# Conflicts:
# plugins/mpriscontrol/mpriscontrolplugin.cpp
# plugins/sendnotifications/kdeconnect_sendnotifications.json
2016-11-26 16:40:24 +01:00
Albert Vaca
f41883f2f3
Known size, reserve.
2016-11-26 16:36:34 +01:00
Albert Vaca
b7bb8d94c5
Fixed QStrings not being passed by ref
2016-11-26 16:36:34 +01:00
Albert Vaca
beeae63086
Missing Q_OBJECT macro
2016-11-26 16:36:34 +01:00
Albert Vaca
1a2b227dff
Q_GLOBAL_STATIC is unnecessary on basic data types.
2016-11-26 16:21:30 +01:00
Albert Vaca
60331ccbf1
Clazy says all this QStringLiteral and QLatin1String were missing/wrong
2016-11-26 16:21:29 +01:00
Albert Vaca
a1340c8042
Fixed old style connects with clazy
2016-11-26 15:14:19 +01:00
Albert Vaca
1a1f94fd94
Fixed old style connects with clazy
2016-11-26 15:12:38 +01:00
Albert Vaca
33b5e556e6
Merge branch '1.x'
2016-11-24 15:12:06 +01:00
Albert Vaca
7638683c85
Print a qCritical in addition to showing a notification
2016-11-24 15:11:30 +01:00
Albert Vaca
3d0f7c3fcb
Changed signal reachableStatusChanged() to reachableChanged(bool)
...
And proxied it on the C++ dbus interface.
2016-11-23 17:24:35 +01:00
Albert Vaca
f845b33392
Fixed bug on Windows
2016-11-20 04:25:11 +01:00
Albert Vaca
f901655ef4
Warning
2016-11-16 21:37:07 +01:00
Albert Vaca
f61dde5bbb
Use different files instead of different groups
2016-09-19 13:35:03 +02:00
Kai Uwe Broulik
6f7c419baa
Merge branch '1.x'
2016-09-10 22:53:37 +02:00
Kai Uwe Broulik
77ad9336b6
[FileTransferJob] Fix division by null and use elapsed timer
...
When sending multiple files from my phone to my PC, kdeconnectd usually received a SIGFPE.
To get the transfer speed it divides the number of bytes received by the elapsed time which can be zero.
Also, since we're only interested in the time that has elapsed, use QElapsedTimer,
which is exactly for this. QTime::elapsed() also needs to take into account potentially
ocurred timezone or DST changes.
REVIEW: 128861
2016-09-10 22:52:03 +02:00
Albert Vaca
b585e4d48a
Don't return an empty list of supported plugins
...
If we don't know it yet return them all.
2016-09-06 10:53:19 +02:00
Albert Vaca
5ad007a981
Merge branch '1.x'
2016-08-29 20:46:48 +02:00
Thmoas Posch
a759cdf678
Device::encryptionInfo returned the entire certificate instead of the hash
...
BUG: 367897
2016-08-29 20:41:06 +02:00
Albert Vaca
c9cfac7253
Remove debug logs
2016-08-29 11:00:35 +02:00
Albert Vaca
6281b9c232
Make it compile with Qt < 5.6
2016-08-28 11:19:00 +02:00
Albert Vaca
54801aac3b
Use a new config group so we don't conflict with older versions' config
2016-08-25 18:06:01 +02:00
Aleix Pol
d9e7f308c2
Show the announcedName in the qml app
...
Makes it possible to display it and modify it
Introduces a DBusProperty component that can be used if we don't want
to go through the QtDBus property generation hell.
2016-08-21 19:38:15 +02:00
Aleix Pol
f765e9c0a8
Actually compare the old plugin map
...
We were comparing to the result after removing all the actually used
plugins
2016-08-21 13:21:40 +02:00
Aleix Pol
0774020899
Merge branch '1.0' into 1.x
2016-08-14 21:15:13 +02:00
Aleix Pol
426bf2a105
Merge branch '1.0'
2016-08-08 19:39:21 +02:00
Aleix Pol
91f952f5f1
Fix test
...
Use the right port
Store the port in a public variable, so it can be used from the test.
2016-08-08 19:38:58 +02:00
Albert Vaca
50496a3442
Reverted change that introduced a crash.
...
If there are ssl erros with unpaired devices, link was null.
This reverts commit 7da30ddbb1
.
2016-08-03 22:01:04 +02:00
Albert Vaca
2cdf7d5499
Reduced logging
2016-07-12 12:49:21 +02:00
Albert Vaca
f41877fbec
Disabled removing links when exiting discovery mode because it was broken.
...
If both devices are in "discovery mode" (ie: both want to keep links
established) and the last one to create the link goes out of discovery
mode, it will close the link when it shouldn't (because the other end still
was "using" it to display it to the user).
2016-07-12 12:38:40 +02:00
Albert Vaca
7da30ddbb1
Use the pairing handler instead of accessing the device directly on error
2016-07-12 12:34:56 +02:00
Albert Vaca
0b3de33d74
Minor
2016-07-12 12:33:57 +02:00
Albert Vaca
4e8a325479
Do not specify type for struct
2016-07-12 12:32:58 +02:00
Albert Vaca
6248f03256
Made a QString const refrence.
2016-07-07 01:09:07 +02:00
Albert Vaca
47c78427cb
Removed outdated comment
2016-07-07 01:07:51 +02:00
Aleix Pol
81634303b2
Make capabilities static
...
As discussed with Albert, move the population of capabilities into the
identity package, making them static along the execution of the link.
When we receive the identityPackage, we collect the plugins we can use with
the device and stick to those. This should simplify the implementation and
remove the possibility to lose packages if packages are received before the
capabilities are processed in the former approach.
REVIEW: 128386
2016-07-06 17:37:22 +02:00
Aleix Pol
afdac88885
Proper i18n use
2016-07-06 16:41:38 +02:00
Aleix Pol
8d7d820ef4
Naming consistency. Capabilities is the correct name
2016-07-06 15:55:04 +02:00
Aleix Pol
0e76082fc6
Remove commented code
...
Used to be used when we encrypted and decrypted using QCA. Now it's done
by the device link.
2016-07-06 00:59:37 +02:00
Albert Vaca
5933c6810c
More unused includes cleanup
2016-07-05 14:27:53 +02:00
Albert Vaca
7c0fbbc034
Unused include cleanup
2016-07-05 14:13:48 +02:00
Aleix Pol
0d6a7bafcf
Remove unused variable
2016-07-05 13:14:55 +02:00
Aleix Pol
5a265a55de
Start consuming right away, if there's data available from the start
...
Fixes sendfiletest
2016-07-05 13:14:47 +02:00
Albert Vaca
963a15bd08
Fixed crash where a device was destroyed but links tried to use it.
2016-07-05 12:42:57 +02:00
Albert Vaca
9c736583e2
Use the actual connection origin, so we don't keep all connections open.
2016-07-05 12:42:39 +02:00
Aleix Pol
2b451097eb
Make sure errors get reported
2016-07-05 01:00:02 +02:00
Albert Vaca
385bf77480
Fixed bug which didn't allow to pair a new device
2016-07-04 19:52:37 +02:00
Aleix Pol
359194c2ed
Use initializers to construct it
2016-07-04 19:18:13 +02:00
Albert Vaca
04713de718
Remove qdebugs
2016-06-26 15:48:37 +02:00
Aleix Pol
ef98fb4587
Fix file transfer under SSL
...
Introduces a big fat buffer :(
Actually test the trasfers :)
Takes QSslSocket causistic into account, for some reason QNAM refuses to
mark as finished when the QSslSocket (through QIODevice) closes.
It would be good to look into dropping the QBuffer, doing so with the test
in place will help.
2016-06-22 17:49:45 +02:00
Aleix Pol
86b086e392
Make warnings actual warnings
2016-06-22 16:31:01 +02:00
Albert Vaca
01139d31d1
De-duplicated socket SSL configuration code
2016-06-22 14:27:09 +02:00
Aleix Pol
f011191eca
Fix few issues in FileTransferJob
...
Handle errors from different endpoints
Don't ::startTransfer when we find a colliding file
2016-06-22 12:42:51 +02:00
Aleix Pol
4cb50d69d8
Fix some issues in the downloadjob and its test
...
Test on KJob abstraction, this way we can check if it has an error when it
breaks.
Handle errors in a different branch of the code.
2016-06-22 12:40:14 +02: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
aa41b40ab5
Changed magic number by constant
2016-06-21 18:42:53 +02:00
Albert Vaca
e880e14ed5
Preffer Q_FOREACH to foreach
2016-06-21 14:50:17 +02:00
Albert Vaca
5abd081b85
Changed port so we don't conflict with Houdini
2016-06-21 14:42:32 +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
596e4484f4
Clean up use of virtual and override keywords
...
Only use virtual when actually virtual, to override just use override.
2016-06-20 19:22:29 +02:00
Albert Vaca
cc0fdacbf5
Fixed compilation on Windows
2016-06-20 02:31:55 +02:00
Albert Vaca
c4d7c2f39b
Improved comments
2016-06-17 02:00:23 +02:00
Albert Vaca
e379fcd69d
Destroying a socket should not destroy the link.
...
Also, sockets can be destroyed as soon as the socketreader is deleted.
2016-06-17 02:00:23 +02:00
Aleix Pol
83a56c47e9
Drop NetworkPackage QObject heritage
...
It was only used for introspection and we can use Q_GADGET for that.
Make the NetworkPackage objects much lighter.
REVIEW: 124166
2016-06-16 20:33:13 +02:00
Albert Vaca
91c23dfdea
Do not compare against the current version of the protocol
2016-06-16 19:48:23 +02:00
Albert Vaca
cb0fd1fe20
Removed a case where we would still add a link on old protocol versions
2016-06-15 20:38:57 +02:00
Aleix Pol
b9be1e17d1
Specify for which device we're not delivering the packages
2016-06-12 20:16:58 +02:00
Aleix Pol
5715926c5c
Export the symbols needed by the tests
2016-06-10 15:07:33 +02:00
Albert Vaca
3177143439
Fixed build on windows
2016-06-09 02:36:02 +02:00
Albert Vaca
1c315af108
Revert "Fix file transfers"
...
This reverts commit 252ea4ba20
.
2016-06-07 00:28:52 +02:00
Aleix Pol
c7429b56b7
In the CLI interface, make it possible to refer a device by name
...
Only works with trusted devices
2016-06-06 01:21:37 +02:00
Aleix Pol
751bd5849b
small style changes
2016-06-06 01:21:37 +02:00
Frederik Schwarzer
a594324d4f
Fix message wording.
2016-06-03 21:33:25 +02:00
Aleix Pol
252ea4ba20
Fix file transfers
2016-06-03 16:38:04 +02:00
Aleix Pol
8736d2559e
Notify if a package is being discarded
2016-06-03 15:51:05 +02:00
Aleix Pol
fd19426756
Make it possible to put NetworkPackage right into qDebug
2016-06-03 15:50:46 +02:00
Albert Vaca
7a0bb09353
Make sure we don't broadcast more than once at the same time.
...
Race conditions might happen because two links will be created.
2016-06-02 12:18:51 +02:00
Albert Vaca
7a67274a18
Fixed memory leak.
2016-06-02 12:17:07 +02:00
Albert Vaca
0c48c00fa7
Added debug function to print a stack trace
2016-06-01 12:43:34 +02:00
Aleix Pol
70d447f58f
better debug information
2016-06-01 01:14:30 +02:00
Aleix Pol
702fbd09af
If interfaces are required is up to the plugin
2016-05-31 20:46:48 +02:00
Aleix Pol
16eccd46d3
Restore having plugins without any capabilities
...
These won't need to be matched by the other device
2016-05-31 20:16:25 +02:00
Albert Vaca
4383a42703
Changed the way we detect if capabilities are supported
2016-05-31 20:10:35 +02:00
Albert Vaca
5654300249
Removed logs
2016-05-31 20:09:52 +02:00
Aleix Pol
9aa794b0da
Merge branch 'master' into sslrefactor
2016-05-31 17:29:06 +02:00
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
Vineet Garg
b96227ae75
Changed protocol version to TLS 1.0, as TLS 1.2 not supported on many Android device
...
Choosing cipher suites manually, same as of Android
2016-04-30 20:39:34 +05:30
David Kahles
abc5fa3c56
Remove second UDP socket in LanLinkProvider
...
We don't need two sockets for reading and writing.
REVIEW: 127769
2016-04-28 00:19:20 +02:00
Albert Vaca
29d3f9aa7a
Expose protocol version
2016-04-14 18:52:31 -07: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
Albert Vaca
78d4ba2106
Cleanup
2016-03-08 07:29:34 -08:00
Albert Vaca
ff9775e1c9
Better logging of what's going on
2016-03-07 16:01:44 -08:00
Albert Vaca
8f9fde8f40
Fixed crash when pairing old Android apps.
2016-03-02 16:38:03 -08:00
Albert Vaca
ebd429629a
Fixed unpairs never being sent
2016-03-02 16:17:38 -08:00
Albert Vaca
ea812f1101
Attribute not needed
2016-03-02 15:50:06 -08:00
Albert Vaca
b1ef3f9fc9
Use a different key for settings, so we don't clash with older versions.
2016-03-02 15:36:45 -08:00
Albert Vaca
90d2b0ad69
Changing TLS version to what is used in LanLinkProvider.
...
Android<16 doesn't support TLS>1.0
2016-02-12 09:02:56 -08:00
Albert Vaca
6cde0271fb
Removed loopbackpairinghandler
2016-02-12 07:59:12 -08:00
Albert Vaca
aa4150f0c9
Moved ConnectionStarted from DeviceLink to LanDeviceLink
2016-01-10 07:12:13 -08:00
Albert Vaca
2aca5ca11e
Added error message when trying to pair older devices
2015-12-17 09:24:34 -08:00
Aleix Pol
8a019ccddf
Fix assert
2015-12-17 17:58:33 +01:00
Albert Vaca
7ed012e4a5
Fixed broadcast
2015-12-17 08:59:08 -08:00
Albert Vaca
f5404ea11b
Removed more references to publicKey
2015-12-17 08:22:18 -08:00
Albert Vaca
918bb82ffa
Do not store certificate and key in landevicelink
...
The socket already stores the certificate, and the public key is only used
in the sftp plugin, so it should be moved there or dropped.
2015-12-17 07:46:13 -08:00
Albert Vaca
4c84499e6a
Don't addLink twice for the same link
2015-12-17 07:44:29 -08:00
Albert Vaca
dd7d4093ed
Removed sendPackageEncrypted from DeviceLink
2015-12-17 07:43:52 -08:00
Albert Vaca
d37830b429
Simplified pairing logic
2015-12-17 06:54:29 -08:00
Albert Vaca
10b4ca00fb
Set certificate in outgoing pairing packet
2015-12-17 06:53:57 -08:00
Albert Vaca
af43a21864
Propagate pairingError
2015-12-17 06:53:29 -08:00
Albert Vaca
1848e96a91
Fixed old signal name
2015-12-17 05:54:37 -08:00
Albert Vaca
49a24c258b
Fixed crash
2015-12-17 05:54:24 -08:00
Albert Vaca
813c9fedb3
Calling setDeviceLink in pairing handler is not required anymore
...
Since we re-use the same device link object forever now
2015-12-17 04:41:53 -08:00
Albert Vaca
ddca4d6d63
Store and restore certificate and public key in lan link
2015-12-17 04:41:10 -08:00
Albert Vaca
945da8a84f
Removed encrypted package type define
2015-12-10 19:06:55 -08:00
Albert Vaca
79a8103120
Added some asserts
2015-12-10 19:06:55 -08:00
Albert Vaca
2e4c3762e9
Re-use landevicelink objects instead of re-creating one each time
2015-12-10 17:11:48 -08:00
Albert Vaca
77facdbcfd
Merge branch 'master' into sslrefactor
2015-12-07 03:38:06 -08:00
Albert Vaca
2e4ce90656
Commented out old encryption functions
2015-12-07 03:34:41 -08:00
Aleix Pol
d69cdce4c1
Make sure incoming Lan pair packages are processed by the LanPairHandler
2015-12-06 02:12:29 +01:00
Aleix Pol
7041c72aed
Fix connect
2015-12-06 02:11:50 +01:00
Aleix Pol
e10b2e80c9
Propagate pairing errors
2015-12-06 01:51:53 +01:00
Aleix Pol
90c8f588bc
Only respond to local broadcasts
2015-12-06 01:19:55 +01:00
Aleix Pol
69d899ed48
Only broadcast when the newly reported configuration is actually active
2015-12-06 01:19:20 +01:00
Aleix Pol
97d97ffa1b
Fix connect
2015-12-06 01:18:27 +01:00
Holger Kaelberer
f072a0c615
notifications: allow to configure how to sync desktop notifications
...
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.
2015-12-05 23:23:22 +01:00
Albert Vaca
03926cc3bf
WIPx4
2015-12-02 11:04:35 -08:00
Albert Vaca
af5be6e9e0
Added a test mode to lanlinkprovider
...
Should fix tests when you run them on networks with real kdeconnects
running.
2015-12-02 09:49:00 -08:00
Albert Vaca
cf6cbd2925
WIPx3!
2015-12-01 10:45:14 -08:00
Albert Vaca
82bc73dd9b
WIPx2
2015-12-01 07:25:34 -08:00
Albert Vaca
16f9af908a
WIP
2015-11-30 10:36:01 -08:00
Albert Vaca
30d2dd991b
Merge branch 'master' into sslmaster
2015-11-30 03:40:07 -08:00
Aleix Pol
0bca50af93
Merge branch '0.9'
2015-10-19 17:48:13 +02:00
Albert Vaca
d2b4a6f214
Indentation
2015-10-18 21:51:51 -07:00
Albert Vaca
e2f068b286
Fixed a memory leak making the DownloadJob destroy itself on disconnect
...
There are still some code paths where it doesn't get destroyed though,
like when the device gets unreachable (and the download socket doesn't
close for some reason).
2015-10-18 21:51:51 -07:00
Albert Vaca
229e3aa070
Removed unused class
2015-10-18 19:42:40 -07:00
Albert Vaca
4574aa3639
Make the origin also contain the file name, not only the device name
2015-10-17 13:32:57 -07:00
Vineet Garg
646196b3eb
Added loopback pairing handler
2015-09-14 16:36:04 +05:30
Vineet Garg
73a80f0296
Fixed Lan Link Provider Test
...
Pairing timer was started even when pair package sending is failed, fixed that
2015-09-13 01:45:19 +05:30
David Edmundson
97034e3bbd
Don't cleanup devices if pairing
2015-09-12 22:03:56 +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
Albert Vaca
4230f4fb44
Added a signal so plugins know when we update the config
2015-09-12 04:50:20 -07:00
Aleix Pol
f7423c6ad6
Better use of error information
2015-09-12 09:47:47 +02:00
Aleix Pol
4730022810
Pass arguments as const-reference
2015-09-12 09:45:59 +02:00
Aleix Pol
5e0a7a34b9
Merge branch 'master' into ssl
...
# Conflicts:
# cli/kdeconnect-cli.cpp
# core/backends/lan/landevicelink.cpp
# core/backends/lan/landevicelink.h
# core/backends/lan/lanlinkprovider.cpp
# core/backends/lan/lanlinkprovider.h
# core/backends/lan/socketlinereader.h
# core/backends/lan/uploadjob.cpp
# core/backends/lan/uploadjob.h
# core/backends/loopback/loopbackdevicelink.h
# core/daemon.cpp
# core/daemon.h
# core/device.cpp
# core/device.h
2015-09-11 17:25:23 +02:00
Aleix Pol
b62349cae6
Merge branch 'stable'
2015-09-11 17:03:57 +02:00
Aleix Pol
9fedfcdb3d
Notify QNAM about the file received size
2015-09-11 17:03:11 +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
Aleix Pol
ca4a81b8e8
Merge branch 'stable'
2015-09-11 12:24:15 +02:00
Aleix Pol
2b8a54357e
Remove redundant copy constructor
2015-09-11 12:22:59 +02:00
Aleix Pol
c62fac0bcf
Don't join hte interfaces in 1 string
...
Let NetworkPackage do the serialization
2015-09-11 12:14:19 +02:00
Albert Vaca
4c98e2e7b3
Less verbose output
2015-09-11 02:29:57 -07:00
Albert Vaca
b07e442b97
Less verbose plugin loader
2015-09-11 01:12:34 -07:00
Albert Vaca
4df14d1c7d
Fixed plugins without incoming nor outgoing packages being disabled
2015-09-11 01:12:22 -07:00
Patrick von Reth
da5c9bd30e
Fix compilation on Windows.
2015-09-10 15:51:38 +02:00
Aleix Pol
4cccb7344a
++verbosity on error
2015-09-09 20:12:16 +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
32daa4e51f
Fix misbehaviour
...
Delete devices, not links
2015-09-09 13:42:28 +02:00
Aleix Pol
77e92262fe
Fix build
2015-09-09 13:03:08 +02:00
Aleix Pol
26b0ec8b98
Make sure we don't disconnect from discovering remotes
...
Otherwise it's hard to let other devices connect to us, without having both
devices in discoverability mode.
Reviewed by Albert Vaca
2015-09-09 13:01:38 +02: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
Aleix Pol
817fcbc9d6
Merge branch 'stable'
2015-09-08 10:51:41 +02:00
Aleix Pol
d58f6314fe
run Clang Modernize
...
Minus the auto change
2015-09-08 10:47:37 +02: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
774893d3f9
cleanup
...
make attribute const
construct when initializing
no need to have all methods as slots
2015-09-08 09:22:31 +02:00
Aleix Pol
e1be5319f5
Only broadcast again if the network configuration actually changes
...
Reviewed Albert Vaca
2015-09-08 09:05:06 +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
61f357a512
Fix regression
...
Reviewed by Albert Vaca
2015-09-07 17:12:28 +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
Vineet Garg
78e9c08732
Merge branch 'master' into ssl
...
Conflicts:
core/backends/lan/socketlinereader.h
core/backends/lan/uploadjob.h
core/networkpackage.h
2015-08-25 03:43:41 +05:30
Vineet Garg
17da38e5ba
Explicity using TLSv1 because using AnyProtocol causes a default TLSv1.2 handshake which not supported on older android version
...
Was using QueryPeer instead of VerifyPeer of isDeviceTrusted of connected slot
2015-08-25 01:14:24 +05:30
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
Vineet Garg
44c0ec1c78
If remote device certificate is changes, in sslError due to simulataneous multiple connections, unpair was called on null pointer
2015-08-17 20:04:41 +05:30
Vineet Garg
eff84a49d4
We support any protocol instead of TLSv1.2
2015-08-16 21:19:56 +05:30
Vineet Garg
9bc93b6337
We generate certificate from present date -1 year to present date + 10 year, this avoids the case where certificate is not valid due to difference of time zones
2015-08-14 17:50:58 +05:30
Vineet Garg
75bd15ed65
Added default value while checking for link name in pairing handler, this provides backward compatibility
2015-08-14 17:33:08 +05:30
Vineet Garg
6fe1399a18
Fixed minor issues in pairing handler
2015-08-13 14:56:28 +05:30
Vineet Garg
c5a399b94b
Fixed code identation issue
2015-08-12 23:49:15 +05:30
Vineet Garg
6acb4204a2
Added KdeConnectConfigTest, TestSslSocketLineReader, LanLinkProviderTest
2015-08-12 23:42:27 +05:30
Vineet Garg
cf3d37b504
Fixed issue pointed out on RR
...
Fixed some pairing handler issues
2015-08-11 09:04:02 +05:30
Vineet Garg
2824e73617
Pairing handler implemented
2015-07-27 20:58:58 +05:30
Vineet Garg
27515546a0
Now per device per link type pairing handlers are there
2015-07-25 17:15:19 +05:30
Vineet Garg
1b430db4a3
Fixed indentation
2015-07-19 21:59:27 +05:30
Vineet Garg
eda2563d03
Fixed encryption info in cli
2015-07-19 20:25:28 +05:30
Vineet Garg
20e46418ba
Encryption info in cli
2015-07-18 18:54:10 +05:30
Vineet Garg
e6da860fb7
Fixed issues pointed out on CR
2015-07-14 17:34:04 +05:30
Vineet Garg
781adac15b
Removed whitespace
2015-07-13 19:55:22 +05:30
Vineet Garg
1ba68150a7
Made server like normal QTcpServer
2015-07-10 03:57:27 +05:30
Vineet Garg
7c777e6279
Implemented pairing handler interface
2015-07-10 03:21:08 +05:30
Vineet Garg
e7617f3da9
Use Q_DECL_OVERRIDE in server
2015-07-08 02:45:59 +05:30
Vineet Garg
8b0f06e484
Code cleanup, fixed socket deletelater issue
2015-07-08 00:22:10 +05:30
Vineet Garg
b6b5257ba4
Added ssl support in download job
2015-07-06 03:19:58 +05:30
Vineet Garg
0c110e4392
Added SSL encryption in file upload
...
DeviceId is used for peerVerifyName
2015-07-06 02:35:26 +05:30
Vineet Garg
148a713176
Initial working implementation of ssl
2015-07-05 18:53:53 +05:30
Aleix Pol
7d6912c11f
Revert "Drop NetworkPackage QObject heritage"
...
It makes us depend on unreleased Qt 5.5. Will un-revert it
when Qt 5.5 is a dependency we can take.
CCMAIL: kdeconnect@kde.org
This reverts commit 1a2f569a47
.
2015-06-27 20:54:07 +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
Aleix Pol
1a2f569a47
Drop NetworkPackage QObject heritage
...
It was only used for introspection and we can use Q_GADGET for that.
Make the NetworkPackage objects much lighter.
REVIEW: 124166
2015-06-24 20:57:17 +02:00
Albert Vaca
77256e1932
Devices where not removed if they were unpaired after going offline
2015-06-21 19:40:05 -07:00
Albert Vaca
08938689c5
Emit less redundant events
2015-06-21 19:39:04 -07: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
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
Albert Vaca
2dab79bc3f
Fixed warning.
2015-06-15 09:03:26 -07:00
Albert Vaca
09557b8a14
Moved network change detection from daemon to lanlink
2015-06-14 13:54:52 -07:00
Aleix Pol
cee2c6b057
Remove unused declaration
2015-06-13 01:27:16 +02: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
11996f56ca
Drop dependency of KIO from kdeconnectcore
...
Use QNetworkAccessManager for storing the files we receive instead of
directly KIO, then provide the KIO-based QNetworkAccessManager from the
daemon. This way we'll still get the KIO network-transparency, but the
library only depenends on QtNetwork, which will be easier to get in some
platforms.
After this change, we only depend on KConfig, KI18n and KCoreAddons, which
are tier1 and really easy to work with on any platform.
REVIEW: 123325
2015-05-05 01:07:29 +02:00
Àlex Fiestas
ba4c87abc1
Consume all pendingDatagrams from udpServer
...
This fixes a bug where receiving broadcast messages would stop working
in case 2 messages have been received at the same time.
The problem is that readReady will only emit once per batch of datagrams
received, in case we receive 2 datagrams but only consume 1, readReady
will never be emitted again.
2015-05-05 01:04:50 +02:00
Albert Vaca
2f7e6f7de2
Fixed compilation warnings in clang (one of them is actually an issue!)
2015-04-19 22:50:12 -07:00
Aleix Pol
3caf5e7908
Move some find_package dependencies to the children directories as agreed
2015-04-10 17:48:48 +02:00
Aleix Pol
48cb087ec8
Remove unneeded KService include
2015-04-10 17:47:54 +02:00
Ashish Bansal
c8eb5e3074
Changed KF5 5.8 to 5.9
2015-04-09 16:22:56 +05:30
Albert Vaca
07773b8141
disconnected is specific to Sockets, abouTtoClose is generic to IODevice
2015-04-04 19:04:11 -07:00
Albert Vaca
fbbaa854b2
Const
2015-04-04 19:03:24 -07:00
Albert Vaca
dacaee6629
Fixed daemon sending lots of identity packets at startup
...
The way we were detecting the active network interfaces caused to detect
all of them at the application startup.
2015-04-04 16:32:15 -07:00
Albert Vaca
6c6f2b1a03
Fixed uninitialized members
2015-04-04 10:17:08 -07:00
Aleix Pol
c9700de391
cleanup
...
Don't store into a const-reference
Fix typo
2015-04-02 00:02:09 +02:00
Aleix Pol
9ab7e2356e
Use QMetaObject for introspecting a QObject
...
It will be faster and will provide better error messages.
REVIEW: 123214
2015-04-01 23:38:32 +02:00
Aleix Pol
80d77fa9b6
Fix crash when incoming FileTransfer
...
Otherwise qobject2qvairant complains that a property is missing.
REVIEW: 123214
2015-04-01 23:37:25 +02:00
Yuri Chornoivan
0452839893
Add missing spaces
2015-03-25 19:46:29 +02: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
Albert Vaca
a77a3dc0d5
Fixed broken compilation :/
...
BUG: 345460
2015-03-23 20:44:09 -07:00
Albert Vaca
a5e5b10d9a
Code styling
2015-03-21 23:12:04 -07:00
Albert Vaca
a649bb5668
Added some error messages when ports are not available
2015-03-21 23:11:50 -07:00
Albert Vaca
e20c3c907d
Fixed config memory leak.
2015-03-21 22:21:34 -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
Ashish Bansal
6b4d5be618
Used QSettings instead of KConfig in KdeConnectSettings
...
REVIEW: 122936
2015-03-15 19:31:01 -07: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
856bd1e346
kDebug -> qCDebug
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
63bb2bda85
Fix build
...
We require KF5 5.9 but the frameworks haven't updated the version
name, so keep the last version for sanity.
2015-03-14 14:33:12 +01:00
Albert Vaca
02a2990720
Added a baseclass for the plugins' KCMs and a class for the plugins' config
...
Centralizing the plugins' config will ensure that all the plugins store it
the same way (ie: not in random files scattered around, like until now).
The base KCM class, together with the already existing base plugin class,
will give easy access to all the plugins to this centralized config. Also,
now the settings are not shared across devices (that is: every device can
have different config for a same plugin).
Note: This commit requires KCMUtils 5.9
REVIEW: 122927
2015-03-13 21:22:21 -07:00
Albert Vaca
a3decd542c
Includes cleanup
2015-03-13 21:20:58 -07:00
Albert Vaca
549f4c0815
KdeConnectConfig now displays initialization errors as notification
...
NOTE: This patch requires KNotifications 5.9
2015-03-13 21:20:58 -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
9c45c5469c
Prefer to specify the property
...
Tie the change signal to the getter, makes the interface easier to read
and opens the possibility to adopt certain optimizations in the Qt side.
2015-03-14 04:09:14 +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
Jonathan Riddell
ce2bb1e433
don't install library dev files until there is an API/ABI policy
2015-03-12 12:42:10 +01:00
Aleix Pol
ede7dd0e84
Drop KIOWidgets dependency from KDEConnectCore
...
Removes the usage of RenameDialog by moving the functionality away. In
fact, what it does is make the share dialog try to come up with a different
name rather than asking the user. It's a quite common procedure as makes
the interaction simpler (for example, Chromium and Kamoso work like that).
REVIEW: 122813
2015-03-09 13:22:10 +01:00
Aleix Pol
b06038e60e
Prefer the usage of QUrl::toLocalFile to QUrl::path
...
QUrl::toLocalFile is portable.
2015-03-04 22:33:54 +01:00
Aleix Pol
463aa0cbf9
Prefer using QCoreApplication to using QApplication
...
Just checking if we can get rid of QtWidgets dependency on core,
eventually
2015-03-04 22:29:04 +01:00
Aleix Pol
2a70fabaf0
Remove unneeded dependency
2015-03-04 22:20:44 +01:00
Albert Vaca
b0cc45b52a
You can now change your name (the one seen by other devices on the network)
2015-03-01 21:23:05 -08: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
aaa034b9d6
Removed reference to KDED
2015-02-23 22:14:22 -08:00
Albert Vaca
c50f1a22ae
Fixed rejectPairing being always called
2015-02-23 21:43:46 -08:00
Albert Vaca
c013966f4b
Version number is now set in a single place
2015-02-04 23:52:07 -08:00
Lamarque V. Souza
00ef52227e
Fixes file transfer for Samsung Galaxy S2 with Jelly Bean 4.1.2
...
by setting destination QUrl's scheme if it lacks one.
REVIEW: 122221
2015-01-23 14:11:48 -02: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
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
Heiko Becker
260301155f
Use co-installable qca-qt5 version
...
If both qt4 and qt5 versions of qca are present the build of the
frameworks branch tries to find Qt4 pulled in by qca and thus fails.
REVIEW: 122054
2015-01-15 21:35:30 -08:00
Albert Vaca
c7c1974ea9
Merge branch 'master' into frameworks
...
Conflicts:
core/backends/lan/lanlinkprovider.cpp
plugins/ping/pingplugin.h
plugins/telephony/telephonyplugin.cpp
2015-01-10 20:14:01 -08:00
Albert Vaca
4b6aa135e3
Fixing memory leaks in LanDeviceLinkProvider and LanDeviceLink
2015-01-06 21:48:25 -08:00
Pramod Dematagoda
6926fca598
Adjust socket parameters to detect device disconnection faster.
...
REVIEW: 121711
2014-12-29 23:34:03 -08:00
Albert Vaca
0271aa9511
Ping plugin packet type define shouldn't be in core.
2014-12-21 19:35:35 -08:00