summaryrefslogtreecommitdiffstats
path: root/src/org/codeaurora/gallery3d/video/CodeauroraVideoView.java
diff options
context:
space:
mode:
authorLinux Build Service Account <lnxbuild@localhost>2016-01-21 03:36:43 -0800
committerGerrit - the friendly Code Review server <code-review@localhost>2016-01-21 03:36:43 -0800
commitf4c20173d8622563f5bd80ef4d15525286cf601e (patch)
treee776a996ab4dabfdc566285db425d0ffd2df5f58 /src/org/codeaurora/gallery3d/video/CodeauroraVideoView.java
parent16870fa9241b73a8ed0b77c7741a3b4628586843 (diff)
parenta1dbd23b6334f23e7853d6cd3d90a90cd1ea8a9b (diff)
downloadandroid_packages_apps_Gallery2-f4c20173d8622563f5bd80ef4d15525286cf601e.tar.gz
android_packages_apps_Gallery2-f4c20173d8622563f5bd80ef4d15525286cf601e.tar.bz2
android_packages_apps_Gallery2-f4c20173d8622563f5bd80ef4d15525286cf601e.zip
Merge "Gallery2: fix video play abnormal when screen is locked."
Diffstat (limited to 'src/org/codeaurora/gallery3d/video/CodeauroraVideoView.java')
-rw-r--r--src/org/codeaurora/gallery3d/video/CodeauroraVideoView.java19
1 files changed, 18 insertions, 1 deletions
diff --git a/src/org/codeaurora/gallery3d/video/CodeauroraVideoView.java b/src/org/codeaurora/gallery3d/video/CodeauroraVideoView.java
index 0cb26d2d3..0475aef82 100644
--- a/src/org/codeaurora/gallery3d/video/CodeauroraVideoView.java
+++ b/src/org/codeaurora/gallery3d/video/CodeauroraVideoView.java
@@ -1,6 +1,7 @@
package org.codeaurora.gallery3d.video;
import android.app.AlertDialog;
+import android.app.KeyguardManager;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
@@ -96,6 +97,7 @@ public class CodeauroraVideoView extends SurfaceView implements MediaPlayerContr
private boolean mOnResumed;
private boolean mIsShowDialog = false;
private boolean mErrorDialogShowing = false;
+ private KeyguardManager mKeyguardManager;
private final Handler mHandler = new Handler() {
public void handleMessage(final Message msg) {
@@ -948,6 +950,21 @@ public class CodeauroraVideoView extends SurfaceView implements MediaPlayerContr
setVideoURI(uri, headers);
}
+ private boolean isKeyguardLocked() {
+ if (mKeyguardManager == null) {
+ mKeyguardManager =
+ (KeyguardManager) mContext.getSystemService(Context.KEYGUARD_SERVICE);
+ }
+ // isKeyguardSecure excludes the slide lock case.
+ boolean locked = (mKeyguardManager != null)
+ && mKeyguardManager.inKeyguardRestrictedInputMode();
+ if (LOG) {
+ Log.v(TAG, "isKeyguardLocked() locked=" + locked + ", mKeyguardManager="
+ + mKeyguardManager);
+ }
+ return locked;
+ }
+
private void doPreparedIfReady(final MediaPlayer mp) {
if (LOG) {
Log.v(TAG, "doPreparedIfReady() mHasGotPreparedCallBack=" + mHasGotPreparedCallBack
@@ -955,7 +972,7 @@ public class CodeauroraVideoView extends SurfaceView implements MediaPlayerContr
+ mNeedWaitLayout
+ ", mCurrentState=" + mCurrentState);
}
- if (mHasGotPreparedCallBack && mHasGotMetaData && !mNeedWaitLayout) {
+ if (mHasGotPreparedCallBack && mHasGotMetaData && !mNeedWaitLayout && !isKeyguardLocked()) {
doPrepared(mp);
}
}