diff options
Diffstat (limited to 'src/plugins/multimedia/android/mediacapture/qandroidcamera.cpp')
-rw-r--r-- | src/plugins/multimedia/android/mediacapture/qandroidcamera.cpp | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/plugins/multimedia/android/mediacapture/qandroidcamera.cpp b/src/plugins/multimedia/android/mediacapture/qandroidcamera.cpp index cd4ff6843..cadd72fb6 100644 --- a/src/plugins/multimedia/android/mediacapture/qandroidcamera.cpp +++ b/src/plugins/multimedia/android/mediacapture/qandroidcamera.cpp @@ -24,8 +24,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 @@ -99,6 +102,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) |