summaryrefslogtreecommitdiffstats
path: root/policy/src
diff options
context:
space:
mode:
authorJohn Spurlock <jspurlock@google.com>2013-10-08 10:08:32 -0400
committerJohn Spurlock <jspurlock@google.com>2013-10-08 11:49:47 -0400
commit65567d4e6ca61bbf702afd76e8be938982187e9a (patch)
treebbb12f96b22e850fce367b95be04e91f428213ab /policy/src
parentbe5ba9a255e258e03925bb651e5563625ddf6d59 (diff)
downloadframeworks_base-65567d4e6ca61bbf702afd76e8be938982187e9a.zip
frameworks_base-65567d4e6ca61bbf702afd76e8be938982187e9a.tar.gz
frameworks_base-65567d4e6ca61bbf702afd76e8be938982187e9a.tar.bz2
Don't crop top-most windows at rest.
They can affect the system decor state, cropping to their current requested state is too aggressive. Bug:11079003 Change-Id: Ifec576d41cdefd1b851463d4b12311f1a8e27b3d
Diffstat (limited to 'policy/src')
-rw-r--r--policy/src/com/android/internal/policy/impl/PhoneWindowManager.java9
1 files changed, 6 insertions, 3 deletions
diff --git a/policy/src/com/android/internal/policy/impl/PhoneWindowManager.java b/policy/src/com/android/internal/policy/impl/PhoneWindowManager.java
index 3468425..de841da 100644
--- a/policy/src/com/android/internal/policy/impl/PhoneWindowManager.java
+++ b/policy/src/com/android/internal/policy/impl/PhoneWindowManager.java
@@ -3003,9 +3003,12 @@ public class PhoneWindowManager implements WindowManagerPolicy {
dcf.bottom = mSystemBottom;
final boolean inheritTranslucentDecor = (attrs.privateFlags
& WindowManager.LayoutParams.PRIVATE_FLAG_INHERIT_TRANSLUCENT_DECOR) != 0;
- if (attrs.type >= WindowManager.LayoutParams.FIRST_APPLICATION_WINDOW
- && attrs.type <= WindowManager.LayoutParams.LAST_APPLICATION_WINDOW
- && !inheritTranslucentDecor) {
+ final boolean isAppWindow =
+ attrs.type >= WindowManager.LayoutParams.FIRST_APPLICATION_WINDOW &&
+ attrs.type <= WindowManager.LayoutParams.LAST_APPLICATION_WINDOW;
+ final boolean topAtRest =
+ win == mTopFullscreenOpaqueWindowState && !win.isAnimatingLw();
+ if (isAppWindow && !inheritTranslucentDecor && !topAtRest) {
if ((sysUiFl & View.SYSTEM_UI_FLAG_FULLSCREEN) == 0
&& (fl & WindowManager.LayoutParams.FLAG_FULLSCREEN) == 0
&& (fl & WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS) == 0) {