diff options
| author | 2019-05-09 14:34:19 +0000 | |
|---|---|---|
| committer | 2019-05-09 14:34:19 +0000 | |
| commit | 89d1bdedf7be70145fc1ee95ccf13d6aebcfd5b0 (patch) | |
| tree | 69593aee6bc195080822c870c0a679c0dc3a56f0 | |
| parent | 39789e86f766a16b6e0398dec963e96d280dac21 (diff) | |
| parent | 01d60d0907b71055cf9f341df0a3cfccf96a9e15 (diff) | |
Merge "Only consume status bar if FULLSCREEN is set" into qt-dev
| -rw-r--r-- | core/java/com/android/internal/policy/DecorView.java | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/core/java/com/android/internal/policy/DecorView.java b/core/java/com/android/internal/policy/DecorView.java index 5c1268ded94a..1fbaf7b426be 100644 --- a/core/java/com/android/internal/policy/DecorView.java +++ b/core/java/com/android/internal/policy/DecorView.java @@ -1174,12 +1174,16 @@ public class DecorView extends FrameLayout implements RootViewSurfaceTaker, Wind // If we didn't request fullscreen layout, but we still got it because of the // mForceWindowDrawsBarBackgrounds flag, also consume top inset. + // If we should always consume system bars, only consume that if the app wanted to go to + // fullscreen, as othrewise we can expect the app to handle it. + boolean fullscreen = (sysUiVisibility & SYSTEM_UI_FLAG_FULLSCREEN) != 0 + || (attrs.flags & FLAG_FULLSCREEN) != 0; boolean consumingStatusBar = (sysUiVisibility & SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN) == 0 && (attrs.flags & FLAG_LAYOUT_IN_SCREEN) == 0 && (attrs.flags & FLAG_LAYOUT_INSET_DECOR) == 0 && mForceWindowDrawsBarBackgrounds && mLastTopInset != 0 - || mLastShouldAlwaysConsumeSystemBars; + || (mLastShouldAlwaysConsumeSystemBars && fullscreen); int consumedTop = consumingStatusBar ? mLastTopInset : 0; int consumedRight = consumingNavBar ? mLastRightInset : 0; |