summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
...
* | Avoid bluetoothd and QtBluetooth collision when connecting to BTLE devAlex Blasche2017-05-295-3/+331
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | BlueZ's improving support for BTLE creates a new collision when attenpting to connect to remote BTLE devices. There can only ever be one connection. This patch ensures that when QtBluetooth attempts to connect we do not have a pending BTLE connection. This could have been caused via other QtBLuetooth based processes or applications such as bluetoothctl or bluetoothd in general. If a connection is pending we close the connection external to the current QtBLuetooth instance. This is not an ideal situation as several processes can potentially fight over btle access. The long term solution is a port of QtBluetooth to BlueZ's new DBus API. Task-number: QTBUG-55150 Change-Id: I96b30ae180d1348027e8f9f09c997f44409dfc48 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Make it more obvious that another active BTLE connection prevents connectAlex Blasche2017-05-234-0/+63
| | | | | | | | | | | | | | Task-number: QTBUG-55150 Change-Id: I223e2b2015e210162e59fb994b9352e790b036d4 Reviewed-by: Oliver Wolff <oliver.wolff@qt.io> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Fix GCC 7 warnings about implicit fallthroughsThiago Macieira2017-05-192-2/+4
| | | | | | | | | | | | | | Make them explicit. Change-Id: I9bf1e35bffb044dcbf62fffd14bfe71bc374febf Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* | BlueZ: Ensure stop advertisement calls are actually sent when issuedAlex Blasche2017-05-151-0/+1
| | | | | | | | | | | | | | The command queue was not flushed out to the HCI socket. Change-Id: Ic249fc6d7c93c8ca1026ec010f667b7e155d9c46 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Fix readvertisement failure on peripheral restart on BlueZAlex Blasche2017-05-152-10/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | When the QLowEnergyController disconnects and immediately restarts the re-advertisement, it fails when sending the OcfLeSetAdvEnable ocf command. Subsequenly an advertisement error is thrown which stops the QLowEnergyCOntroller instance itself. Starting with this patch we choose to ignore failures when trying to disable advertisement. The API cannot report the error back anyway. Task-number: QTBUG-58941 Change-Id: Ifd6b43193c41e6cdc22d4876441bcdcbcc2ca7b6 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Doc: iOS does not have support for classic bluetoothAndy Shaw2017-05-091-1/+1
|/ | | | | Change-Id: Ieefa1cf6f07b05d12e2381d6c72ab56d78b3e7fd Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
* Fix licensingv5.9.0-beta4Jani Heikkinen2017-04-283-42/+60
| | | | | | | | | - Remove unused license files - Switch old LGPLv21 license headers with LGPL one Task-number: QTBUG-57147 Change-Id: If7e286d2ce33077de2d9edfb14ecddfa5cd3027e Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* Fix build for -no-feature-textcodecStephan Binner2017-04-251-0/+10
| | | | | Change-Id: I5d5834733e53ac59f8e889481e04fa7acd184628 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* Fix build for -no-feature-concurrentStephan Binner2017-04-252-2/+3
| | | | | Change-Id: I57b18167dacb776a00d406e3faba6e780c764771 Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* Work around Android security permission bug when reading GATT fieldsAlex Blasche2017-04-251-2/+14
| | | | | | | | | | Android throws a security exception (BLUETOOTH_PRIVILEGED) when reading HID services. Since the permission is not available for 3rdparties this is never obtainable by apps. We need to skip over those cases. Task-number: QTBUG-59917 Change-Id: I09b55740287812b0697b857d7eb8a77190d36e44 Reviewed-by: BogDan Vatra <bogdan@kdab.com>
* Support for Q_OS_ANDROID_EMBEDDED and android-embedded buildsOtto Ryynänen2017-04-242-2/+2
| | | | | | | | | | | | The Embedded Android build (Boot to Qt Android injection) is defined by having both Q_OS_ANDROID and Q_OS_ANDROID_EMBEDDED flags defined, as well as having Qt config android-embedded. Those flags are set in mkspecs when building for embedded Android. This commit enables the possibility to build embedded Android builds. (i.e. Qt build for Android baselayer only, without JNI) Change-Id: I2ded43d7ed46a99ba70301f07a791ed4a148c6c0 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* Merge remote-tracking branch 'origin/5.8' into 5.9v5.9.0-beta3Liang Qi2017-04-182-6/+4
|\ | | | | | | | | | | | | Conflicts: src/bluetooth/qbluetoothsocket_bluez.cpp Change-Id: I37e21b3c636a241a357bc81fc23da51303b94623
| * LE/Android: fix status code descriptions5.8Konstantin Ritt2017-04-101-2/+2
| | | | | | | | | | Change-Id: Iee2f8e02a926129dfdd1c82d0fa84dfbb45303d3 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
| * QBluetoothSocket/bluez: fix QString::arg() usageMarc Mutz2017-03-241-4/+2
| | | | | | | | | | | | | | | | | | QString::arg() returns the new value but leaves *this unchanged. Found by GCC 7 (-Wunused-result). Change-Id: I8a0ddb801ded94365f0e9a7ae13a37a96c7f437a Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* | Remove heartlistener exampleAlex Blasche2017-04-072-2/+1
| | | | | | | | | | | | | | | | The heartrate game is the replacement example. Change-Id: Ib51be2467c49075d34e6bea003e69453f0801dfc Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io> Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
* | Use heartrate-game example for snippets in BTLE overviewAlex Blasche2017-04-071-14/+13
| | | | | | | | | | | | | | | | | | heartlistener example will be removed. Change-Id: Iaa5c5f629cf351b97c18f61b4fab2cbbd8d0744c Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io> Reviewed-by: Oliver Wolff <oliver.wolff@qt.io> Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* | Fix undocumented parameter warning from qdocAlex Blasche2017-04-061-3/+4
| | | | | | | | | | | | | | Undocumented parameter 'isPersistent' in QNearFieldTarget::setKeepConnection() Change-Id: I8959af52d1f966c2951c17528776ef2c8183fc07 Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
* | Ensure that QLowEnergyController::connected() is emitted on BlueZAlex Blasche2017-04-061-0/+3
| | | | | | | | | | | | | | | | This singal was never emitted. Task-number: QTBUG-59754 Change-Id: I5f6aba3f995933dc8a8c7b80492e1726a3177b54 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Replace custom QT_BLUEZ_BLUETOOTH against the related feature defineAlex Blasche2017-04-0616-31/+31
| | | | | | | | | | Change-Id: I4fbb948841a610640acaf87364e2157e31782836 Reviewed-by: Kai Koehne <kai.koehne@qt.io>
* | The BlueZ feature implies that QtDBus is enabledAlex Blasche2017-04-053-3/+3
| | | | | | | | | | | | | | | | | | | | The QtBluetooth library only builds the bluez backend when qtdbus is enabled. Previously it was possible that dbus was disabled but the bluez feature flag is still set. This patch prevents this gap by directly binding the bluez feature to the dbus feature. Change-Id: I173d51f27f5b1a78241548617f602830fec7bb14 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* | Permit BlueZ platforms to set the address type in heartrate-gameAlex Blasche2017-04-052-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | BlueZ is the only platform that requires to set the BTLE address type. The patch introduces a new UI button which allows the user to toggle the address type. The UI element is disabled on all platforms but Linux/BlueZ systems. The number of devices returned in simulator mode is reduced to four devices. This was done purely for esthetical reasons as the additional address type button takes screen real estate away and five simulator devices require more screen real estate than the remaining space for device list. This avoid the need for scrolling. Change-Id: I14cf26b3c821db7768b9d018c2d09441cd97679a Reviewed-by: Oliver Wolff <oliver.wolff@qt.io> Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | Add documentation for the HeartRate game exampleAlex Blasche2017-04-041-0/+1
| | | | | | | | | | | | | | Change-Id: I0f0a82be359fc49becd1eccc67697d5177d73bb1 Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io> Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io> Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
* | Correct the use of QString::argThiago Macieira2017-04-031-4/+4
| | | | | | | | | | | | | | | | | | | | It returns an updated QString, without modifying the variable it was called on. Found by Clang when building: qbluetoothsocket_bluez.cpp:255:17: warning: ignoring return value of function declared with 'warn_unused_result' attribute [-Wunused-result] Change-Id: I27b55fdf514247549455fffd14b1795de236d488 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* | Remove unused function convertAddressThiago Macieira2017-04-031-10/+0
| | | | | | | | | | | | | | | | Found by Clang: qbluetoothservicediscoveryagent_bluez.cpp:61:20: warning: unused function 'convertAddress' [-Wunused-function] Change-Id: I27b55fdf514247549455fffd14b1793f89f60f92 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* | Fix detecting simple NFC tagsOleg Evseev2017-03-311-6/+9
| | | | | | | | | | | | | | | | | | Before this patch Qt NFC detects only NDEF tags and signals targetDetected/targetLost are never fired for simple tags Task-number: QTBUG-59455 Change-Id: Ic868b6d66f35f790f6aba0ec30afc96fa32a5b6a Reviewed-by: Alex Blasche <alexander.blasche@qt.io> Reviewed-by: Oleg Evseev <ev.mipt@gmail.com>
* | NFC on Android: Fix crash on restart of an app in debug buildv5.9.0-beta1Lars Schmertmann2017-03-162-1/+4
| | | | | | | | | | | | Task-number: QTBUG-59343 Change-Id: Ib474db8e9a8d38b3d5668499f838cb8d38e10625 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* | Ensure the passkey and pincode for pairing are randomAlex Blasche2017-03-141-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | The previous AND operation with 1mio was not random (especially when the hex value was used). Task-number: QTBUG-59392 Change-Id: Id9ba5432c21fa41a9e5af9800a8633ce4f02fba4 Reviewed-by: Tuomas Vaarala <tuomas.vaarala@qt.io> Reviewed-by: Oliver Wolff <oliver.wolff@qt.io> Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io> Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* | Fix unused parameter warningAlex Blasche2017-03-131-0/+1
| | | | | | | | | | | | | | | | qnearfieldtarget_neard_p.cpp:52:54: warning: unused parameter `isPersistent` [-Wunused-parameter] bool QNearFieldTargetPrivate::setKeepConnection(bool isPersistent) Change-Id: Ib16e986f88452bb043afb973113747f56379ffaf Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
* | Merge remote-tracking branch 'origin/5.8' into 5.9Liang Qi2017-03-102-23/+39
|\| | | | | | | Change-Id: I26c44498f63bcb2628c186e4f1a7f563460b0327
| * Match connected device changes based on local device instanceAlex Blasche2017-02-172-23/+39
| | | | | | | | | | | | | | | | | | | | | | | | A new device connection is only ever for one particular device. Prior to this patch all local device instances (for different adapters) assumed the new connection request would be theirs. Task-number: QTBUG-57417 Change-Id: I0e7ced15cb83df4321284a297ac42b8786f9314b Reviewed-by: Christian Kandeler <christian.kandeler@qt.io> Reviewed-by: Oliver Wolff <oliver.wolff@qt.io> Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* | NFC on Android: Fix crash on restart of an appLars Schmertmann2017-03-081-0/+4
| | | | | | | | | | | | Task-number: QTBUG-59343 Change-Id: Id40844b428eb7ef781f8abc4dc3ce0c7469d178a Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* | Update QML export versions in QtConnectivity APIsAlex Blasche2017-02-284-9/+9
| | | | | | | | | | Change-Id: I141ad0e347883d035fb8ece4a9e7f540e2fe9aa2 Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
* | WinRT: Remove dummy warningv5.9.0-alpha1Oliver Wolff2017-02-083-6/+3
| | | | | | | | | | | | | | | | With classic bluetooth in place the dummy warning is no longer needed even though peripheral support is not implemented yet. Change-Id: Ia6e471cf74583d9ea704217687de272dc6d46433 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* | Rename WinRT logging categoryOliver Wolff2017-02-082-2/+2
| | | | | | | | | | | | | | | | While the bluetooth port was only available for Windows phone at the beginning it covers all winrt platforms now. Change-Id: I9b7ec7a914a481c692c7717e645ebf121d75ab73 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* | Remove WinPhone leftoversOliver Wolff2017-02-082-15/+2
| | | | | | | | | | Change-Id: I0bc4da9d8ac17930d509a55c8c5c6494dad4558f Reviewed-by: Maurice Kalinowski <maurice.kalinowski@qt.io>
* | winrt: Accept malformed profile descriptor list from applicationsOliver Wolff2017-02-081-0/+72
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Other backends accept a malformed profile descriptor list which only contains a short uuid. WinRt seems to be more restrictive here and expects a nested sequence containing a short uuid and a version per entry. In order not to break existing applications the WinRT backend repairs the profile descriptor list's structure so that it is accepted as part of IRfcommServiceProvider's list of sdp attributes. Task-number: QTBUG-58529 Change-Id: Ic1754135bc139a732ac014728ef9341205a59e86 Reviewed-by: Maurice Kalinowski <maurice.kalinowski@qt.io>
* | Provide support for QLEService::writeDescriptor() on Android PeripheralAlex Blasche2017-02-062-5/+60
| | | | | | | | | | | | | | | | This permits the server itself to change descriptors at runtime. Change-Id: I5d60cfb1838ba83737cd748671520c7072201bc4 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io> Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* | Add a small section describing how to enable Bluetooth loggingAlex Blasche2017-02-061-0/+8
| | | | | | | | | | | | Change-Id: Iffef04c75c35ebd0174c6e3ba6701ba5f8385296 Reviewed-by: Oliver Wolff <oliver.wolff@qt.io> Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
* | Add missing logging categories to QtBluetooth docsAlex Blasche2017-02-061-3/+9
| | | | | | | | | | | | | | | | and improve the general logging table content. Change-Id: I84c40a3a6e909bb62d1a59e74a91716bd13bcf0d Reviewed-by: Oliver Wolff <oliver.wolff@qt.io> Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
* | Update platform feature table for QtBluetoothAlex Blasche2017-02-061-2/+2
| | | | | | | | | | | | | | Added Android Peripheral and WinRT Classic Bluetooth. Change-Id: I2c1d55553d3940eeb050d38ebf817a61620dafe7 Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
* | QLowEnergyController: Fix spelling errorFriedemann Kleint2017-02-061-1/+1
| | | | | | | | | | Change-Id: I5f3e3e415730e36647ec0011c9fe0ed350d4cd62 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
* | winrt: Set proper socket state in setSocketDescriptorOliver Wolff2017-02-031-0/+1
| | | | | | | | | | Change-Id: I5469f696d0f20d563a67cdcc94af16faf6cac8ea Reviewed-by: Maurice Kalinowski <maurice.kalinowski@qt.io>
* | winrt: Use custom setSocketDescriptor functionOliver Wolff2017-02-033-8/+19
| | | | | | | | | | | | | | | | We have to use a similar approach to the one that is used on android as the ComPtr cannot reliably passed as an int. Change-Id: Ia52c78d4725fb3240eafa62fcb55531a282c0cd3 Reviewed-by: Maurice Kalinowski <maurice.kalinowski@qt.io>
* | winrt: Register callbacks in Xaml threadOliver Wolff2017-02-032-14/+26
| | | | | | | | | | Change-Id: Ib32af0803e95229a1671055da4d5608f3fd3e0f6 Reviewed-by: Maurice Kalinowski <maurice.kalinowski@qt.io>
* | winrt: maxPendingConnections must be lower than currently pending connectionsOliver Wolff2017-02-031-0/+6
| | | | | | | | | | Change-Id: Ie14506c0ad648413019c511d4d39dc8bd43d7405 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* | Document that BT servers on Android and WinRT only support RFCOMMOliver Wolff2017-01-311-0/+1
| | | | | | | | | | Change-Id: Ic93d086cc6b6549e8de90f01a0bba5913207d7e5 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* | winrt: Add bluetooth server supportOliver Wolff2017-01-317-8/+682
| | | | | | | | | | | | Task-numer: QTBUG-37779 Change-Id: Ieb3ed5dfea7d60b3875cbe97bb26f8060bebcc17 Reviewed-by: Maurice Kalinowski <maurice.kalinowski@qt.io>
* | winrt: Fix wrong function name in invokeMethod in bluetooth socketOliver Wolff2017-01-301-1/+1
| | | | | | | | | | Change-Id: I9fd9131c031328afa936a52e42371409e3fbac48 Reviewed-by: Maurice Kalinowski <maurice.kalinowski@qt.io>
* | winrt: Fixed reading of string attributes in sequencesOliver Wolff2017-01-301-1/+4
| | | | | | | | | | Change-Id: I063668f9b95b95aa15a736b80e11d81c15cd1730 Reviewed-by: Maurice Kalinowski <maurice.kalinowski@qt.io>
* | Allow using nfc when running as a serviceLars Schmertmann2017-01-271-11/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | With this change it will be possible to use a tag injected from outside when running as a service. Intent newIntent = new Intent(); newIntent.putExtra(NfcAdapter.EXTRA_TAG, tag); QtNative.onNewIntent(newIntent); Task-number: QTBUG-57646 Change-Id: I628d4357f023a0926e7d61914b39278342ac7161 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>