diff options
author | Tobias Koenig <tobias.koenig.qnx@kdab.com> | 2013-02-08 13:35:28 +0100 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2013-02-11 08:57:38 +0100 |
commit | d2b0a345ab65eca43d9b6c3b3b0020abb8b115e7 (patch) | |
tree | 46ca535e5ac3355ed8b1f42f6519104f422acd2e | |
parent | b19ec14a62dbc8e5f5d2c20335ccd9e609321b6d (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.cpp | 9 | ||||
-rw-r--r-- | src/plugins/blackberry/camera/bbcamerasession.h | 1 |
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(); |