From 0e5105aee781620518550689803bff1e4e558f55 Mon Sep 17 00:00:00 2001 From: Tyler Gunn Date: Mon, 29 Feb 2016 10:12:46 -0800 Subject: Fix issue where video does not un-pause after call waiting dismissed. When an incoming call waiting call is received, the VideoPauseController sends a "pause" command to the video provider. However, upon dismissing the call waiting call, the foreground call was not being unpaused. Bug: 21815566 Change-Id: I637ab70d1b2adf4510dd87e5d56e233b1a3e065d --- InCallUI/src/com/android/incallui/VideoPauseController.java | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'InCallUI') diff --git a/InCallUI/src/com/android/incallui/VideoPauseController.java b/InCallUI/src/com/android/incallui/VideoPauseController.java index 070448ee9..54b36fe76 100644 --- a/InCallUI/src/com/android/incallui/VideoPauseController.java +++ b/InCallUI/src/com/android/incallui/VideoPauseController.java @@ -23,6 +23,8 @@ import com.android.incallui.InCallPresenter.IncomingCallListener; import com.android.incallui.InCallVideoCallCallbackNotifier.SessionModificationListener; import com.google.common.base.Preconditions; +import android.telecom.VideoProfile; + /** * This class is responsible for generating video pause/resume requests when the InCall UI is sent * to the background and subsequently brought back to the foreground. @@ -195,10 +197,11 @@ class VideoPauseController implements InCallStateListener, IncomingCallListener, Preconditions.checkState(!areSame(call, mPrimaryCallContext)); final boolean canVideoPause = VideoUtils.canVideoPause(call); - if ((isIncomingCall(mPrimaryCallContext) || isDialing(mPrimaryCallContext)) + if ((isIncomingCall(mPrimaryCallContext) || isDialing(mPrimaryCallContext) || + (call != null && VideoProfile.isPaused(call.getVideoState()))) && canVideoPause && !mIsInBackground) { - // Send resume request for the active call, if user rejects incoming call or ends - // dialing call and UI is in the foreground. + // Send resume request for the active call, if user rejects incoming call, ends dialing + // call, or the call was previously in a paused state and UI is in the foreground. sendRequest(call, true); } else if (isIncomingCall(call) && canVideoPause(mPrimaryCallContext)) { // Send pause request if there is an active video call, and we just received a new -- cgit v1.2.3