aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTreeHugger Robot <treehugger-gerrit@google.com>2017-07-07 23:47:22 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2017-07-07 23:47:22 +0000
commit39a4e05d6356a748835f1a0bee7d98db9928bc81 (patch)
treec0a7e4f0399c349ce074ea36e056170b8f25dac1
parent195d4584f09325c4aaea673189d4b8061bd65f04 (diff)
parent4a31f55999ff45ac56ab1156a86c0804d788faaa (diff)
downloadims-39a4e05d6356a748835f1a0bee7d98db9928bc81.tar.gz
Merge "Change how unpause of video is detected."
-rw-r--r--src/java/com/android/ims/internal/ImsVideoCallProviderWrapper.java13
1 files changed, 11 insertions, 2 deletions
diff --git a/src/java/com/android/ims/internal/ImsVideoCallProviderWrapper.java b/src/java/com/android/ims/internal/ImsVideoCallProviderWrapper.java
index cf203d35..8a06f3c3 100644
--- a/src/java/com/android/ims/internal/ImsVideoCallProviderWrapper.java
+++ b/src/java/com/android/ims/internal/ImsVideoCallProviderWrapper.java
@@ -69,6 +69,7 @@ public class ImsVideoCallProviderWrapper extends Connection.VideoProvider {
new ConcurrentHashMap<ImsVideoProviderWrapperCallback, Boolean>(8, 0.9f, 1));
private VideoPauseTracker mVideoPauseTracker = new VideoPauseTracker();
private boolean mUseVideoPauseWorkaround = false;
+ private int mCurrentVideoState;
private IBinder.DeathRecipient mDeathRecipient = new IBinder.DeathRecipient() {
@Override
@@ -541,10 +542,18 @@ public class ImsVideoCallProviderWrapper extends Connection.VideoProvider {
* @param newVideoState The new video state.
*/
public void onVideoStateChanged(int newVideoState) {
- if (mVideoPauseTracker.isPaused() && !VideoProfile.isPaused(newVideoState)) {
- Log.i(this, "onVideoStateChanged: newVideoState=%s, clearing pending pause requests.",
+ if (VideoProfile.isPaused(mCurrentVideoState) && !VideoProfile.isPaused(newVideoState)) {
+ // New video state is un-paused, so clear any pending pause requests.
+ Log.i(this, "onVideoStateChanged: currentVideoState=%s, newVideoState=%s, "
+ + "clearing pending pause requests.",
+ VideoProfile.videoStateToString(mCurrentVideoState),
VideoProfile.videoStateToString(newVideoState));
mVideoPauseTracker.clearPauseRequests();
+ } else {
+ Log.d(this, "onVideoStateChanged: currentVideoState=%s, newVideoState=%s",
+ VideoProfile.videoStateToString(mCurrentVideoState),
+ VideoProfile.videoStateToString(newVideoState));
}
+ mCurrentVideoState = newVideoState;
}
}