diff options
author | 2012-08-10 10:24:05 -0400 | |
---|---|---|
committer | 2012-08-11 00:55:14 -0400 | |
commit | f7178d3cadfeb0101491eeea7d7f3b0d7c26dbe6 (patch) | |
tree | 110219a6f0b8c28d0c0e4e73805c3e1102172c8d | |
parent | 75f0fac91bd7fa67fa76cfdd4e163b9f35be0432 (diff) |
Allow the secure keyguard to engage behind Dreams.
TYPE_DREAM windows are now considered for relevant window
flags alongside application windows.
Bug: 6961616
Change-Id: Idee3303276a8b69c7f07de1d6acdce64c6e1b863
-rw-r--r-- | core/java/android/service/dreams/Dream.java | 5 | ||||
-rwxr-xr-x | policy/src/com/android/internal/policy/impl/PhoneWindowManager.java | 4 |
2 files changed, 7 insertions, 2 deletions
diff --git a/core/java/android/service/dreams/Dream.java b/core/java/android/service/dreams/Dream.java index 5a3fad6de15f..69db97c29562 100644 --- a/core/java/android/service/dreams/Dream.java +++ b/core/java/android/service/dreams/Dream.java @@ -346,6 +346,11 @@ public class Dream extends Service implements Window.Callback { lp.type = WindowManager.LayoutParams.TYPE_DREAM; lp.token = windowToken; lp.windowAnimations = com.android.internal.R.style.Animation_Dream; + lp.flags |= ( WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED + | WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD + | WindowManager.LayoutParams.FLAG_ALLOW_LOCK_WHILE_SCREEN_ON + ); + mWindow.setAttributes(lp); //WindowManagerImpl.getDefault().addView(mWindow.getDecorView(), lp); diff --git a/policy/src/com/android/internal/policy/impl/PhoneWindowManager.java b/policy/src/com/android/internal/policy/impl/PhoneWindowManager.java index 5d4159a57831..8c627a3d6f3b 100755 --- a/policy/src/com/android/internal/policy/impl/PhoneWindowManager.java +++ b/policy/src/com/android/internal/policy/impl/PhoneWindowManager.java @@ -2854,8 +2854,8 @@ public class PhoneWindowManager implements WindowManagerPolicy { if ((attrs.flags & FLAG_FORCE_NOT_FULLSCREEN) != 0) { mForceStatusBar = true; } - if (attrs.type >= FIRST_APPLICATION_WINDOW - && attrs.type <= LAST_APPLICATION_WINDOW + if (((attrs.type >= FIRST_APPLICATION_WINDOW && attrs.type <= LAST_APPLICATION_WINDOW) + || attrs.type == TYPE_DREAM) && attrs.x == 0 && attrs.y == 0 && attrs.width == WindowManager.LayoutParams.MATCH_PARENT && attrs.height == WindowManager.LayoutParams.MATCH_PARENT) { |