summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Add changes file for 5.7.1v5.7.15.7.1Jani Heikkinen2016-11-021-0/+79
| | | | | | Change-Id: I3060846f47faa59a2350da0f44a86746eb9ddf7c Reviewed-by: Timur Pocheptsov <timur.pocheptsov@theqtcompany.com> Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* Merge remote-tracking branch 'origin/5.6' into 5.7Liang Qi2016-10-0530-114/+65
|\ | | | | | | Change-Id: Iff285e35cdca30fee28c7927bc01498d70f9de9e
| * CoreBluetooth - fix broken builds (macOS, iOS, tvOS, watchOS)Timur Pocheptsov2016-10-0428-126/+61
| | | | | | | | | | | | | | | | | | | | | | | | | | | | - With recent SDK changes CoreBluetooth is not in IOBluetooth anymore. This makes corebluetoothwrapper_p.h even uglier, now we have to care about v != 10.9 && v < 10.12; v == 10.9; v >= 10.12. - Using osxbluetooth_p.h we can get rid of forward declarations (for Obj-C classes) and weird includes like <IOBluetooth/IOBluetoothRFCOMChannel.h> - use osxbluetooth_p.h instead (and it will correctly include IOBluetooth/IOBluetooth.h etc.). Change-Id: Ia85ef2e2cc1ac7b15a58864ed25d85a0772e5c86 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
| * Fix misleading error message in QBluetoothSocket Dummy implementationAlex Blasche2016-10-041-1/+1
| | | | | | | | | | | | | | Task-number: QTBUG-56294 Change-Id: I2c27a050294e611f6ee540dbc58cf7f8b30b3fdf Reviewed-by: Christian Kandeler <christian.kandeler@qt.io> Reviewed-by: Timur Pocheptsov <timur.pocheptsov@theqtcompany.com>
| * Fixed build with MaxOSX10.12 SDKSamuel Gaist2016-10-033-0/+16
| | | | | | | | | | | | | | | | This patch adds missing includes that allows to build the module with the 10.12 SDK and Xcode 8. Change-Id: Ieab48f6a0582b916ceecbbb9a01a4169d6ba53f5 Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* | Merge remote-tracking branch 'origin/5.6' into 5.7Liang Qi2016-10-012-0/+34
|\ \ | |/ | | | | Change-Id: Ie9b0ebf1c5e925107e90b5d01b112916a8d1d83d
| * Handle iOS 10 deprecated data structuresMike Krus2016-09-282-0/+34
| | | | | | | | | | | | | | | | | | iOS 10 (and tvOS 10) deprecates CBCentralManagerState enum (and associated values). Replaced by CBManagerState enum. Change-Id: I1c1bb0691403deaa6330949516846961c76865f5 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@theqtcompany.com> Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* | Merge remote-tracking branch 'origin/5.6' into 5.7Liang Qi2016-09-1614-42/+8924
|\ \ | |/ | | | | Change-Id: I3eec9a22565585d4fc40831d609a3083ce99a52c
| * Merge remote-tracking branch 'origin/5.6.2' into 5.6Liang Qi2016-09-161-0/+73
| |\ | | | | | | | | | Change-Id: Ib96e704316d0a93615505a07e2134f713e05deb8
| | * Add changes file for 5.6.2v5.6.25.6.2Alex Blasche2016-09-121-0/+73
| | | | | | | | | | | | | | | Change-Id: Id0c8f14ef466011a3fec0db1f3042e5f540eeaa3 Reviewed-by: Kai Koehne <kai.koehne@qt.io>
| * | BC data files for QtConnectivity for Qt 5.6Milla Pohjanheimo2016-09-052-0/+8421
| |/ | | | | | | | | | | | | | | Added binary compatibility data files for tst_bic test Change-Id: I637ff03da3ca76dac8750f5a0480d61e267e850e Reviewed-by: Sergio Ahumada <sahumada@texla.cl> Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
| * QBluetoothSocket::connectToService - check a socket type firstTimur Pocheptsov2016-08-263-4/+98
| | | | | | | | | | | | | | | | | | | | | | | | | | Attempt to connect to a service using a socket with UnknownProtocol socket type will fail, but can result in an incorrect UnknownSocketError reported and also can start a device discovery (then finally failing to connect after all). Check this condition early before trying to actually connect/do device discovery and report error properly as UnsupportedProtocolError. Task-number: QTBUG-55073 Change-Id: Ib39e1ca7ad401e07d6387201a4664a1185d38d39 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
| * Doc: Change instances of 'OS X' to 'macOS'Topi Reinio2016-08-167-22/+22
| | | | | | | | | | | | | | | | | | | | As of version 10.12 (Sierra), the name of Apple's desktop operating system will be macOS. Change all occurrences where the platform is discussed to use the macro \macos (defined in the documentation configuration in qtbase). Change-Id: I97f7a0d6d2ca351395bed518f01d4365b986500a Reviewed-by: Venugopal Shivashankar <Venugopal.Shivashankar@qt.io>
| * Android: Avoid newDevice signal spamming in QBluetoothDeviceDiscoveryAgentAlex Blasche2016-08-011-5/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | SDP based scans and LE scans can find the saame device (address) with different device names. This is caused by the fact that different channels are used to retrieve the information. Those two channels can advertise different device names. Before this patch the first entry was added to the list of discovered devices. When the second entry with different name came about, the entry was never added to the list of discovered devices. Nevertheless the deviceDiscovered() signal was triggered each time. This lead to a situation where application which were listening to the signal only never noticed the duplicated entries and showed a new discovered device each time the address matched but not the remainder of the device info. This problem was made worse by the fact that the LE scan on Android continues to fire the new device discovered signal once per second. This patch distinguishes devices with the same address but different names. They are treated as separate entries now. Change-Id: I77259a888708309338110831e86bb7ce9253f2a6 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io> Reviewed-by: Timur Pocheptsov <timur.pocheptsov@theqtcompany.com> Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
| * Android: Device discovery doesn't provide major & minor device class infoAlex Blasche2016-08-011-11/+298
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QBluetoothDeviceDiscoveryAgent did not extract the QBluetoothDeviceInfo::majorDeviceClass() and QBluetoothDeviceInfo::minorDeviceClass() information. The Android API provides info for all major device classes. However not each major device class has its set of API for the minor device class information. Caching is applied to match Android major device class values against their matching Qt enum. When a matching entry is found, the value is added to the cache. In principle, the mechanism is applied for minor device class values. However since there are many many more minor device class fields, the caching is a bit more proactive. The patch will proactively read and cache all minor device class values for a given major device class. This avoids a large overhead of very long if..else if...else if..else statements. Change-Id: I26a6c29c6f5dca6d4f3b4b25902cda03a10ae5de Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* | BC data files added for QtConnectivity (5.7)Milla Pohjanheimo2016-09-152-0/+9020
| | | | | | | | | | | | | | | | Added the generated data files for the binary compatibility tests for QtConnectivity for Qt 5.7. Change-Id: Iedd9e2d47804f6e03925c8fcd39c5c2fc27f2e76 Reviewed-by: Sergio Ahumada <sahumada@texla.cl>
* | Fix NFC corkboard example on AndroidAlex Blasche2016-08-311-7/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The example uses a custom Manifest. The original version was based on the general AndroidManifest.xml template at the time. In the mean time the template changed (in particular the minimal SDK version was increased to version 16). THe old custom manifest required API lvl 14 which was too low. The new version is based on the current AndroidManifest.xml template which currently is Qt version 5.7.1. Change-Id: I91c04cba8c7a9979d1cff0dc070e42b98185872f Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* | Prepare QtNfc for Android Service supportAlex Blasche2016-08-312-3/+11
| | | | | | | | | | | | | | | | | | It cannot really be fixed sind Android's NFC API requires Activity objects. We merely ensure that the service case is discovered early, reported accordingly and documented properly. Change-Id: If75856eea3da5c6283a3cb988daffd7a36cc02a7 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* | Make QtBluetooth Low Energy work when Qt runs as Android serviceAlex Blasche2016-08-032-7/+7
| | | | | | | | | | Change-Id: Ic0814c3f5a65ce9ac9236c41397400fc42abb572 Reviewed-by: BogDan Vatra <bogdan@kdab.com>
* | Make Classic QtBluetooth work as an Android serviceAlex Blasche2016-08-033-14/+28
| | | | | | | | | | Change-Id: Ibde0242b058f728fd7e060b37f427c208325db13 Reviewed-by: BogDan Vatra <bogdan@kdab.com>
* | Merge remote-tracking branch 'origin/5.6' into 5.7Liang Qi2016-08-017-6/+28
|\ \ | |/ | | | | Change-Id: I64352b6cc066255972874e2f9c28abff35f0d613
| * Document the meaning of QBluetoothDeviceInfo::minorDeviceClass()Alex Blasche2016-07-252-2/+7
| | | | | | | | | | | | | | A naming inconsistency was discovered and a related Qt 6 TODO was added. Change-Id: I171f8480009a3fc8c3ddc39cc2da03cf4a6eb9db Reviewed-by: Timur Pocheptsov <timur.pocheptsov@theqtcompany.com>
| * Make sure JNI_OnLoad is not called more than onceBogDan Vatra2016-07-202-0/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | Since Android 5.0 Google introduce a nasty bug[1] which calls JNI_OnLoad more than once. Basically every time when a library is loaded JNI_OnLoad is called if found, but it calls *again* JNI_OnLoad of its .so dependencies! [1] Workaround https://code.google.com/p/android/issues/detail?id=215069 Change-Id: I2894dd24afa9c51582f20ab44d83e9ce86751716 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
| * Android: Workaround clang default destructor export bugBogDan Vatra2016-07-192-0/+5
| | | | | | | | | | | | | | | | | | Somehow clang fails to properly export the default destructor. Should be revered when https://github.com/android-ndk/ndk/issues/143 is fixed. Change-Id: I842f4141f249181ec871634b947e1c08470ddb83 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
| * Disable notifications before disconnecting heartlistener clientAlex Blasche2016-07-191-4/+6
| | | | | | | | | | | | | | | | The logic for this existed already. However an unintentional name override and proper QByteArray comparison prevented it from ever being activated. Change-Id: I73ac6c03b82cfbc11f5d755381ae89a3e8a3d9e5 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@theqtcompany.com>
* | Bump versionOswald Buddenhagen2016-07-281-1/+1
| | | | | | | | Change-Id: I097a3e0d7372038a600369ead4c5cead82f8d7d5
* | Highlight incomplete handling of BTLE packet writesAlex Blasche2016-07-191-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Cases such as partial writes were silently ignored. Since QLowEnergyController works in unbuffered mode such incomplete writes are ignored. The ATT layer will automatically recover from such packets on the line. The EAGAIN case is a similar case as it effectively means the BTLE connection is still ok but the packet can temporarily not be written anyway. In fact, previously QBluetoothSocket reported such cases by returning -1 as a result of QBLuetoothSocket::write(). This was even worse as it caused a drop of the connection without justification. These issues are reproducable when the BTLE connection is flooded with lots of notifications. Task-number: QTBUG-54475 Change-Id: I2b6be555ff676c440971981db0974be83c901eaa Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Improve failed ::write() handling in QBluetoothSocketAlex Blasche2016-07-191-13/+37
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When the Bluetooth connection is flooded with information, EAGAIN is returned. So far this was considered an unrecoverable error which is not consistent with the meaning of EAGAIN. In buffered mode we'll put the data back into the buffer and in unbuffered mode the QIODevice::write() call returns 0 which leaves the developer the option to retry. At the same time this patch ensures that write() calls always return the actual number of written bytes and not the amount of bytes the caller asked for to be written. Partial writes in buffered mode are returned to the buffer too. Task-number: QTBUG-54475 Change-Id: Iffc7980d2477e1fc0b45808431af6b7fecd38ded Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Timur Pocheptsov <timur.pocheptsov@theqtcompany.com>
* | Merge remote-tracking branch 'gerrit/5.6' into 5.7Alex Blasche2016-07-116-9/+5
|\ \ | |/ | | | | Change-Id: Ifbb36469f4a325b1b783cb3b018d7793680a9055
| * Make QtBluetooth compile in setups with BlueZ version w/o BTLE supportAlex Blasche2016-06-161-0/+1
| | | | | | | | | | | | | | Task-number: QTBUG-54055 Change-Id: Id2c42efe6c916b6f7437cb4c02fbb19430c9a44b Reviewed-by: Timur Pocheptsov <timur.pocheptsov@theqtcompany.com> Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
| * Expand license scope from "Qt GUI Toolkit" to "Qt Toolkit"Sze Howe Koh2016-06-164-4/+4
| | | | | | | | | | | | | | See http://comments.gmane.org/gmane.comp.lib.qt.devel/25771 Change-Id: If8088468d74b1d5ca87ccb82ce294396383401d1 Reviewed-by: Alex Blasche <alexander.blasche@theqtcompany.com>
| * Bluetooth - remove duplicated class definition (iOS)Timur Pocheptsov2016-06-102-5/+0
| | | | | | | | | | | | | | | | | | | | qbluetoothdevicediscoveryagent_p.cpp not needed on iOS, since for iOS we already have iOS-specific version defined completely in the corresponding .mm file. This is quite obvious ODR violation, but not so obvious for compiler/linker apparently. Change-Id: I7b7d0c9596cccea307ec7acbafbb6cd31b41d885 Reviewed-by: Alex Blasche <alexander.blasche@theqtcompany.com>
* | Fix build error on Linux using clang/trunkAlex Blasche2016-06-161-1/+1
| | | | | | | | | | | | | | | | | | | | | | It seems clang trunk cannot distinguish std::bind from bind() in sys/socket.h. There is no apparent std namespace usage but clang still complains. This patch resolves the disambiguity. Task-number: QTBUG-53683 Change-Id: Ib4bbe4a4cdf679fa3314abba5970968d7d8a9857 Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com> Reviewed-by: Timur Pocheptsov <timur.pocheptsov@theqtcompany.com>
* | Merge remote-tracking branch 'origin/5.7.0' into 5.7Liang Qi2016-06-167-16/+129
|\ \ | | | | | | | | | Change-Id: I7cd3889f3c2c82a51496b74813cfdee6495517fa
| * | Mention license change in 5.7.0 changelog.v5.7.05.7.0Kai Koehne2016-06-081-3/+20
| | | | | | | | | | | | | | | | | | | | | Task-number: QTBUG-53913 Change-Id: I0bd8a21a01531d530ba09d94a6fb839c4e43c630 Reviewed-by: Sami Makkonen <sami.makkonen@qt.io> Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
| * | Doc: Add thumbnail for Bluetooth Low Energy Heart Rate Server ExampleLeena Miettinen2016-06-021-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | Without this fix Qt Creator tags the example "broken". Change-Id: I193177bca1e0c8615e46a67e76afc98d935e590b Reviewed-by: Alex Blasche <alexander.blasche@theqtcompany.com> Reviewed-by: Topi Reiniö <topi.reinio@theqtcompany.com>
| * | Merge remote-tracking branch 'gerrit/5.6.1' into 5.7.0v5.7.0-rc1Alex Blasche2016-05-237-0/+28
| |\ \ | | | | | | | | | | | | Change-Id: Ia4d1af9c446b3248d7b4fd7c2ceef845099885a4
| * \ \ Merge 5.7 into 5.7.0Oswald Buddenhagen2016-05-209-17/+134
| |\ \ \ | | | | | | | | | | | | | | | Change-Id: I5406c601fa05e347a7c7558e42fb05029799ff27
| * | | | Add missing documentation to BTLE overview documentationAlex Blasche2016-05-201-12/+43
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The documentation was not complete as BTLE service definition and interaction was still missing. Those components are new in Qt 5.7. Change-Id: Ifd9057d659e541a853eeb49d03d46bfe9c2d4da4 Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
| * | | | Add changelog for Qt 5.7.0 releaseAlex Blasche2016-05-201-0/+39
| | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: Ic683b32daa35fc771f848046b26fd6edfdaaa0c7 Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
| * | | | Improve QtBluetooth index pageAlex Blasche2016-05-201-2/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This emphasizes the status of new API additions. Change-Id: Ida21c100f7636d7878dece13145d4595c76eaa9c Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
| * | | | Add missing \since 5.7 markers to QLE classesAlex Blasche2016-05-192-1/+23
| | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: I60f7c4751cb2b1a298a22d2b6d44c1c07967e47c Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
| * | | | Mark QBluetooth::AttAccessConstraint as 5.7 API in class docsAlex Blasche2016-05-191-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: I50cc1dafeb85d78427f5911e1c607ae0e99ed333 Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
| * | | | Don't print the same advertising code snippet twiceAlex Blasche2016-05-191-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: I6f2c1fa503f623ca08c8a3f976699d0d7b547c2f Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
* | | | | Merge remote-tracking branch 'gerrit/5.6' into 5.7Alex Blasche2016-06-0918-98/+431
|\ \ \ \ \ | | |_|_|/ | |/| | | | | | | | Change-Id: Id8dffff9bb75db396aabf6da2a3acb78505a6476
| * | | | Adds a better state transition support to the BluetoothModelAlex Blasche2016-06-092-50/+211
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When the model changes quickly from one discovery mode to the next, the public device discovery agent and the internal device discovery agent inside QBlutoothServiceDiscoveryAgent interact with each other. One agent is shutting down while the other is starting. Since both instances manage the same hardware, the resulting signals hit the agents in unexpected states which even leads to random crashes. The fix is to let one agent stop and only start the next one once the first has properly shut down. Unfortunately the public BluetoothModel API acts synchronously via its running property. Therefore the synchronous running property must be mapped to asynchronous state changes inside the agents. To achieve this the model uses an internal state transition table which determines how the next setRunning(bool) call is to be processed. As a consequence it is possible to have a non-running BluetoothModel but the internal agent is still shutting down. Another scenario might exhibit a running model whereas one internal agent is still finishing up and the next is waiting to start. Task-number: QTBUG-51307 Change-Id: I0a471b913b8784d2218a797442cee7ee4d00edf3 Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com> Reviewed-by: Timur Pocheptsov <timur.pocheptsov@theqtcompany.com> Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
| * | | | BlueZ5: Prevent premature abortion of device discoveryAlex Blasche2016-06-082-3/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This may happen when the device discovery agent is quickly started and stopped and started again. If the stop-start combination is happening quicker than dbus can deliver the Discovering flag of the Adapter1 BlueZ interface, BlueZ's stop response will override the new start discovery request. Task-number: QTBUG-53715 Change-Id: I6a03fc525c7f390db009fc68a5313352ebba7f79 Reviewed-by: Frank Meerkoetter <frank.meerkoetter@basyskom.com> Reviewed-by: Alex Blasche <alexander.blasche@theqtcompany.com>
| * | | | Bluez5: Run SDP on target devices which do not support public scansAlex Blasche2016-06-082-17/+99
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | PUBLIC_BROWSE_GROUP scans are not always supported. In such cases more targeted service scans are to be used. This patch modifies QBluetoothServiceDiscoveryAgent such that when a uuid filter is set targeted service scans are used rather than generic PUBLIC_BROWSE_GROUP ones. QBluetoothSocket always scans with an applied uuid filter and therefore directly benefits from the patch. Change-Id: I94997d2cf8f70fa7db5422d78c8bfdbe2aa1dbbc Task-number: QTBUG-53041 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@theqtcompany.com>
| * | | | Make the usage of a dummy backend obvious in the QtBluetooth docsAlex Blasche2016-06-061-0/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Task-number: QTBUG-53749 Change-Id: I6e7832b4a5a70bed153fb8b0718b3c66177ffd58 Reviewed-by: Martin Smith <martin.smith@theqtcompany.com>
| * | | | Make it more obvious what tags the NFC poster example expects.Alex Blasche2016-06-063-2/+33
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Task-number: QTBUG-53616 Change-Id: Ie3a87abc61100ac8fe0a5b671725f54ae28e1501 Reviewed-by: Martin Smith <martin.smith@theqtcompany.com> Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>