summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBryce Lee <brycelee@google.com>2015-04-01 10:57:21 -0700
committerBryce Lee <brycelee@google.com>2015-04-01 10:57:21 -0700
commitae41dcab07804b4c56fc5b005282d00b0d5ece71 (patch)
tree6982bc16406c11302a81914de3c18d53de2a80c6
parent6e6250b9613e7c236a07367fc800feece8bcd706 (diff)
downloadframeworks_base-ae41dcab07804b4c56fc5b005282d00b0d5ece71.zip
frameworks_base-ae41dcab07804b4c56fc5b005282d00b0d5ece71.tar.gz
frameworks_base-ae41dcab07804b4c56fc5b005282d00b0d5ece71.tar.bz2
Do not use the status bar as the system decor layer if it is not visible.
Doing so leads to cropping of the content view, which is smaller than the screen size on some devices with improperly configured overscan values. It can also lead to performance issues with some activity transition animations on Wear. Bug: 19928768 Change-Id: Ic50c2fedb1f8be9a8ea5166fef5a5665958601de
-rw-r--r--policy/src/com/android/internal/policy/impl/PhoneWindowManager.java10
1 files changed, 8 insertions, 2 deletions
diff --git a/policy/src/com/android/internal/policy/impl/PhoneWindowManager.java b/policy/src/com/android/internal/policy/impl/PhoneWindowManager.java
index 4664aa3..58c2fba 100644
--- a/policy/src/com/android/internal/policy/impl/PhoneWindowManager.java
+++ b/policy/src/com/android/internal/policy/impl/PhoneWindowManager.java
@@ -3508,8 +3508,14 @@ public class PhoneWindowManager implements WindowManagerPolicy {
/** {@inheritDoc} */
@Override
public int getSystemDecorLayerLw() {
- if (mStatusBar != null) return mStatusBar.getSurfaceLayer();
- if (mNavigationBar != null) return mNavigationBar.getSurfaceLayer();
+ if (mStatusBar != null && mStatusBar.isVisibleLw()) {
+ return mStatusBar.getSurfaceLayer();
+ }
+
+ if (mNavigationBar != null && mNavigationBar.isVisibleLw()) {
+ return mNavigationBar.getSurfaceLayer();
+ }
+
return 0;
}