From 06054d11bcdb7028220333f04445f8ac31bbbc83 Mon Sep 17 00:00:00 2001 From: Margaux Clerc Date: Tue, 8 Jul 2014 11:57:43 +0200 Subject: [PATCH] Disable video button in pause --- src/org/linphone/InCallActivity.java | 24 ++++++++++++++++++++---- 1 file changed, 20 insertions(+), 4 deletions(-) diff --git a/src/org/linphone/InCallActivity.java b/src/org/linphone/InCallActivity.java index bb0bd526f..55d8e5d6e 100644 --- a/src/org/linphone/InCallActivity.java +++ b/src/org/linphone/InCallActivity.java @@ -91,7 +91,7 @@ public class InCallActivity extends FragmentActivity implements private StatusFragment status; private AudioCallFragment audioCallFragment; private VideoCallFragment videoCallFragment; - private boolean isSpeakerEnabled = false, isMicMuted = false, isVideoEnabled, isTransferAllowed, isAnimationDisabled; + private boolean isSpeakerEnabled = false, isMicMuted = false, isVideoEnabled, isPaused = false, isTransferAllowed, isAnimationDisabled; private ViewGroup mControlsLayout; private Numpad numpad; private int cameraNumber; @@ -310,7 +310,7 @@ public class InCallActivity extends FragmentActivity implements } else { micro.setBackgroundResource(R.drawable.micro_on); } - + if (LinphoneManager.getLc().getCallsNb() > 1) { conference.setVisibility(View.VISIBLE); pause.setVisibility(View.GONE); @@ -325,6 +325,13 @@ public class InCallActivity extends FragmentActivity implements pause.setBackgroundResource(R.drawable.pause_off); } } + + if(isPaused){ + video.setEnabled(false); + } else { + video.setEnabled(true); + } + } }); } @@ -364,10 +371,10 @@ public class InCallActivity extends FragmentActivity implements if (isVideoEnabled) { displayVideoCallControlsIfHidden(); } - + if (id == R.id.video) { isVideoEnabled = !isVideoEnabled; - switchVideo(isVideoEnabled, true); + switchVideo(isVideoEnabled, true); } else if (id == R.id.micro) { toggleMicro(); @@ -1055,7 +1062,16 @@ public class InCallActivity extends FragmentActivity implements return; } + if (state == State.Paused || state == State.PausedByRemote || state == State.Pausing) { + isPaused = true; + } + + if (state == State.Resuming) { + isPaused = false; + } + if (state == State.StreamsRunning) { + isPaused = false; boolean isVideoEnabledInCall = call.getCurrentParamsCopy().getVideoEnabled(); if (isVideoEnabledInCall != isVideoEnabled) { isVideoEnabled = isVideoEnabledInCall;