diff options
author | Craig Mautner <cmautner@google.com> | 2014-09-12 01:45:27 +0000 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2014-09-12 01:45:29 +0000 |
commit | cbc771f50e998ec307c7e92009425c730cde49c5 (patch) | |
tree | 16ab88dd394d3c3731dc83ae82f13cb2b55253e8 /services | |
parent | 3bab7c188d5e823484eda5c0f3df7759ce4a6c98 (diff) | |
parent | 7d7808fcf8e6a1c27d52375210f9da2705d5f590 (diff) | |
download | frameworks_base-cbc771f50e998ec307c7e92009425c730cde49c5.zip frameworks_base-cbc771f50e998ec307c7e92009425c730cde49c5.tar.gz frameworks_base-cbc771f50e998ec307c7e92009425c730cde49c5.tar.bz2 |
Merge changes Ia6fe9724,I682b9acb into lmp-dev
* changes:
Show all windows from activity that hides keyguard
Make sure FLAG_DISMISS_KEYGUARD brings up bouncer
Diffstat (limited to 'services')
-rw-r--r-- | services/core/java/com/android/server/wm/WindowAnimator.java | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/services/core/java/com/android/server/wm/WindowAnimator.java b/services/core/java/com/android/server/wm/WindowAnimator.java index 50e417b..05fc424 100644 --- a/services/core/java/com/android/server/wm/WindowAnimator.java +++ b/services/core/java/com/android/server/wm/WindowAnimator.java @@ -252,6 +252,10 @@ public class WindowAnimator { final boolean showImeOverKeyguard = imeTarget != null && imeTarget.isVisibleNow() && (imeTarget.getAttrs().flags & FLAG_SHOW_WHEN_LOCKED) != 0; + final WindowState winShowWhenLocked = (WindowState) mPolicy.getWinShowWhenLockedLw(); + final AppWindowToken appShowWhenLocked = winShowWhenLocked == null ? + null : winShowWhenLocked.mAppToken; + for (int i = windows.size() - 1; i >= 0; i--) { WindowState win = windows.get(i); WindowStateAnimator winAnimator = win.mWinAnimator; @@ -316,8 +320,8 @@ public class WindowAnimator { + " hidden=" + win.mRootToken.hidden + " anim=" + win.mWinAnimator.mAnimation); } else if (mPolicy.canBeForceHidden(win, win.mAttrs)) { - final boolean hideWhenLocked = (flags & FLAG_SHOW_WHEN_LOCKED) == 0 && - !(win.mIsImWindow && showImeOverKeyguard); + final boolean hideWhenLocked = !((win.mIsImWindow && showImeOverKeyguard) || + (appShowWhenLocked != null && appShowWhenLocked == win.mAppToken)); final boolean changed; if (((mForceHiding == KEYGUARD_ANIMATING_IN) && (!winAnimator.isAnimating() || hideWhenLocked)) |