void CameraControlImpl::OnConfigurationChange() { MOZ_ASSERT(NS_GetCurrentThread() == mCameraThread); MutexAutoLock lock(mListenerLock); DOM_CAMERA_LOGI("OnConfigurationChange : %zu listeners\n", mListeners.Length()); for (uint32_t i = 0; i < mListeners.Length(); ++i) { CameraControlListener* l = mListeners[i]; l->OnConfigurationChange(mCurrentConfiguration); } }
void CameraControlImpl::AddListenerImpl(already_AddRefed<CameraControlListener> aListener) { MutexAutoLock lock(mListenerLock); CameraControlListener* l = *mListeners.AppendElement() = aListener; DOM_CAMERA_LOGI("Added camera control listener %p\n", l); // Update the newly-added listener's state l->OnConfigurationChange(mCurrentConfiguration); l->OnHardwareStateChange(mHardwareState, mHardwareStateChangeReason); l->OnPreviewStateChange(mPreviewState); }