diff options
author | Lorn Potter <lorn.potter@nokia.com> | 2011-11-03 16:08:42 +1000 |
---|---|---|
committer | Qt by Nokia <qt-info@nokia.com> | 2011-11-03 09:00:30 +0100 |
commit | 3980ab479ab08cdd5f1c6c16e4178d1e7d3cf80d (patch) | |
tree | 32f8c6ce117d1a053f1d414606db02a2523fca58 | |
parent | 471bc0a38fce0b2d4ab9784cd61040bb90a63b68 (diff) |
make sure newSensorGestureAvailable gets signaled
signaling needs to begin in the backend singleton
Change-Id: I63453a919a0b5c9e1f093c6269bdfc171a592af9
Sanity-Review: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Lincoln Ramsay <lincoln.ramsay@nokia.com>
4 files changed, 10 insertions, 3 deletions
diff --git a/src/sensors/gestures/qsensorgesturemanager.cpp b/src/sensors/gestures/qsensorgesturemanager.cpp index a0430e15..cdc3f5fd 100644 --- a/src/sensors/gestures/qsensorgesturemanager.cpp +++ b/src/sensors/gestures/qsensorgesturemanager.cpp @@ -68,6 +68,8 @@ Q_GLOBAL_STATIC(QSensorGestureManagerPrivate, sensorGestureManagerPrivate) QSensorGestureManager::QSensorGestureManager(QObject *parent) : QObject(parent) { + connect(sensorGestureManagerPrivate(),SIGNAL(newSensorGestureAvailable()), + this,SIGNAL(newSensorGestureAvailable())); } /*! @@ -88,9 +90,7 @@ QSensorGestureManager::~QSensorGestureManager() bool QSensorGestureManager::registerSensorGestureRecognizer(QSensorGestureRecognizer *recognizer) { bool ok = sensorGestureManagerPrivate()->registerSensorGestureRecognizer(recognizer); - if (ok) - Q_EMIT newSensorGestureAvailable(); - else + if (!ok) delete recognizer; return ok; diff --git a/src/sensors/gestures/qsensorgesturemanagerprivate.cpp b/src/sensors/gestures/qsensorgesturemanagerprivate.cpp index 1ac21da2..1a8ffe38 100644 --- a/src/sensors/gestures/qsensorgesturemanagerprivate.cpp +++ b/src/sensors/gestures/qsensorgesturemanagerprivate.cpp @@ -145,6 +145,7 @@ bool QSensorGestureManagerPrivate::registerSensorGestureRecognizer(QSensorGestur Q_ASSERT (!registeredSensorGestures.contains(recognizer->id())); recognizer->setParent(0); registeredSensorGestures.insert(recognizer->id(),recognizer); + Q_EMIT newSensorGestureAvailable(); return true; } diff --git a/src/sensors/gestures/qsensorgesturemanagerprivate_p.h b/src/sensors/gestures/qsensorgesturemanagerprivate_p.h index b97894e7..a166fac7 100644 --- a/src/sensors/gestures/qsensorgesturemanagerprivate_p.h +++ b/src/sensors/gestures/qsensorgesturemanagerprivate_p.h @@ -72,6 +72,8 @@ public: QStringList gestureIds(); QStringList knownIds; void initPlugin(QObject *o); +Q_SIGNALS: + void newSensorGestureAvailable(); }; #endif // QSENSORGESTUREMANAGERPRIVATE_P_H diff --git a/tests/auto/qsensorgestures/tst_qsensorgesturetest.cpp b/tests/auto/qsensorgestures/tst_qsensorgesturetest.cpp index 8f88425b..25033751 100644 --- a/tests/auto/qsensorgestures/tst_qsensorgesturetest.cpp +++ b/tests/auto/qsensorgestures/tst_qsensorgesturetest.cpp @@ -272,11 +272,14 @@ void Tst_qsensorgestureTest::tst_manager_registerSensorGestureRecognizer() void Tst_qsensorgestureTest::tst_manager__newSensorAvailable() { QSensorGestureManager manager; + QSensorGestureManager manager2; QSignalSpy spy_manager_available(&manager, SIGNAL(newSensorGestureAvailable())); + QSignalSpy spy_manager2_available(&manager2, SIGNAL(newSensorGestureAvailable())); manager.gestureIds(); QCOMPARE(spy_manager_available.count(),0); + QCOMPARE(spy_manager2_available.count(),0); QTest3Recognizer *recognizer = new QTest3Recognizer; recognizer->changeId("QtSensors.test4"); @@ -291,6 +294,7 @@ void Tst_qsensorgestureTest::tst_manager__newSensorAvailable() ok = manager.registerSensorGestureRecognizer(recognizer); QCOMPARE(ok, false); QCOMPARE(spy_manager_available.count(),1); + QCOMPARE(spy_manager2_available.count(),1); } |