diff options
Diffstat (limited to 'src/bluetooth/qlowenergycontroller_winrt.cpp')
-rw-r--r-- | src/bluetooth/qlowenergycontroller_winrt.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/bluetooth/qlowenergycontroller_winrt.cpp b/src/bluetooth/qlowenergycontroller_winrt.cpp index 1e06dedb..c9c30b44 100644 --- a/src/bluetooth/qlowenergycontroller_winrt.cpp +++ b/src/bluetooth/qlowenergycontroller_winrt.cpp @@ -39,6 +39,9 @@ #include "qlowenergycontroller_p.h" +#ifdef CLASSIC_APP_BUILD +#define Q_OS_WINRT +#endif #include <QtCore/qfunctions_winrt.h> #include <QtCore/QtEndian> #include <QtCore/QLoggingCategory> @@ -339,6 +342,7 @@ void QLowEnergyControllerPrivate::connectToDevice() emit q->connected(); } else if (state == QLowEnergyController::ConnectedState && status == BluetoothConnectionStatus::BluetoothConnectionStatus_Disconnected) { + setError(QLowEnergyController::RemoteHostClosedError); setState(QLowEnergyController::UnconnectedState); emit q->disconnected(); } @@ -430,6 +434,10 @@ void QLowEnergyControllerPrivate::disconnectFromDevice() Q_Q(QLowEnergyController); setState(QLowEnergyController::UnconnectedState); emit q->disconnected(); + if (mDevice && mStatusChangedToken.value) { + mDevice->remove_ConnectionStatusChanged(mStatusChangedToken); + mStatusChangedToken.value = 0; + } } ComPtr<IGattDeviceService> QLowEnergyControllerPrivate::getNativeService(const QBluetoothUuid &serviceUuid) |