summaryrefslogtreecommitdiffstats
path: root/src/plugins/sensorgestures/qtsensors/qslamgesturerecognizer.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/sensorgestures/qtsensors/qslamgesturerecognizer.cpp')
-rw-r--r--src/plugins/sensorgestures/qtsensors/qslamgesturerecognizer.cpp14
1 files changed, 8 insertions, 6 deletions
diff --git a/src/plugins/sensorgestures/qtsensors/qslamgesturerecognizer.cpp b/src/plugins/sensorgestures/qtsensors/qslamgesturerecognizer.cpp
index 27ea950e..dd7bcd93 100644
--- a/src/plugins/sensorgestures/qtsensors/qslamgesturerecognizer.cpp
+++ b/src/plugins/sensorgestures/qtsensors/qslamgesturerecognizer.cpp
@@ -48,6 +48,7 @@ QT_BEGIN_NAMESPACE
QSlamSensorGestureRecognizer::QSlamSensorGestureRecognizer(QObject *parent) :
QSensorGestureRecognizer(parent),
+ orientationReading(0),
accelRange(0),
active(0),
lastX(0),
@@ -78,16 +79,15 @@ QString QSlamSensorGestureRecognizer::id() const
bool QSlamSensorGestureRecognizer::start()
{
- connect(QtSensorGestureSensorHandler::instance(),SIGNAL(orientationReadingChanged(QOrientationReading *)),
- this,SLOT(orientationReadingChanged(QOrientationReading *)));
-
- connect(QtSensorGestureSensorHandler::instance(),SIGNAL(accelReadingChanged(QAccelerometerReading *)),
- this,SLOT(accelChanged(QAccelerometerReading *)));
-
if (QtSensorGestureSensorHandler::instance()->startSensor(QtSensorGestureSensorHandler::Accel)) {
if (QtSensorGestureSensorHandler::instance()->startSensor(QtSensorGestureSensorHandler::Orientation)) {
active = true;
accelRange = QtSensorGestureSensorHandler::instance()->accelRange;
+ connect(QtSensorGestureSensorHandler::instance(),SIGNAL(orientationReadingChanged(QOrientationReading *)),
+ this,SLOT(orientationReadingChanged(QOrientationReading *)));
+
+ connect(QtSensorGestureSensorHandler::instance(),SIGNAL(accelReadingChanged(QAccelerometerReading *)),
+ this,SLOT(accelChanged(QAccelerometerReading *)));
} else {
QtSensorGestureSensorHandler::instance()->stopSensor(QtSensorGestureSensorHandler::Accel);
active = false;
@@ -132,6 +132,8 @@ void QSlamSensorGestureRecognizer::accelChanged(QAccelerometerReading *reading)
qreal z = reading->z();
//// very hacky
+ if (orientationReading == 0)
+ return;
if (orientationReading->orientation() == QOrientationReading::FaceUp) {
z = z - 9.8;
}