| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
| |
Task-number: QTBUG-70264
Change-Id: I23d3be2fa247a7c12ead7f7a8e599a3869b44e09
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
|
|
|
|
| |
Change-Id: I49653a6ac6fa004987d32365f96a6407f50e207c
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
|
|\
| |
| |
| | |
Change-Id: I7c24df8729794b8241572bddd8d8cd0465993b42
|
| |\
| | |
| | |
| | | |
Change-Id: I7ea913083777358265f62b4bf6beed3f2db0ebe1
|
| | |
| | |
| | |
| | |
| | |
| | | |
Change-Id: Ie610cc0935594bda8c05cfad41dd49218e1930f1
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This was caused by mindless copy & paste.
Change-Id: I129a5f52753e7aa825cf7f6337b5f24644d9b9a0
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | | |
Change-Id: I4f33ec95b2af858b8d0c3ff60882b550a91563df
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Since BlueZ 5.48 battery services are no longer
exposed via the generic GATT interface but have their own
dedicated Battery1 interface. This patch transforms the
dedicated interface back into the previous behavior.
Essentially we are emulating the old interface to
ensure that the QLowEnergyService user does not have to
distinguish.
Fixes: QTBUG-70222
Change-Id: Ib9fef41cf16f7562f169f51ee45b19f52de6a0c0
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
|
| | |
| | |
| | |
| | |
| | | |
Change-Id: I8a30d5d12fad73a714159ebe3e1d54e8c0b3e407
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
|
|\| |
| | |
| | |
| | | |
Change-Id: I576079e30f4075117ca764f45198bc1e5269d887
|
| |/
| |
| |
| |
| |
| | |
Task-number: QTBUG-70162
Change-Id: I4556cbf1965121b042a55e3e36e24383f8fa8dc9
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
Remove unused section "C++ Tutorial".
Change-Id: I55ba7286c00ae4573d97f6244dff1f589634b949
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I2a7b8c403ca466998ddcbd8496c31feb9856f0ad
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: If7adc165e063445ee0c34291a3e3840ddae0f570
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This compile failure used to be a warning only but these days is a failure
for clang:
> /home/ablasche/dev/qt/qt512/qtconnectivity/config.tests/bluez/main.cpp:36:11: error: taking the address of a temporary object of type 'bdaddr_t' [-Waddress-of-temporary]
> bacmp(BDADDR_ANY, BDADDR_LOCAL);
> ^~~~~~~~~~
> /usr/include/bluetooth/bluetooth.h:310:23: note: expanded from macro 'BDADDR_ANY'
> #define BDADDR_ANY (&(bdaddr_t) {{0, 0, 0, 0, 0, 0}})
> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> /home/ablasche/dev/qt/qt512/qtconnectivity/config.tests/bluez/main.cpp:36:23: error: taking the address of a temporary object of type 'bdaddr_t' [-Waddress-of-temporary]
> bacmp(BDADDR_ANY, BDADDR_LOCAL);
> ^~~~~~~~~~~~
> /usr/include/bluetooth/bluetooth.h:312:23: note: expanded from macro 'BDADDR_LOCAL'
> #define BDADDR_LOCAL (&(bdaddr_t) {{0, 0, 0, 0xff, 0xff, 0xff}})
> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> 2 errors generated.
The need for BDADDR_NONE is obsolete now since the test does not rely on
those defines anymore. The main purpose is to check that bluetooth.h
is available which is already tested by using bacmp and bdaddr_t.
Change-Id: I09da4dc5cd3945ffae7819628b45477a52789006
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Disconnecting from central devices invalidates the peripheral's service.
The change ensures that the service is recreated upon disconnection.
Change-Id: I2defc6ffb4c9f23d70b6f181c25f47746b3859a4
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
and invalidate the state once they have been disconnected. This affects
Android, Bluez and Apple code lines.
Change-Id: I2b87577930b6ae78e7ef7ef061e597beba946594
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
|
|\|
| |
| |
| | |
Change-Id: I20db491b185972148ad3fbe6953e5d6ce2889a7f
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
QMetaEnum helps us avoid writing separate strings for each error
description; it's not very verbose but it's way better than saying
that most of the errors are "unknown".
Change-Id: I61aaf3be6982a2987aabfa6be3192e1afb7df17a
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
LEController in peripheral mode uses QBluetoothSocket::setSocketDescriptor().
Since QBluetoothsocket was ported to DBus (enabled when Bluez is 5.46 or later)
setSocketDescriptor()/server mode does not work. That's why
f602d7fef2e2f067e123e5740d4b0bf16c4ec0e2 made sure that QBluetoothServer
uses the old raw socket implementation. Unfortunately QLowEnergyController
was forgotten and needs the same workaround.
Change-Id: I6ba3654ee199d0ffcf4b69f16dfbc5508d6b13d4
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Some cases use the Q_PRIVATE_SLOT logic which does not require QObject
inheritance. Those cases were converted to lambda logic to avoid need for
QObject inheritance.
The Q_PRIVATE_SLOT macro was removed from qbluetoothdevicediscoveryagent.h.
This is not a BC problem because the macro expands to nothing. Only
moc recognizes the pattern.
Change-Id: Ic7cb4cde397f9b230b6fd0b4046e59e504583e58
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Android internals seem to require it. All other existing test related
registrations are removed as they are obsolete after this patch.
Change-Id: I49aa3b79bdc8ca5f463f4f7a88cbb612db39d15e
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I7dd2d055c8d667f049d7cb2c371619137bf76030
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: Iaaf169b1ac9b3d4c348d9cabf737b395198a921f
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
For iBeacons and such, it's normal to keep discovering indefinitely,
while the advertisement can sometimes carry changing payload data.
This signal helps keep the UI up-to-date.
Changed setManufacturerData to return a bool indicating whether the
data was really modified or not, to avoid sending deviceUpdated
in case it was not changed.
For convenience QBluetoothDeviceInfo::manufacturerData() was added.
WinRT and Apple platforms do not emit the new signal yet and relevant
TODO items were added.
Done-with: Shawn Rutledge <shawn.rutledge@qt.io>
Task-number: QTBUG-46008
Task-number: QTBUG-69747
Change-Id: I6d6b373f6cc5ee3dd6af2ad05d8640dbd25c5d6a
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
Amends 0f930cddefe386c6b6f65b8b11342c9e76876a9b
Change-Id: Ic3769d30198d3607a1fee218d9f2e90b9addf2d3
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
QLowEnergyController::createCentral() is the official API to do the same.
Change-Id: Idbd26d201b24add6697f6f9cdf1194511c160273
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: Ibc8a3e86b7671381c5a00f6421878961e8e2f4a6
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
|
|\|
| |
| |
| | |
Change-Id: I3ea075969f9a9b8e94a34b3c7cd92aaea72175af
|
| |
| |
| |
| |
| |
| | |
Task-number: QTBUG-69700
Change-Id: Ib8082156f81949926380e4e296d91c8dfc01b231
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
The initial patch was contributed by Thiemo van Engelen.
Change-Id: I45fad793ba092ab2820e606d8bf8807afa3e911e
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I252cc1bf59550d06a403bf73d697e7297c0a6648
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The API was introduced earlier than 5.46 already but so far it has not
been tested. For now we use 5.46.
There is another dependency to QLowEnergyController's GATT custom
implementation. Custom GATT only works with the QBluetoothSocket
raw socket implementation. By setting the minimal version for
QBluetoothSocket slightly higher than the 5.42 version for custom
gatt, we ensure that the new dbus socket code is never run together
with the GATT custom stack.
Task-number: QTBUG-68550
Change-Id: I240f7fc8acb116c71e7601df8baf82f61e53c33e
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
or better ensure that the DBus based socket is not used for QBluetoothServer.
The server implementation will continue to use the raw socket implementation
for the foreseeable future. The reason being the DBus version not yet working.
convertAddress() in the server cpp was removed because it was a duplicate
implementation. Including qbluetoothsocket_bluez_p.h pulls in the
qbluetoothsocketbase_p.h which provides the official convertAddress()
implementations.
Unfortunately this requires a new ctor for QBluetoothSocket which is only
specified for BlueZ builds. It is used to permit QBluetoothServer to set
the correct dptr for QBluetoothSocket.
Task-number: QTBUG-68550
Change-Id: I19298f75e9bc2ab93322d9f34e1816ad733ac6d9
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: Ic0e9a18b73915fee1458578ca49359a3647159c1
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: Ifb9531830ef11d0e49c205eada5884906051e467
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
In preparation for following patches which will add proper
support for strings, sequences, alternatives, and urls as SDP
attributes, their base IDs as well 2 helper functions
(typeIsOfBase and getLEngthForBaseType) are added.
Change-Id: I40982c83435985a7f57d7854ac1e353350c29da5
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
- Replace old connect syntax
- Clean up includes
- Replace 0 with nullptr
- Add socket error handling
Change-Id: Id4c7634db29a23184d3ce2d92ffa39c71505de12
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
QBluetoothSocketPrivateWinRT::connectToServiceHelper was
missing one hr check.
Change-Id: Iae357df99881874b2d672dde6625e36d6221de0f
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Instead of duplicating that logic everywhere, it can be handled
in one place.
Additionally setOpenMode should be called before setSocketState
so that every member variable is changed, before signals are
emitted.
Change-Id: Ic1d4317ba31046d78d97874ec00c59481a67bb50
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
To avoid unnecessary copies, const is used wherever possible.
Change-Id: Ic743716512751cfd24fad5bd37c244b115dd26fe
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |
| |
| |
| |
| |
| | |
Change-Id: I227f9bd81e666d398366fc573573a0df973a5ff8
Reviewed-by: Andre de la Rocha <andre.rocha@qt.io>
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
This is a bug introduced by 45c843ceca9fac1aa1246043730eaeeb3ed23235
where this backend was simply forgotten.
Change-Id: I11c9eb1476a3ded7d0c12aaf1d203ff61194f3c4
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
This only happens when QBluetoothSocket was used in connection with
QBluetoothServer.
Change-Id: I9fcc3026415f815f9a44a10d721056437465f8b8
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I7ec6b6ef65a8754b22d1b97e508d7231b2a410c0
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I9f28e94556e596794e52bd571b36590487bd3cc1
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Microsoft changed the default behavior so that the device is no longer
radio discoverable, when advertising is started.
By creating the service provider from the Xaml thread we avoid messages,
that it cannot be used in the background by default (even though
this does not seem to have an effect on its functionality).
Change-Id: Ib199adc53ef02b14fcea2884fe4359ad2fe81b8e
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
|\|
| |
| |
| | |
Change-Id: I0f03c92b104e3d8280c0647cd13ce92c505e6472
|