summaryrefslogtreecommitdiffstats
path: root/src/bluetooth/bluez/bluez5_helper_p.h
Commit message (Collapse)AuthorAgeFilesLines
* Fix up broken PropertiesChanged connectionsv5.14.1Alex Blasche2020-01-141-1/+2
| | | | | | | | | | | | | | | Change b7b979d1735764930cc6f736cfa8e22b71547ea8 introduced a slightly modified version of the OrgFreedesktopDBusPropertiesInterface::PropertiesChanged signal. This signal was taken into use in one case but all other instances of this signal were not modified and broken. This patch modifies the remaining cases and converts the connect statements to function pointer syntax. This forces the compiler to check that signal and slot parameters match. Change-Id: I41b45f7e2f7b66ff29f321acc38ff2ce1c81864e Reviewed-by: Oliver Wolff <oliver.wolff@qt.io> Reviewed-by: Thiemo van Engelen <tvanengelen@victronenergy.com>
* Code cleanup: Use nullptr wherever possibleAlex Blasche2018-08-241-1/+1
| | | | | Change-Id: I7dd2d055c8d667f049d7cb2c371619137bf76030 Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
* Make tst_lowenergycontroller pass on DBUS Bluez backendAlex Blasche2018-01-251-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In addition the patch adds a few improvements making the tests somewhat more reliable. 1.) The 0x1800 BTLE Generic Access service is not exposed by BlueZ's API. That's a deliberate decision by the devs. The patch removes the service from the list of to-be-checked services. 2.) QTBUG-42519 is a limitation of the non-DBus BTLE implementation and cannot be fixed. The new DBus API does permit concurrent QLowEnergyController instances. However the instances share a platform wide singleton which means that if one instance is connected then the other instances connects as well. Other platforms separate the connectivity between instances. Therefore tst_concurrentDiscovery() has to offer three different behavior patterns 3.) Consecutive calls to writeDescriptor() in tst_readWriteDescriptor() cause a crash of bluetoothd (version 5.47 or below) and a premature disconnect from the BLE device in version BlueZ 5.48. To avoid the problem qWait calls were introduced to delay the time between individual calls. 4.) Improves the robustness of the tst_writeCharacteristicNoResponse() test which relied on notifications being enabled for two of its characteristics. So far the notifications for one characteristic were enabled but not for the other. For some magical reason this happened to be the case on all platforms but the new DBUS BTLE implementation. 5.) Swapped out some QVERIFY statements in favor of QCOMPARE. This provides better error visibility when a test fails. 6.) The patch adds a time limitation of BTLE discovery which reduces the time the entire test run takes. This is API that was recently added. Change-Id: Ib633a87614af9cbccdb0253ba47fd059a2013358 Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
* Implement bluetoothd version testAlex Blasche2017-12-131-1/+1
| | | | | | | | | | | | | This patch adds the ability to detect the underlying version of bluetoothd. The bluetoothd version provides the means to decide whether the DBUS LE API is sufficient to fullfil the QLEController requirements. Bluez DBus LE API is usable since Bluez 5.42. Prior versions only had experimental DBus LE APIs. Task-number: QTBUG-46819 Change-Id: Ic047fba27c01ee40571abb0c4eb45828f4a64475 Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
* Introduce Base class for QLowEnergyControllerPrivateAlex Blasche2017-11-031-0/+1
| | | | | | | | This permits alternative implementations selectable at runtime. Currently this is only used by Bluez. Change-Id: I3ddeb7f888f3b09bdc62f10d5b9a36320500f329 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
* Add new Bluez Device1 properties to QtBLuetoothAlex Blasche2017-06-221-0/+2
| | | | | | | | | The org.bluez.Device1 interface got a few new properties which this patch makes accessible to QtBluetooth. The new properties will be used later on to enable new use cases and streamline existing code. Change-Id: I8bd28b7df7ead5e46b70f6b7b387ab378f45e7a7 Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
* Updated license headersAntti Kokko2016-01-201-14/+20
| | | | | | | | | | From Qt 5.7 -> LGPL v2.1 isn't an option anymore, see http://blog.qt.io/blog/2016/01/13/new-agreement-with-the-kde-free-qt-foundation/ Updated license headers to use new LGPL header instead of LGPL21 one (in those files which will be under LGPL v3) Change-Id: I856c13e2a6d4d12c46e1286b0ca1c092ee4608f8 Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* Bluez5: Sanitize app name to be valid DBus object path nameAlex Blasche2015-12-231-0/+2
| | | | | | | | This may happen when the app name contains for example a dash ('-'). Task-number: QTBUG-49402 Change-Id: I04b289b0723e2979a67c93e335205556bf1eb30e Reviewed-by: Timur Pocheptsov <timur.pocheptsov@theqtcompany.com>
* Add missing "We mean it" comments to private headers.Friedemann Kleint2015-10-091-0/+11
| | | | | Change-Id: I4e78a2b263fb779253556201fd20fe47a2afc58e Reviewed-by: Alex Blasche <alexander.blasche@theqtcompany.com>
* Update copyright headersJani Heikkinen2015-02-161-7/+7
| | | | | | | | | Qt copyrights are now in The Qt Company, so we could update the source code headers accordingly. In the same go we should also fix the links to point to qt.io. Change-Id: I3822a6484e8f7a420330de1cb1aeb0c3d1cf41b7 Reviewed-by: Sergio Ahumada <sahumada@texla.cl>
* Update license headers and add new licensesJani Heikkinen2014-08-241-18/+10
| | | | | | | | | - Renamed LICENSE.LGPL to LICENSE.LGPLv21 - Added LICENSE.LGPLv3 & LICENSE.GPLv2 - Removed LICENSE.GPL Change-Id: I7a8b8b787fcae9a178794364efdefe1021d10b1b Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
* Remove Bluez as link and include dependency from QtBluetoothAlex Blasche2014-08-121-8/+0
| | | | | Change-Id: Ieecf341918ffdc51c359fed4969ef6c3998d83b8 Reviewed-by: Maurice Kalinowski <maurice.kalinowski@digia.com>
* Merge branch '5.3' into devAlex Blasche2014-07-171-1/+7
| | | | | | | | Conflicts: src/bluetooth/bluez/bluez.pri src/bluetooth/qbluetoothsocket_bluez.cpp Change-Id: Ieca8f2a327bf54b42403ddab88f8b9c3ff6b4a95
* Bluez5: Simplify lookup of default adapterAlex Blasche2014-06-021-0/+2
| | | | | | Change-Id: I59aa5241d33191a8ca8cc167263b63b024f52754 Reviewed-by: Aaron McCarthy <mccarthy.aaron@gmail.com> Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
* Service discovery via Bluez5Alex Blasche2014-05-221-0/+3
| | | | | | | | | At the same time we shift the ServiceClassUUID to service name mapping to QBluetoothUuid. It was used by Android and now Bluez 5 uses it too. Task-number: QTBUG-32085 Change-Id: I9f2d4dc4e2997683485f2ba7aaefb646cb72fb75 Reviewed-by: Aaron McCarthy <mccarthy.aaron@gmail.com>
* Bluez5 support for QBluetoothDeviceDiscoveryAlex Blasche2014-05-091-0/+30
| | | | | | | Task-number: QTBUG-32085 Change-Id: I31ae0dc9f0d09f3979797eb95eb87ed7bd181ae3 Reviewed-by: Oleg Shparber <trollixx@gmail.com> Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
* Add Bluez5 support for QBluetoothLocalDeviceAlex Blasche2014-05-061-0/+60
The pairing signals are not yet implemented. For details see QTBUG-38401. Task-number: QTBUG-32085 Change-Id: I2b4e9a97b880801ebbffe367a8ab98320dd7ef2f Reviewed-by: Robin Burchell <robin+qt@viroteck.net>