diff options
author | Alan Viverette <alanv@google.com> | 2014-09-19 01:16:21 +0000 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2014-09-19 01:16:22 +0000 |
commit | 3540c462d95a0720e2931c30e1fe9820d0d63c51 (patch) | |
tree | a00829c1f41683dda33ab4cf16dfa472aa042e2d | |
parent | 0297ad884d12a9f1f8f69adde5bad43894a0dbaa (diff) | |
parent | 24b5f2cf9590b960aeece1069a0f0dcdc962bbac (diff) | |
download | frameworks_base-3540c462d95a0720e2931c30e1fe9820d0d63c51.zip frameworks_base-3540c462d95a0720e2931c30e1fe9820d0d63c51.tar.gz frameworks_base-3540c462d95a0720e2931c30e1fe9820d0d63c51.tar.bz2 |
Merge "Always apply window insets to action modes" into lmp-dev
-rw-r--r-- | policy/src/com/android/internal/policy/impl/PhoneWindow.java | 41 |
1 files changed, 22 insertions, 19 deletions
diff --git a/policy/src/com/android/internal/policy/impl/PhoneWindow.java b/policy/src/com/android/internal/policy/impl/PhoneWindow.java index 3419119..94c1676 100644 --- a/policy/src/com/android/internal/policy/impl/PhoneWindow.java +++ b/policy/src/com/android/internal/policy/impl/PhoneWindow.java @@ -2887,32 +2887,35 @@ public class PhoneWindow extends Window implements MenuBuilder.Callback { if (mActionModeView.getLayoutParams() instanceof MarginLayoutParams) { MarginLayoutParams mlp = (MarginLayoutParams) mActionModeView.getLayoutParams(); boolean mlpChanged = false; - final boolean nonOverlayShown = - (getLocalFeatures() & (1 << FEATURE_ACTION_MODE_OVERLAY)) == 0 - && mActionModeView.isShown(); - if (nonOverlayShown) { - // set top margin to top insets, show status guard + if (mActionModeView.isShown()) { + final boolean nonOverlay = (getLocalFeatures() + & (1 << FEATURE_ACTION_MODE_OVERLAY)) == 0; if (mlp.topMargin != insets.getSystemWindowInsetTop()) { mlpChanged = true; mlp.topMargin = insets.getSystemWindowInsetTop(); - if (mStatusGuard == null) { - mStatusGuard = new View(mContext); - mStatusGuard.setBackgroundColor(mContext.getResources() - .getColor(R.color.input_method_navigation_guard)); - addView(mStatusGuard, indexOfChild(mStatusColorView), - new LayoutParams(LayoutParams.MATCH_PARENT, mlp.topMargin, - Gravity.START | Gravity.TOP)); - } else { - LayoutParams lp = (LayoutParams) mStatusGuard.getLayoutParams(); - if (lp.height != mlp.topMargin) { - lp.height = mlp.topMargin; - mStatusGuard.setLayoutParams(lp); + + // Only show status guard for non-overlay modes. + if (nonOverlay) { + if (mStatusGuard == null) { + mStatusGuard = new View(mContext); + mStatusGuard.setBackgroundColor(mContext.getResources() + .getColor(R.color.input_method_navigation_guard)); + addView(mStatusGuard, indexOfChild(mStatusColorView), + new LayoutParams(LayoutParams.MATCH_PARENT, + mlp.topMargin, + Gravity.START | Gravity.TOP)); + } else { + LayoutParams lp = (LayoutParams) mStatusGuard.getLayoutParams(); + if (lp.height != mlp.topMargin) { + lp.height = mlp.topMargin; + mStatusGuard.setLayoutParams(lp); + } } } } insets = insets.consumeSystemWindowInsets( - false, true /* top */, false, false); - showStatusGuard = true; + false, nonOverlay /* top */, false, false); + showStatusGuard = nonOverlay; } else { // reset top margin if (mlp.topMargin != 0) { |