diff options
author | Shawn Lin <shawnlin@google.com> | 2022-04-07 13:33:49 +0000 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2022-04-07 13:33:49 +0000 |
commit | 88af43ac602645779d12b3d67d627edd9d172908 (patch) | |
tree | 1713663cb49c0e324f0b64dfd4e3f15144674597 | |
parent | d4e7e2336adf8d10cdd9ab321be7933af6f05c1c (diff) | |
parent | df8300727f008c0b5ccafe604331668a2b60d6f7 (diff) | |
download | base-88af43ac602645779d12b3d67d627edd9d172908.tar.gz |
Merge "[DO NOT MERGE] Fixed status bar glitch for apps that access internal res" into sc-v2-dev
12 files changed, 37 insertions, 3 deletions
diff --git a/core/java/com/android/internal/policy/SystemBarUtils.java b/core/java/com/android/internal/policy/SystemBarUtils.java index 6bf1333097f7..5358b96a0f97 100644 --- a/core/java/com/android/internal/policy/SystemBarUtils.java +++ b/core/java/com/android/internal/policy/SystemBarUtils.java @@ -43,7 +43,7 @@ public final class SystemBarUtils { * Gets the status bar height with a specific display cutout. */ public static int getStatusBarHeight(Resources res, DisplayCutout cutout) { - final int defaultSize = res.getDimensionPixelSize(R.dimen.status_bar_height); + final int defaultSize = res.getDimensionPixelSize(R.dimen.status_bar_height_default); final int safeInsetTop = cutout == null ? 0 : cutout.getSafeInsetTop(); final int waterfallInsetTop = cutout == null ? 0 : cutout.getWaterfallInsets().top; // The status bar height should be: diff --git a/core/res/res/values-land/dimens.xml b/core/res/res/values-land/dimens.xml index f1e5888d61b9..ca549aeba1f5 100644 --- a/core/res/res/values-land/dimens.xml +++ b/core/res/res/values-land/dimens.xml @@ -27,6 +27,8 @@ <dimen name="password_keyboard_spacebar_vertical_correction">2dip</dimen> <dimen name="preference_widget_width">72dp</dimen> + <!-- Height of the status bar --> + <dimen name="status_bar_height">@dimen/status_bar_height_landscape</dimen> <!-- Height of area above QQS where battery/time go --> <dimen name="quick_qs_offset_height">48dp</dimen> <!-- Default height of an action bar. --> diff --git a/core/res/res/values/dimens.xml b/core/res/res/values/dimens.xml index f331f1ab720f..cafebcec454e 100644 --- a/core/res/res/values/dimens.xml +++ b/core/res/res/values/dimens.xml @@ -39,14 +39,17 @@ <!-- Elevation of toast view --> <dimen name="toast_elevation">2dp</dimen> + <!-- The default height of the status bar used in {@link SystemBarUtils#getStatusBarHeight} to + calculate the status bar height. --> + <dimen name="status_bar_height_default">24dp</dimen> <!-- Height of the status bar. Do not read this dimen directly. Use {@link SystemBarUtils#getStatusBarHeight} instead. --> - <dimen name="status_bar_height">24dp</dimen> + <dimen name="status_bar_height">@dimen/status_bar_height_portrait</dimen> <!-- Height of the status bar in portrait. Do not read this dimen directly. Use {@link SystemBarUtils#getStatusBarHeight} instead. --> - <dimen name="status_bar_height_portrait">@dimen/status_bar_height</dimen> + <dimen name="status_bar_height_portrait">24dp</dimen> <!-- Height of the status bar in landscape. Do not read this dimen directly. Use {@link SystemBarUtils#getStatusBarHeight} instead. --> diff --git a/core/res/res/values/symbols.xml b/core/res/res/values/symbols.xml index 87a75da31850..af8472f9a90a 100644 --- a/core/res/res/values/symbols.xml +++ b/core/res/res/values/symbols.xml @@ -4492,4 +4492,6 @@ <java-symbol type="array" name="config_roundedCornerBottomRadiusAdjustmentArray" /> <java-symbol type="bool" name="config_secondaryBuiltInDisplayIsRound" /> <java-symbol type="array" name="config_builtInDisplayIsRoundArray" /> + + <java-symbol type="dimen" name="status_bar_height_default" /> </resources> diff --git a/packages/overlays/DisplayCutoutEmulationCornerOverlay/res/values/config.xml b/packages/overlays/DisplayCutoutEmulationCornerOverlay/res/values/config.xml index c340432b9b8c..67d405d1e01e 100644 --- a/packages/overlays/DisplayCutoutEmulationCornerOverlay/res/values/config.xml +++ b/packages/overlays/DisplayCutoutEmulationCornerOverlay/res/values/config.xml @@ -44,6 +44,9 @@ --> <bool name="config_fillMainBuiltInDisplayCutout">true</bool> + <!-- Height of the status bar --> + <dimen name="status_bar_height_portrait">48dp</dimen> + <dimen name="status_bar_height_landscape">28dp</dimen> </resources> diff --git a/packages/overlays/DisplayCutoutEmulationDoubleOverlay/res/values/config.xml b/packages/overlays/DisplayCutoutEmulationDoubleOverlay/res/values/config.xml index 928d9dfa3ce1..e08c32fc4d4b 100644 --- a/packages/overlays/DisplayCutoutEmulationDoubleOverlay/res/values/config.xml +++ b/packages/overlays/DisplayCutoutEmulationDoubleOverlay/res/values/config.xml @@ -56,6 +56,9 @@ --> <bool name="config_fillMainBuiltInDisplayCutout">true</bool> + <!-- Height of the status bar --> + <dimen name="status_bar_height_portrait">48dp</dimen> + <dimen name="status_bar_height_landscape">28dp</dimen> </resources> diff --git a/packages/overlays/DisplayCutoutEmulationHoleOverlay/res/values/config.xml b/packages/overlays/DisplayCutoutEmulationHoleOverlay/res/values/config.xml index 62f0535a1746..68916cc3494c 100644 --- a/packages/overlays/DisplayCutoutEmulationHoleOverlay/res/values/config.xml +++ b/packages/overlays/DisplayCutoutEmulationHoleOverlay/res/values/config.xml @@ -48,6 +48,9 @@ --> <bool name="config_fillMainBuiltInDisplayCutout">true</bool> + <!-- Height of the status bar --> + <dimen name="status_bar_height_portrait">136px</dimen> + <dimen name="status_bar_height_landscape">28dp</dimen> </resources> diff --git a/packages/overlays/DisplayCutoutEmulationNarrowOverlay/res/values/config.xml b/packages/overlays/DisplayCutoutEmulationNarrowOverlay/res/values/config.xml index a9f8b4bc6329..605059b27f37 100644 --- a/packages/overlays/DisplayCutoutEmulationNarrowOverlay/res/values/config.xml +++ b/packages/overlays/DisplayCutoutEmulationNarrowOverlay/res/values/config.xml @@ -47,6 +47,9 @@ --> <bool name="config_fillMainBuiltInDisplayCutout">true</bool> + <!-- Height of the status bar --> + <dimen name="status_bar_height_portrait">48dp</dimen> + <dimen name="status_bar_height_landscape">28dp</dimen> </resources> diff --git a/packages/overlays/DisplayCutoutEmulationTallOverlay/res/values/config.xml b/packages/overlays/DisplayCutoutEmulationTallOverlay/res/values/config.xml index be7d0e48fa3f..370d73019669 100644 --- a/packages/overlays/DisplayCutoutEmulationTallOverlay/res/values/config.xml +++ b/packages/overlays/DisplayCutoutEmulationTallOverlay/res/values/config.xml @@ -47,6 +47,9 @@ --> <bool name="config_fillMainBuiltInDisplayCutout">true</bool> + <!-- Height of the status bar --> + <dimen name="status_bar_height_portrait">48dp</dimen> + <dimen name="status_bar_height_landscape">28dp</dimen> </resources> diff --git a/packages/overlays/DisplayCutoutEmulationWaterfallOverlay/res/values/config.xml b/packages/overlays/DisplayCutoutEmulationWaterfallOverlay/res/values/config.xml index cc51ebee270c..98779f0b3bc1 100644 --- a/packages/overlays/DisplayCutoutEmulationWaterfallOverlay/res/values/config.xml +++ b/packages/overlays/DisplayCutoutEmulationWaterfallOverlay/res/values/config.xml @@ -19,6 +19,12 @@ <string translatable="false" name="config_mainBuiltInDisplayCutout"></string> <string translatable="false" name="config_mainBuiltInDisplayCutoutRectApproximation"></string> + <!-- Height of the status bar in portrait. The height should be + Max((status bar content height + waterfall top size), top cutout size) --> + <dimen name="status_bar_height_portrait">28dp</dimen> + <!-- Max((28 + 20), 0) = 48 --> + <dimen name="status_bar_height_landscape">48dp</dimen> + <dimen name="waterfall_display_left_edge_size">20dp</dimen> <dimen name="waterfall_display_top_edge_size">0dp</dimen> <dimen name="waterfall_display_right_edge_size">20dp</dimen> diff --git a/packages/overlays/DisplayCutoutEmulationWideOverlay/res/values/config.xml b/packages/overlays/DisplayCutoutEmulationWideOverlay/res/values/config.xml index 78cc7e04c7a0..176f1dc46b0c 100644 --- a/packages/overlays/DisplayCutoutEmulationWideOverlay/res/values/config.xml +++ b/packages/overlays/DisplayCutoutEmulationWideOverlay/res/values/config.xml @@ -47,6 +47,9 @@ --> <bool name="config_fillMainBuiltInDisplayCutout">true</bool> + <!-- Height of the status bar --> + <dimen name="status_bar_height_portrait">48dp</dimen> + <dimen name="status_bar_height_landscape">28dp</dimen> </resources> diff --git a/packages/overlays/NoCutoutOverlay/res/values/config.xml b/packages/overlays/NoCutoutOverlay/res/values/config.xml index 84b91b85350d..ed0340b11229 100644 --- a/packages/overlays/NoCutoutOverlay/res/values/config.xml +++ b/packages/overlays/NoCutoutOverlay/res/values/config.xml @@ -25,4 +25,7 @@ by shrinking the display such that it does not overlap the cutout area. --> <bool name="config_maskMainBuiltInDisplayCutout">true</bool> + <!-- Height of the status bar --> + <dimen name="status_bar_height_portrait">28dp</dimen> + <dimen name="status_bar_height_landscape">28dp</dimen> </resources> |