diff --git a/app/src/main/java/org/linphone/activities/voip/viewmodels/ControlsViewModel.kt b/app/src/main/java/org/linphone/activities/voip/viewmodels/ControlsViewModel.kt index ce8a1bf25..2c32b52e2 100644 --- a/app/src/main/java/org/linphone/activities/voip/viewmodels/ControlsViewModel.kt +++ b/app/src/main/java/org/linphone/activities/voip/viewmodels/ControlsViewModel.kt @@ -540,12 +540,12 @@ class ControlsViewModel : ViewModel() { isVideoEnabled.value = enabled showTakeSnapshotButton.value = enabled && corePreferences.showScreenshotButton - val isVideoBeingSent = if (coreContext.core.currentCall?.conference != null) { - val videoDirection = coreContext.core.currentCall?.currentParams?.videoDirection - videoDirection == MediaDirection.SendRecv || videoDirection == MediaDirection.SendOnly + val videoDirection = if (coreContext.core.currentCall?.conference != null) { + coreContext.core.currentCall?.currentParams?.videoDirection } else { - true + coreContext.core.currentCall?.params?.videoDirection } + val isVideoBeingSent = videoDirection == MediaDirection.SendRecv || videoDirection == MediaDirection.SendOnly isSendingVideo.value = isVideoBeingSent isSwitchCameraAvailable.value = enabled && coreContext.showSwitchCameraButton() && isVideoBeingSent } diff --git a/app/src/main/res/layout/voip_single_call_fragment.xml b/app/src/main/res/layout/voip_single_call_fragment.xml index 643b374d2..42c3ae54a 100644 --- a/app/src/main/res/layout/voip_single_call_fragment.xml +++ b/app/src/main/res/layout/voip_single_call_fragment.xml @@ -246,7 +246,7 @@ android:onClick="@{() -> controlsViewModel.switchCamera()}" android:padding="10dp" android:src="@drawable/icon_call_camera_switch" - android:visibility="@{controlsViewModel.isVideoEnabled && !callsViewModel.currentCallData.isRemotelyPaused && !callsViewModel.currentCallData.isPaused && controlsViewModel.isSwitchCameraAvailable && !controlsViewModel.pipMode ? View.VISIBLE : View.GONE, default=gone}" + android:visibility="@{controlsViewModel.isSendingVideo && !callsViewModel.currentCallData.isRemotelyPaused && !callsViewModel.currentCallData.isPaused && controlsViewModel.isSwitchCameraAvailable && !controlsViewModel.pipMode ? View.VISIBLE : View.GONE, default=gone}" app:layout_constraintEnd_toEndOf="@id/local_preview_video_surface" app:layout_constraintTop_toTopOf="@id/local_preview_video_surface" />