Merge "Fix issue where video does not un-pause after call waiting dismissed." into nyc-dev
diff --git a/InCallUI/src/com/android/incallui/VideoPauseController.java b/InCallUI/src/com/android/incallui/VideoPauseController.java
index a529d20..01b6b0d 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.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.
@@ -192,10 +194,11 @@
         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