diff options
Diffstat (limited to 'src/multimedia/platform/android/mediacapture/qandroidcamera.cpp')
-rw-r--r-- | src/multimedia/platform/android/mediacapture/qandroidcamera.cpp | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/multimedia/platform/android/mediacapture/qandroidcamera.cpp b/src/multimedia/platform/android/mediacapture/qandroidcamera.cpp index 3bcc93564..0db9b7bbc 100644 --- a/src/multimedia/platform/android/mediacapture/qandroidcamera.cpp +++ b/src/multimedia/platform/android/mediacapture/qandroidcamera.cpp @@ -60,8 +60,11 @@ QAndroidCamera::~QAndroidCamera() void QAndroidCamera::setActive(bool active) { - if (m_cameraSession) + if (m_cameraSession) { m_cameraSession->setActive(active); + } else { + isPendingSetActive = active; + } } bool QAndroidCamera::isActive() const @@ -135,6 +138,11 @@ void QAndroidCamera::setCaptureSession(QPlatformMediaCaptureSession *session) connect(m_cameraSession, &QAndroidCameraSession::activeChanged, this, &QAndroidCamera::activeChanged); connect(m_cameraSession, &QAndroidCameraSession::error, this, &QAndroidCamera::error); connect(m_cameraSession, &QAndroidCameraSession::opened, this, &QAndroidCamera::onCameraOpened); + + if (isPendingSetActive) { + setActive(true); + isPendingSetActive = false; + } } void QAndroidCamera::setFocusMode(QCamera::FocusMode mode) |