summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorOliver Wolff <oliver.wolff@qt.io>2016-12-05 13:35:38 +0100
committerJani Heikkinen <jani.heikkinen@qt.io>2016-12-07 05:56:31 +0000
commitb6bd4008c01faa4af6620a1a652a6f88ef3c3a8a (patch)
tree7e402e02da27296de128497b1a1f6518aeae216b
parent966459d309d5717626cef9fc7f347e21001222bf (diff)
winrt: qRegisterMetaType for QLowEnergyCharacteristic/QLowEnergyDescriptor
As the signals about read/written characteristics and descriptors are emitted from a different thread (XAML thread) the types have to be registered in order to make the queued connection work. Task-number: QTBUG-57385 Change-Id: I4542c8d1be03d2d3fe1b0a69b94ef0a2ff916026 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
-rw-r--r--src/bluetooth/qlowenergycontroller_p.h5
-rw-r--r--src/bluetooth/qlowenergycontroller_winrt.cpp3
2 files changed, 8 insertions, 0 deletions
diff --git a/src/bluetooth/qlowenergycontroller_p.h b/src/bluetooth/qlowenergycontroller_p.h
index f6bf0ae3..dcbdcdb9 100644
--- a/src/bluetooth/qlowenergycontroller_p.h
+++ b/src/bluetooth/qlowenergycontroller_p.h
@@ -457,6 +457,11 @@ Q_DECLARE_TYPEINFO(QLowEnergyControllerPrivate::Attribute, Q_MOVABLE_TYPE);
QT_END_NAMESPACE
+#ifdef QT_WINRT_BLUETOOTH
+Q_DECLARE_METATYPE(QLowEnergyCharacteristic)
+Q_DECLARE_METATYPE(QLowEnergyDescriptor)
+#endif // QT_WINRT_BLUETOOTH
+
#endif // QT_OSX_BLUETOOTH || QT_IOS_BLUETOOTH
#endif // QLOWENERGYCONTROLLERPRIVATE_P_H
diff --git a/src/bluetooth/qlowenergycontroller_winrt.cpp b/src/bluetooth/qlowenergycontroller_winrt.cpp
index a39078df..d6fc4952 100644
--- a/src/bluetooth/qlowenergycontroller_winrt.cpp
+++ b/src/bluetooth/qlowenergycontroller_winrt.cpp
@@ -277,6 +277,9 @@ QLowEnergyControllerPrivate::QLowEnergyControllerPrivate()
error(QLowEnergyController::NoError)
{
qCDebug(QT_BT_WINRT) << __FUNCTION__;
+
+ qRegisterMetaType<QLowEnergyCharacteristic>();
+ qRegisterMetaType<QLowEnergyDescriptor>();
}
QLowEnergyControllerPrivate::~QLowEnergyControllerPrivate()