summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTobias Koenig <tobias.koenig.qnx@kdab.com>2013-02-08 13:35:28 +0100
committerThe Qt Project <gerrit-noreply@qt-project.org>2013-02-11 08:57:38 +0100
commitd2b0a345ab65eca43d9b6c3b3b0020abb8b115e7 (patch)
tree46ca535e5ac3355ed8b1f42f6519104f422acd2e
parentb19ec14a62dbc8e5f5d2c20335ccd9e609321b6d (diff)
Blackberry: Restart camera viewfinder after standby
Listen to the CAMERA_STATUS_POWERUP signal, which is sent after standby, and trigger a restart of the viewfinder in this case. Change-Id: I426f23657844bb270ddfd0e4bfb35880040aa583 Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
-rw-r--r--src/plugins/blackberry/camera/bbcamerasession.cpp9
-rw-r--r--src/plugins/blackberry/camera/bbcamerasession.h1
2 files changed, 10 insertions, 0 deletions
diff --git a/src/plugins/blackberry/camera/bbcamerasession.cpp b/src/plugins/blackberry/camera/bbcamerasession.cpp
index 9956bd007..be352b197 100644
--- a/src/plugins/blackberry/camera/bbcamerasession.cpp
+++ b/src/plugins/blackberry/camera/bbcamerasession.cpp
@@ -924,6 +924,12 @@ void BbCameraSession::deviceOrientationChanged(int angle)
camera_set_device_orientation(m_handle, angle);
}
+void BbCameraSession::handleCameraPowerUp()
+{
+ stopViewFinder();
+ startViewFinder();
+}
+
bool BbCameraSession::openCamera()
{
if (m_handle != CAMERA_HANDLE_INVALID) // camera is already open
@@ -1011,6 +1017,9 @@ static void viewFinderStatusCallback(camera_handle_t handle, camera_devstatus_t
if (status == CAMERA_STATUS_FOCUS_CHANGE) {
BbCameraSession *session = static_cast<BbCameraSession*>(context);
QMetaObject::invokeMethod(session, "handleFocusStatusChanged", Qt::QueuedConnection, Q_ARG(int, value));
+ } else if (status == CAMERA_STATUS_POWERUP) {
+ BbCameraSession *session = static_cast<BbCameraSession*>(context);
+ QMetaObject::invokeMethod(session, "handleCameraPowerUp", Qt::QueuedConnection);
}
}
diff --git a/src/plugins/blackberry/camera/bbcamerasession.h b/src/plugins/blackberry/camera/bbcamerasession.h
index 647e324d6..15126eed7 100644
--- a/src/plugins/blackberry/camera/bbcamerasession.h
+++ b/src/plugins/blackberry/camera/bbcamerasession.h
@@ -177,6 +177,7 @@ private slots:
void handleVideoRecordingPaused();
void handleVideoRecordingResumed();
void deviceOrientationChanged(int);
+ void handleCameraPowerUp();
private:
bool openCamera();