summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* | | Bump versionKari Oikarinen2019-01-141-1/+1
| | | | | | | | | | | | Change-Id: I347b943e3f99c54f8af678a5a2127624ae22669c
* | | Fix a few clazy warningsAlex Blasche2019-01-112-16/+16
| | | | | | | | | | | | | | | | | | | | | Covers static accessor, auto, nullptr and casting related warnings. Change-Id: I307438b662df908a2cfa37341722b78b5777e737 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
* | | Ensure custom uuids are returned by QBluetoothServiceInfo::serviceUuid()Alex Blasche2019-01-091-1/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QBluetoothServiceDiscoveryAgent::start(FullDiscovery) uses an external tool called sdpscanner to perform the SDP inquiry. The tool uses Bluez's own API to perform the task and is GPL. In case a remote device offers a custom service the service uuid is returned as serviceClassUuid. QBluetoothServiceInfo::serviceUuid() remains empty although it should be populated as per API contract. This patch ensures that the first custom uuid is shifted from the serviceClassUuid list to serviceUuid(). The fix is limited because it picks the first custom uuid and does not consider a secondary custom uuid. Such a case is extremely unlikely though and I have not come across it. Fixes: QTBUG-72800 Change-Id: I7256440bcb1c9b0b2fb75249f977c43fecf1d910 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
* | | Don't reverse uuids which are derived from Bluetooth's base uuidAlex Blasche2019-01-081-1/+1
| |/ |/| | | | | | | | | | | | | The related bug only happens for custom uuids. Fixes: QTBUG-72681 Change-Id: I22d87b84bf3958ecce9b6020e3323f1e6c6a9255 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
* | Bump versionKari Oikarinen2019-01-071-1/+1
| | | | | | | | Change-Id: I90dee13006e02c755454450a7c26d1967988c467
* | Add missing dbus registrations and change documentationAlex Blasche2019-01-042-2/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Qt DBus registration for Bluez specific types was done by isBluez5(). However Qt 5.12 introduced bluetoothdVersion() which is a bit more precise. It became necessary because runtime decisions based on exact minor release versions of Bluez became necessary. Therefore some code paths (depending on the user's use case) never called isBluez5() anymore. Subsequently the dbus registrations were missed out on. In the future isBLuez5() should be replaced by bluetoothdVersion(). QBluetoothSocket changed its underlying implementation when addressing QTBUG-68550. It uses dbus sockets to establish rfcomm socket connections to remote devices. The QBluetoothSocket::connectToService() overload that expects a port number is no longer possible as Bluez DBus API does not support connection establishment based on port numbers. Fixes: QTBUG-72742 Change-Id: If6adb391b0524cabc3a702d761e0cbd263508396 Reviewed-by: Oliver Wolff <oliver.wolff@qt.io> Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
* | Merge remote-tracking branch 'origin/5.11' into 5.12Liang Qi2018-12-230-0/+0
|\ \ | | | | | | | | | | | | | | | | | | Conflicts: .qmake.conf Change-Id: Ic7e6271274c0f60d3ec8a9caf3f054bec6544bf0
| * | Bump version5.11Kari Oikarinen2018-12-121-1/+1
| | | | | | | | | | | | Change-Id: I669cfada1d60cb975a39224c74ff94bbcea0bd61
* | | CoreBluetooth - fix warnings ('-Wobjc-interface-ivars')Timur Pocheptsov2018-12-1820-98/+97
| | | | | | | | | | | | | | | | | | | | | Move all i-vars into implementation part of declaration. Change-Id: I9ee71bc85308d899871dc680d438c504e591b091 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* | | Fix broken timeout handling in osxbtcentral managerTimur Pocheptsov2018-12-185-101/+136
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Trying to do several things (for example, discovering chars on several services) in non-sequential manner is allowed but will result in the broken 'object under watch' logic and thus a failure to report some operation finished. Task-number: QTBUG-72487 Change-Id: I9674f93e0c4d5cbfd50ac2f828d0d650031e056c Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* | | GCD timer - refactor and fix warningsTimur Pocheptsov2018-12-175-29/+70
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1. We move the logic 'object we are watching after and the query's type' into the GCD timer, since we'll need several timers in osxbtcentralmanager (and after all it's not a timer really, it's 'a timeout watchdog' more like. 2. Move i-vars into the implementation to suppress compiler warnings. Task-number: QTBUG-72487 Change-Id: I090e4cc2e0e747211aae8ec91c4e0ff4a53f570b Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* | | Fix use of the wrong constant: m_maximum should be INT_MAXThiago Macieira2018-12-121-1/+1
| |/ |/| | | | | | | | | | | | | Found by ICC: warning #68: integer conversion resulted in a change of sign Change-Id: I4ac1156702324f0fb814fffd156f81e163e3d4d2 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* | Prepare tst_qnearfieldtagtype1 for configurations with builtin_testdataOliver Wolff2018-12-061-0/+5
| | | | | | | | | | | | | | | | | | We have to add relevant test data to TESTDATA and use them from the created qrc file. Change-Id: I1ce75822ba6bc9d00db40499c3e242c5012237fd Reviewed-by: Alex Blasche <alexander.blasche@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
* | Prepare tst_qnearfieldtagtype2 for configurations with builtin_testdataOliver Wolff2018-12-063-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | We have to add relevant test data to TESTDATA and use them from the created qrc file. As the emulated TagActivator for configurations with builtin_testdata uses "nfcdata" as the root it searches for ".nfc" files, the test data has to be moved into a folder that is called like that. We cannot move the type 2 testdata into the shared nfcdata folder as this would mix up tag types 1 and 2 and thus make the tests fail. Change-Id: I424dbab5c952408b441f1d67bdcd2fad635f15f4 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* | qnearfieldmanager_emulator: Use Q_GLOBAL_STATIC for tag activatorOliver Wolff2018-12-063-12/+6
| | | | | | | | | | | | | | | | | | | | | | Using a Q_GLOBAL_STATIC here fixes an issue in the auto tests for winrt. If we use a static object that is created before the QCoreapplication has been created, TagActivator's timer will complain, that it was not created inside a QThread. By postponing the creation until first usage we can avoid that problem. Change-Id: I9beca89930bfca2c71e0fce3d9c000dfcb71f431 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* | Prepare tst_qnearfieldmanager for configurations with builtin_testdataOliver Wolff2018-12-062-0/+9
| | | | | | | | | | | | | | | | We have to add relevant test data to TESTDATA and use them from the created qrc file. Change-Id: I72ed86e09caf518f3f1b830ab4fec104a81313e6 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* | Merge remote-tracking branch 'origin/5.12.0' into 5.12Qt Forward Merge Bot2018-12-051-0/+70
|\ \ | | | | | | | | | Change-Id: Iec198cf5c07227ff9486a92f6aee3fa24696ebdb
| * | Add changes file for Qt 5.12.0v5.12.0-rc2v5.12.0-rc1v5.12.0Alex Blasche2018-11-071-0/+70
| | | | | | | | | | | | | | | Change-Id: I0b3231b6eec403a7f8959fdfceb591b1700a00ad Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
* | | QQmlNdefRecord: port to QRegularExpressionSamuel Gaist2018-12-031-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | This patch updates the QQmlNdefRecord code to use QRegularExpression in place of QRegExp which is to be considered deprecated. Change-Id: Ibfbab39ca84f9e89d6f6bd2e15000359a4218234 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* | | Fix compilation with gcc 4.8Ville Voutilainen2018-12-031-1/+0
| | | | | | | | | | | | | | | | | | | | | GCC 4.8 doesn't like duplicate friend declarations. Change-Id: I2ec48ca7415b9fd7fe1c24f390519833b7d1f0aa Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | | Android: Emit deviceDiscovered before deviceUpdatedAndrew Dolby2018-11-211-11/+19
| | | | | | | | | | | | | | | | | | | | | | | | And continue to update device info when continuous scanning (lowEnergyDiscoveryTimeout <= 0). Task-number: QTBUG-46008 Change-Id: I019c540205ae39c60deac165def7d0da572ae291 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* | | Merge remote-tracking branch 'origin/5.11' into 5.12Qt Forward Merge Bot2018-11-160-0/+0
|\ \ \ | | |/ | |/| | | | | | | | | | | | | Conflicts: .qmake.conf Change-Id: I0d2fc871a0bafa1711673cbfafa11d6933da5191
| * | Bump versionv5.11.3Oswald Buddenhagen2018-11-081-1/+1
| | | | | | | | | | | | Change-Id: I33e9b58cc7e968740380335e58e0093f496c3387
* | | winrt: Small code cleanupOliver Wolff2018-11-161-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | Remove unnecessary break and correct one of bufferFromAttribute's return values. Change-Id: I6d4d74318f2eee1ed89f2e2f95909978fd8b4733 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* | | winrt: Clarify situation of ServiceClassIds and ProtocolDescriptorListOliver Wolff2018-11-161-0/+4
| | | | | | | | | | | | | | | Change-Id: I355f7b5d83b925af785a35ca27cc0943f346665e Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* | | winrt: Document necessity of pairing devices before discoveryOliver Wolff2018-11-161-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | Prebuilt packages do not use the newer BTLE backend so by default BT devices have to be paired before they can be found on Windows. Change-Id: I128b319b95c49ec8eab4a221927712bae5253327 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* | | qbluetoothlocaldevice_p.cpp: Make sure d_ptr is initializedOliver Wolff2018-11-153-27/+12
| |/ |/| | | | | | | | | | | | | | | | | | | | | Backends that still use qbluetoothlocaldevce_p.cpp (namely ios and winrt) overload QBluetoothLocalDevicePrivate::isValid. While it does not make a difference for ios (as false is returned if no d_ptr is initialized) local device will be seen as invalid on winrt if there is no d_ptr. Fixes: QTBUG-67090 Change-Id: I82dfa4563be0ed4800f0a8dd2a9ccfc3fe313e3b Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
* | Ensure QObject context is retained to avoid crashesv5.12.0-beta4Alex Blasche2018-10-315-17/+20
| | | | | | | | | | | | | | | | | | | | | | If the public class is deleted pending lambda invocation can cause crashes unless QObject context is provided. This fixes a regression introduced by 819bb06c2cb3372cb1bb9ddd7f3a504f78d3452d. This was discovered while investigating QTBUG-71479. Change-Id: I3a49916ce6d9425c684863bb0b04a10bd3e652b9 Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
* | Fix regression not updating the device info during BTLE discoveryAlex Blasche2018-10-311-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | This is a regression introduced by 819bb06c2cb3372cb1bb9ddd7f3a504f78d3452d. The object context was missing and subsequent calls to QObject::sender() failed. As a consequence the signalling for the device updates never happened. Fixes: QTBUG-71479 Change-Id: I6f057912a9321969b59ded8b0a3e5602653e5f2e Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
* | Improve QBluetoothDeviceDiscoveryAgent::deviceDiscovered() docsv5.12.0-beta3Alex Blasche2018-10-191-4/+5
| | | | | | | | | | | | | | | | The previous definition was not aware of the new deviceUpdated() signal. This patch better outlines the connection. Change-Id: I8beee9b43c5c0b782676de61b27b219b32c245f5 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
* | QBluetoothUuid: add QDataStream operator<<,>>Thiago Macieira2018-10-191-0/+12
| | | | | | | | | | | | | | Don't depend on QUuid's. Change-Id: I495bc19409f348069f5bfffd15516db994a430e4 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* | Fix SDP BrowseGroupList entryAlex Blasche2018-10-165-10/+15
| | | | | | | | | | | | | | | | | | | | | | A BrowseGroupList is defined as sequence in which each element is a UUID that represents a browse group to which the service record belongs. Except for the QBluetoothServer::listen() implementation every other implementation did not use the sequence pattern. This patch unifies all BrowseGroupList entries through QtBluetooth and its examples/tests. Change-Id: I37640ae0500c557d79350359883abc6a66a46346 Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
* | Fix the BluetoothProfileDescriptorStructureAlex Blasche2018-10-156-15/+45
| | | | | | | | | | | | | | | | | | | | | | As per spec this is meant to be a list/sequence within a sequence and the version was missing too. For simplicity version 1.0 is used. Fixes: QTBUG-58529 Change-Id: I57090148aadf60ea1fbbb207ff0a4ae61e06caf2 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io> Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
* | Remove unused snippet section markersAlex Blasche2018-10-151-3/+0
| | | | | | | | | | | | | | This section is not used by any part of the documentation. Change-Id: I3cfc5ff187bfe43bbd75302b45b7dcc6eddb113c Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
* | SDP records: handle ServiceID and ServiceClassIDList correctly (IOBluetooth)v5.12.0-beta2Timur Pocheptsov2018-10-112-6/+88
| | | | | | | | | | | | | | | | | | | | | | | | We previously failed to correctly extract service ID and service class ID list. As a result, service discovery agent working with uuid filter and in MinimalDiscovery mode would fail to find anything, without filtering - would probably end up in services not having any valid service ID or ID list. Task-number: QTBUG-71052 Change-Id: I6b5a36399abfaf66297abe4a38efa7659cbb2aa0 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* | Suppress "We mean it" warning due to battery1_p.hAlex Blasche2018-10-101-1/+1
| | | | | | | | | | | | | | | | QtBluetooth WARNING: /../qt512/qtconnectivity/src/bluetooth/bluez/battery1_p.h does not have the "We mean it." warning. Change-Id: Iddd792243690a1cf6ceab5d3d01de322d2c5d92e Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
* | Fix QObject::connect warnings due to removed Q_PRIVATE_SLOT instancesAlex Blasche2018-10-091-13/+8
| | | | | | | | | | | | | | | | | | This fixes a regression introduced by 819bb06c2cb3372cb1bb9ddd7f3a504f78d3452d on macOS. Fixes: QTBUG-71032 Change-Id: I34a0325f89049bce86b5137ee722f6f063a4b882 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
* | Permit adjusting of advertisement dataAlex Blasche2018-10-082-3/+7
| | | | | | | | | | | | | | | | | | | | Prior to this change subsequent calls to QLowEnergyController::startAdvertising() failed to update the to-be-advertised information. Fixes: QTBUG-70754 Change-Id: I594f4f916307e12be6be17d50497aea324520620 Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
* | Don't report S_OK as error when calling GetAddressOf()v5.12.0-beta1Alex Blasche2018-09-281-1/+1
| | | | | | | | | | | | Fixes: QTBUG-70799 Change-Id: Iebbfbc2e00d83a6c08bb8a376c01734188e69388 Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
* | Fix qtconnectivity buildAlex Blasche2018-09-281-1/+2
| | | | | | | | | | | | | | | | | | This patch fixes the error introduced by 7d7651fb3bd0c2bdeb6159202d30cf475611da58. Change-Id: Idaf9066190535dd521efed7ab78e9203b99aadef Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io> Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
* | Doc: Use a macro to resolve QML import versionsTopi Reinio2018-09-284-8/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | QDoc now supports macros for its command parameters, as well as passing parameters to \code and \qml commands. Use these together with the new \QtMinorVersion macro to automate bumping the QML import versions within documentation. Also, update the hard-coded version numbers in snippet files where we cannot use the macro. Task-number: QTBUG-67818 Change-Id: I93d92770314580efa933c5bf85c618ad8331afb5 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* | winrt: Avoid crash on device discovery when device has to be pairedOliver Wolff2018-09-271-2/+6
| | | | | | | | | | | | | | | | | | | | If a device has to be paired during device discovery on winrt it is possible that the pairing dialog is shown, while discovery hits its timeout. We have to protect against a late callback which tries to access a deleted object. Change-Id: I9756f993b4a31080b1ef518953bee6e75a24e315 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* | Don't build when there is no Qt NetworkEskil Abrahamsen Blomfeldt2018-09-271-1/+2
| | | | | | | | | | | | | | | | Qt Connectivity depends on QAbstractSocket, so it will not build if Qt Network is not built. Change-Id: I94f812f4b4c0c23a38b6c0fcdef0ee962f68e8b0 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* | Add limited PinCode pairing support to bttestui appAlex Blasche2018-09-262-2/+9
| | | | | | | | | | | | | | This help quicker testing of the feature. Change-Id: I2389b1126ac2ea0ffc9dea4bb7561c683cf97088 Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
* | Minor code cleanup for QBluetoothLocalDevice implementation on AndroidAlex Blasche2018-09-262-16/+12
| | | | | | | | | | Change-Id: I22da03879c23f6b6842cb832cea0cfee6e016445 Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
* | Don't trigger passkey pairing notification if remote device is unknownAlex Blasche2018-09-261-0/+3
| | | | | | | | | | | | | | | | | | | | The device address is essential for proper processing of pairingDisplayConfirmation() signal on Android. If it is not available abort immediately. This brings the passkey pairing code in line with pincode pairing. Change-Id: I174a2478d48463c58ba937e71ced377d45892f1a Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
* | Properly handle pin code pairing on AndroidAlex Blasche2018-09-264-0/+54
| | | | | | | | | | | | | | | | | | | | | | Most likely this paring variant was forgotten when Android support for QBluetoothLocalDevice was implemented. This variant is rather uncommon and Android's default pairing handler are likely to automatically handle such requests too. Fixes: QTBUG-70295 Change-Id: I618242da415574245e5a213a6e34f190c685c8e9 Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
* | Catch SecurityException during pairing on AndroidAlex Blasche2018-09-262-1/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QBluetoothLocalDevice::pairingConfirmation(bool) requires BLUETOOTH_PRIVILEGED permission which cannot be obtained by 3rdparty apps. I believe this used to be different as suggested by https://android.googlesource.com/platform/frameworks/base/+/b1dc1757071ba46ee653d68f331486e86778b8e4 This patch ensures that the thrown SecurityException is caught and displays an appropriate warning. Change-Id: Ib5a0e0fc0c9f3b4f33690493ed74aa4b7cb8864b Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io> Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
* | Update plugins.qmltypesKai Koehne2018-09-192-4/+4
| | | | | | | | | | | | Task-number: QTBUG-70264 Change-Id: I23d3be2fa247a7c12ead7f7a8e599a3869b44e09 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* | Fix various qdoc warnings in QtBluetoothAlex Blasche2018-09-183-7/+7
| | | | | | | | | | Change-Id: I49653a6ac6fa004987d32365f96a6407f50e207c Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>