| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Windows implementation of QLowEnergyController is using helper threads
to perform device connection and characteristics read for services.
In both cases a new QObject-derived class instance is created and moved
to a helper QThread. A QThread::finished signal was used to destroy both
the helper thread and the object. This was creating a situation when the
order of destruction for a thread and a nested object was not specified.
In practice that could lead to hangs when reading multiple service
characteristics, which is specially seen on Windows 11.
This patch uses QThread::finished signal to destroy only the nested
object. Later on, the object's QObject::destroyed signal is used to
destroy the thread itself.
Task-number: QTBUG-97578
Change-Id: Ic973b835496b6098d47cd1e124315903c143e3e1
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
(cherry picked from commit 981e3f10f48580641f5e2365953ec8a17b5c96a2)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Since Android 12 it's mandatory to specify the mutability of each
pending intent. In NFC we require a mutable intent, so we need to
conditionally use FLAG_MUTABLE. This was a default value for an
intent before Android 12, so no adjustment is required for earlier
versions.
Fixes: QTBUG-98073
Change-Id: I9a478db016bf9646d84d6e458647614785005977
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
(cherry picked from commit 3753c53fc810c292db93fcfbafffbc097afb0ed1)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Debug builds of QtBluetooth on Windows were throwing asserts when
requesting a bluetooth device by its address, because we did it in a
blocking way on a GUI thread.
This patch is a partial cherry-pick of
457fd75468f56c0582f3128510e95f9bf2fc9ac3. It introduces an asynchronous
way to request a Bluetooth(LE) device.
Fixes: QTBUG-98005
Change-Id: I027607ffa32bdc1a3c77484a46833cf7ead09c77
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In the past, QBluetoothLocalDevicePrivate was releasing its instance
of DarwinBTConnectionMonitor, and IOBluetoothDevice was not retaining
this object, thus the correct behavior was assured. Starting from
macOS 12 the behavior changed, just releasing in a dtor is not enough
anymore, instead we should unregister 'monitor' manually, so that
IOBluetoothDevice releases its ownership too. The problem was found
when connecting to LE device which is Classic device at the same moment,
resulting in IOBluetooth sending a notification to the monitor object,
which has a dandling pointer to QBluetoothLocalDevicePrivate.
Fixes: QTBUG-97900
Change-Id: Idcc1233ce51795c561dbee8fd6d9a7aff592a5a2
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
Reviewed-by: Juha Vuolle <juha.vuolle@insta.fi>
(cherry picked from commit 370de7fe8447b8d2216a4cd130df211b05260b8c)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
A BT LE server can serve multiple remote devices concurrently.
The original problem was that if any of the remote devices disconnected,
the BT LE server would also report itself as disconnected even
if there were still connected devices. This disconnection can happen
even if the remote device was not in any way interested in the
Qt BT LE server (eg. LE headphones disconnecting during pairing).
This commit checks if there are still connected devices and reports
disconnection when the last device has disconnected.
Additionally the remoteAddress and remoteName are updated to reflect
these events:
- if a device is connected, that device's address will be used
- if a device is disconnected and it was the most recent device,
the address is set to that of another still connected device
Fixes: QTBUG-97576
Change-Id: I785e51574aea5e0d0a806a26f07a497101d9bab5
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
(cherry picked from commit 0879874ca49042e5a4aeb1a3ec158d04b7578bbe)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The QLowEnergyCharacteristicData allows user to define minimum and
maximum lengths for the characteristic values. This commit adds
support for Android BT LE to enforce these limits if they are set.
There are four distinct places where these checks are done:
1) When the services and their characteristics are added to the server
by QLowEnergyController::addService(). If developer has set size
limits and a value whose size violates these limits, the
characteristic is ignored with a warning.
2) When the server later on updates its characteristic values.
The update is ignored if the size limits are violated.
3.1) When a remote control device makes a regular write to the
characteristic. If the value size limits are violated, a
GATT error is returned and value will not be updated.
3.2) When a remote control device makes a prepared write to the
characteristic. With prepared write the size cannot decrease,
and we don't need to check against the minimum value length.
If the value size limits are violated, a GATT error is
returned and value will not be updated.
Fixes: QTBUG-96997
Change-Id: Ib804a1d25e54a1767b665e6e2799ac617e8f148f
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
(cherry picked from commit b43a85f6d7c134080a7dd30d162a59198d5c3f22)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
| |
Change-Id: I342a6c38b75846a451116c506173077780160456
Reviewed-by: Ivan Solovev <ivan.solovev@qt.io>
Reviewed-by: Juha Vuolle <juha.vuolle@insta.fi>
(cherry picked from commit e84efc5e26b7c902b7a3ea0204757561b0dc7b70)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The prepared writes are used to write descriptors (or characteristics)
values that are larger than MTU (Maximum Transimission Unit), or
to perform partial value writes.
As an example if a descriptor's size
is 50 bytes and single packet's payload size is 20 (== MTU - protocol
overhead), the write will be split into 20 + 20 + 10. This commit adds
the necessary support for the reassembly on the server/peripheral end.
Fixes: QTBUG-96996
Change-Id: I8e1dfdfeb81f92e5b4c52ae29d88abad1e42ba62
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
(cherry picked from commit 33958368e0317d8e130ed950d82b5e8250c61ec7)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
| |
The mtu() function was available on the control side, this commit
adds this also on the server (peripheral) side.
Task-number: QTBUG-96995
Change-Id: I2f13d2ba8a6d1f228f9da87d4d99b2a45fe5479d
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
(cherry picked from commit c0dd49d88dc2fe89c080d2baa0da1efde559893f)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The characteristics read was using IAsyncOperation->put_Completed() to
process the results of descriptor reading. Each of these completed
callbacks is executed in its own thread. In our case each of the
callbacks is also calling QWinRTFunctions::await() to perform some
async operations.
As a result, if the service has a lot of characteristics, we could
end up spawning multiple threads, each of them doing some CPU-consuming
operations. Normally it's not a problem, but looks like for some
bluetooth peripherals reading the characteristics can take significant
time. Connecting to such devices can result in 100% CPU load for all
cores if the number of characteristics exceeds the number of logical
CPUs.
This patch removes the put_Completed() approach in favor of another
QWinRTFunctions::async() call. This will guarantee that all the
characteristics read operations are performed in the same worker
thread. As a drawback, characteristics reading becomes sequential,
which makes it slower.
Fixes: QTBUG-97242
Change-Id: I0d641b8c65e628bb09a26380f5b12ba2582f210e
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
(cherry picked from commit 2a7ef291d696745887e71f8b0e27cb4c8701bdd2)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
| |
Qt Bluetooth requires QGuiApplication in certain cases,
make sure that this is covered by the module docs.
Task-number: QTBUG-86796
Change-Id: Ib7918321b84ae51b436d2e47921e3de6d6736ad3
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
(cherry picked from commit 8a1b1ac7f694f50f75a56a1d10f204e66e62ea76)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This commit adds support for control devices writing characteristic
values that are larger than the MTU. For instance if MTU payload is
20 bytes, the writes to a 40 byte characteristic will be split in
2 consecutive writes.
With this commit these writes are recorded at the server device
(peripheral) end, and later applied.
Task-number: QTBUG-96688
Change-Id: I43c261c9ea39cca7c744af3222959c85a57ba11d
Reviewed-by: Andreas Buhr <andreas.buhr@qt.io>
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
(cherry picked from commit 38562c2ba5c3d25127e1a845da673299b40a6473)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Introduce a separate worker that will do all the system calls in a
separate thread and emit a signal once it's done.
This will allow to avoid the crashes caused by disconnectFromDevice()
being called while connection is still in progress and spinning in the
QWinRTFunctions::await() method.
Basically this patch moves the connection code to a separate worker,
and introduces new macros to handle the errors.
It also makes use of the new early return condition of
QWinRTFunctions::await() that was introduced in
1f86957f1dd14cc538e7ad9ffee4eb63001af407.
As a drive-by: increased the characteristics read timeout, because
the initial one was not always enough even for a turned-on device.
Apart from that this patch also solves some other issues and crashes
that could happen due to async nature of some calls. For example:
- handle the fact that service discovery might finish after the
device was disconnected. No need to notify about discovered
services in this case.
- add missing checks for thisPtr != nullptr in some callbacks that
capture thisPtr.
Task-number: QTBUG-96057
Change-Id: Ia2d044a89e3427a53d0879e045b6230d16bac3ce
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
(cherry picked from commit a00ffdfc3569a5741bc42739570dea2ec52b7f0f)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
| |
Change-Id: I05062d40a6ae8b09f0b267dff2203f36c885d23e
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
(cherry picked from commit d6dc79a13c9066b4c5cee217524da02f28dbf359)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
| |
Change-Id: Iaa73420d1fd3c3f40a508f36cc3d1efa307ccd18
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
(cherry picked from commit b0816c6a5a8599025f0329e74127217e257fbfef)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The BT LE connectToDevice() method on Windows was a synchronous
operation for the caller by blocking while spinning the event loop
to keep rest of the application responsive.
Other platforms behave differently. This commit makes the connect
call to return immediately while scheduling the connection in the
background.
The QTBUG-83633 was originally about slightly different crash which
seems not be reproducible anymore, but this crash was found while
investigating that and is investigated in that item.
Task-number: QTBUG-83633
Change-Id: I092a94f2437351d27da758db6746f5b24d5fa9c7
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
(cherry picked from commit 3fc3716e0cd209cd9475d632925a9148b40b2f1d)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
| |
The limitation to paired devices seems to be indeed present when
using Qt 5 UWP BT stack, but with Qt 6 Windows BT stack one can
also see the unpaired devices.
Change-Id: I034b997567bd96f22586c33c19a8aa03b8fdc58f
Reviewed-by: Andreas Buhr <andreas.buhr@qt.io>
Reviewed-by: Ivan Solovev <ivan.solovev@qt.io>
(cherry picked from commit f01425d4d8a47921a43e2b74cc662116d1bb68b5)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch introduces some minor cleanups:
* Fix used error code in case the remote device address is invalid.
* Introduce a helper function to handle connection errors. This allows
to avoid code duplications.
* Simplify CHECK_FOR_DEVICE_CONNECTION_ERROR_IMPL macro to use the new
helper function.
* Minor formatting and indentation cleanups.
Change-Id: I3c679bef56f719c2e97dc9399c3bae33032f3861
Reviewed-by: Juha Vuolle <juha.vuolle@insta.fi>
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
(cherry picked from commit bcaae09e94373d45ac62d283b404f3b9c02cde30)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
| |
This commit amends 83a845aa0e5bb155fae3f1d5d27bb80801f90935.
The callback can be called after the worker was deleted.
Task-number: QTBUG-96057
Change-Id: Ifbd58b240667bd5ff805b4250cf98a9fd2f96e90
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
(cherry picked from commit 3573702aa81f3f7ea20e947dbd27c5d1122cc42a)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
| |
There were few plain qDebugs and qWarnings in the bluetooth code
which content-wise seem indistinguishable from categorized logging
in the same code.
Change-Id: I0a1a5c7fb14bd5d8b767a5f982ed5c2b3768f265
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
(cherry picked from commit a82c068a8ce41f92816c015e9dc5957f7c3ec654)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The connection method was infinitely trying to connect to a specified
bluetooth device, which does not make much sense and could lead to the
application being stuck.
This patch limits the connection attempts to a reasonable amount of
time. If the connection was not established within this time,
ConnectionError is set and controller state is reset to UnconnectedState
Fixes: QTBUG-80719
Fixes: QTBUG-89149
Change-Id: Ib8efb690a8b0485c8e9d4844799c7332ab81bf97
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
(cherry picked from commit 007dcbf074a9e4d72e2a29a4a28ac5e502830e20)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
| |
Change-Id: Ia6fd8e522798ef9736f3dfe559f69d4ee75b2f5b
Reviewed-by: Ivan Solovev <ivan.solovev@qt.io>
(cherry picked from commit 75c41779262a7aec38f46b6e1598a339a6ab759c)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
| |
Change-Id: I231ed4f6b3f8a7826730e0073eb817a1231cc94a
Reviewed-by: Ivan Solovev <ivan.solovev@qt.io>
(cherry picked from commit ceee32505e5aba407039eeaff503e14c4c71c6d1)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
| |
Change-Id: I6bd8a15d2d7bbdf3133993335c91dd47f8bc23fe
Reviewed-by: Ivan Solovev <ivan.solovev@qt.io>
(cherry picked from commit 58f7f0a6cdb29d3a63a5dfd2714ba82245370beb)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
If 'inquiryLength' was ignored. This change is to be revisited
after the official release of macOS 12 - it could be a bug in beta
versions and all this additional timer machinery is a waste.
The fact I was able to observe the same problem with 10.15.7
is quite troublesome though.
Fixes: QTBUG-95960
Task-number: QTBUG-95686
Change-Id: I56685e07791dd751aec81bebbeefde19d31555df
Reviewed-by: Ivan Solovev <ivan.solovev@qt.io>
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
(cherry picked from commit cf8ade9fd809e62cb61bb897b3789c75a48f5996)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
| |
The qmake manual is a separate module that must be
in the depends list.
Task-number: QTBUB-96181
Change-Id: I5d20539de93789e9f6c123284cd47fd3e4b7ebca
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
(cherry picked from commit c27804dec55aa01b57123a3a3dd9d6d77c88f11c)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
| |
initializeBluez5() takes care of it now.
Task-number: QTBUG-75342
Change-Id: I5c8f3594e7f0c862f6a513d28467d5c9b31f9e40
Reviewed-by: Andreas Buhr <andreas.buhr@qt.io>
(cherry picked from commit 160c07a275787ff227e8bf3a8b325b83f8b41583)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
| |
qt5/qtconnectivity/src/bluetooth/doc/src/bluetooth-cpp.qdoc:27: (qdoc) warning: Can't link to 'Qt Bluetooth QML Types'
qt5/qtconnectivity/src/bluetooth/doc/src/bluetooth-index.qdoc:28: (qdoc) warning: Can't link to 'qmake'
qt5/qtconnectivity/src/bluetooth/doc/src/bluetooth-index.qdoc:28: (qdoc) warning: Can't link to 'Build with CMake'
Task-number: QTBUG-96181
Change-Id: Ia5e9296f91e392aba59f555f6e93dcbe054f08cc
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
(cherry picked from commit 1bc0261f928da78aafabeac2373bb207092f3ca6)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
There was a naming asymmetry in QBluetoothSocketBasePrivate:
The receiving buffer was named "buffer" while the sending buffer
was named "txBuffer". This was really annoying. This patch renames
the receiving buffer to "rxBuffer" so we have symmetric names:
"rxBuffer" / "txBuffer".
Change-Id: Ifbd5032cd5f6229543525496f6f656b7b7fc2e25
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
(cherry picked from commit dfa11d982c8414083d6ed777f743cd078e53f972)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
A lot of variables and methods were doubled, having
one for BlueZ4 and one for BlueZ5. Having dropped support for BlueZ4,
there is only the Bluez5 variant left. The "Bluez5" part of their
name is not required any more. This patch removes it.
Task-number: QTBUG-75342
Change-Id: I4c27cddbcca465b877cb7f2b7372a85a38de0076
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
(cherry picked from commit a3ac0c1c4f52a882a0223310108c05b7d85ccc1e)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
| |
The BlueZ4 DBUS interface is described in XML files.
After removal of BlueZ4 support, this patch removes these.
Task-number: QTBUG-75342
Change-Id: Ib6da83d2dd6cb5c5c3875d1a717bd8e30a617eb4
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
(cherry picked from commit 69b4f604744322699abb8e4baffbe38d60c504f5)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
| |
Even though BlueZ 4 is no longer supported, detection for
it was still in the code. This patch removes it.
Task-number: QTBUG-75342
Change-Id: I274993a93404603a51499f8ea967193b450bb6da
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
(cherry picked from commit 84a66e212fdfe01ba7ddc9da2e380022305cde41)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
| |
This patch removes the BlueZ 4 code paths in QLowEnergyController.
Task-number: QTBUG-75342
Change-Id: I02482b508a05914f6c4b15d5d33034d86c3df988
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
(cherry picked from commit 20fbdb4ac7ec9528a54cdc776f3d61a64427cfc9)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
| |
Task-number: QTBUG-75342
Change-Id: Iec175eccb4e41ab7e1a93a79595fafe1cad6ee18
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
(cherry picked from commit 5f5778ed6eda8c682c8e317bd3ad16eefb1f7ea2)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
| |
Task-number: QTBUG-75342
Change-Id: Iabaa559747de369571be64be87da8b0200470ead
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
(cherry picked from commit fbaf177a6f71fbc79ab2670f4a27b9669285829d)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
qt5/qtconnectivity/src/bluetooth/qlowenergydescriptor.cpp:47: (qdoc) warning: Can't link to 'handle()'
qt5/qtconnectivity/src/bluetooth/qlowenergycharacteristic.cpp:46: (qdoc) warning: Can't link to 'handle()'
Also, dropped unnecessary \l commands against potential auto-links.
Task-number: QTBUG-95860
Change-Id: I3b0286703b65365fef202438d21e4eca446a1c2f
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
(cherry picked from commit 72a11fd0a35e9048d1646c93ae0a4795018a58e0)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
| |
Fixes: QTBUG-94894
Change-Id: I628af802fc589e163dc9087fa7fc3fd7db71caba
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
(cherry picked from commit fdf6b6bd84f3ae853b97946f2e9ea3d7a5c35426)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
| |
Better styling, working links.
Fixes: QTBUG-94905
Change-Id: I3526c64fd15897bd0e0e33c4f78c9852d54fd2ae
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
(cherry picked from commit 391fd67c685bc8fe1f769b5ae3c65095f1322ad0)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
| |
People reading the introduction are probably not interested
in changes long ago.
Task-number: QTBUG-94894
Change-Id: Ie9511d90aee6ce356f0f6ad7a4c91d518bc71e97
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
(cherry picked from commit f58597edfe7b228698d3977fce498d292259c092)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
| |
The QML interface to Qt Bluetooth was removed. This patch
removes some remainders in the documentation.
Task-number: QTBUG-94894
Change-Id: I4e4d0ae354ccc1b88aa8530b89e6786752b8af49
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
(cherry picked from commit 77c628bc7c7025361abce4a01496434e42bc21e5)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
| |
Fixes: QTBUG-94897
Change-Id: I70ee048a4cd31816c65ec8ea52b46605fd9396f8
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
(cherry picked from commit c3c01965562667a712e5d69cb8c8da2dc9c35854)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
| |
The public permission API is being postponed until 6.3, for now,
we can use the private API.
Change-Id: I46d49c44c9227e2260d599bfbb2f58ecfa4e6381
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
(cherry picked from commit 236809d7a5d4aefbb2f32df6f5f1ef7e3f712e82)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
| |
Fixes: QTBUG-95349
Change-Id: Ie1a7c71a33e5d620d914ffce193a89d080d81af9
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
(cherry picked from commit eef11fe06c8458b9668f367502a479497831db62)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
operator<< was changed to be a hidden friend in QtBluetooth.
Two properties of operator<< were desired:
First, it should be a hidden friend. This implies that
it is defined inline.
Second, its implementation should not part of the public interface.
To achieve both, an indirection and the static method
streamingoperator() were introduced.
This patch changes its name to streamingOperator() to
adhere to Qt's camelCase coding style.
Change-Id: I4e01a81eac8261c5198cdb832c1345efbf647419
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
(cherry picked from commit cef4a5e9d55940140f27d98931b2a6778d154209)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
| |
Task-number: QTBUG-90920
Change-Id: I1d99a7f6c6cd0f5f890c65c052ea8ceb87760275
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
(cherry picked from commit 2e8e58b0eca8b060e02e6b65b57bf14a6a6313ed)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
| |
Task-number: QTBUG-90760
Change-Id: I6a75ec72aaf8e23ba415edf9b7fdfa7f220fc10d
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
(cherry picked from commit cba00a4ccdf7e973b10f2a2dad490e0e60fa541c)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
| |
Makes little sense to report the 'default' MTU from the 'didDisconnect' callback.
Change-Id: Id186431234d22695409287847bb8614cf3a7ad7b
Reviewed-by: Andreas Buhr <andreas.buhr@qt.io>
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
(cherry picked from commit ebae4d82705ccff3d3bc32bce88bf72eb11833d9)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
| |
Task-number: QTBUG-88791
Change-Id: Ie4dad8be6871e4aa638e234b36fd481f32b05724
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
(cherry picked from commit 0359dce1d420acd4d33be43cb70b35674870338e)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bluetooth seems to be non-functional when location services are
disabled. This is not documented in Android's documentations,
but several bug entries exist about this which are closed
as "works as intended". See the linked bug entry for details.
Our code thus tries to detect whether location services are enabled.
This patch improves the detection of enabled location services.
While the previous code did only check for GPS and Network
location providers, the new code should detect any enabled
location provider.
Fixes: QTBUG-90760
Change-Id: I0c670296d0af62161dbc3fca40889996fa91f0ca
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
(cherry picked from commit 4fdcd2d8d2c2b47ec142b744ad291c1e134db7d4)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Having this method implies we create our peripheral with a unique
identifier and support state restoration, which is not true at
the moment. CoreBluetooth angrily warns us about missing identifier
and useless method, so we remove it for now.
Change-Id: I186549a3b758ad4e5173e873954e95478969dc21
Reviewed-by: Andreas Buhr <andreas.buhr@qt.io>
(cherry picked from commit f26b0814141f4a01c28d26478d8c661503d4bed2)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|