diff options
author | Roman Birg <roman@cyngn.com> | 2016-01-05 19:04:48 -0800 |
---|---|---|
committer | Roman Birg <roman@cyngn.com> | 2016-01-08 09:09:44 -0800 |
commit | d4bc5b68190de07608ff25cf8ae65e6c2adba544 (patch) | |
tree | 9640a69dc66d82a645cffea64068a1c1fe3701bb /packages/SystemUI/res/layout | |
parent | 573109ecdaae7c37c52c590f9aa0d0f6d6187521 (diff) | |
download | frameworks_base-d4bc5b68190de07608ff25cf8ae65e6c2adba544.zip frameworks_base-d4bc5b68190de07608ff25cf8ae65e6c2adba544.tar.gz frameworks_base-d4bc5b68190de07608ff25cf8ae65e6c2adba544.tar.bz2 |
SystemUI: fix navbar drawing issues in landscape
Originally StatusBarWindowView was responsible for laying out the scrims
and making sure they are full screen (behind navbar), while the other
views were respecting the navbar insets.
This was broken for two reasons for us:
1) our scrims are more complex and aren't always direct subchildren of
the StatusBarWindowView (mainly to display the visualizer correctly)
2) we declared fitSystemWindows=false, so the logic to add insets was
never actually executing.
We now split out the logic for insets into its own class and apply it to
the scrims properly.
Ref: CYNGNOS-1502
Change-Id: I5b8295d7a64b72dc911fce6d529936592f24e98b
Signed-off-by: Roman Birg <roman@cyngn.com>
Diffstat (limited to 'packages/SystemUI/res/layout')
-rw-r--r-- | packages/SystemUI/res/layout/super_status_bar.xml | 27 |
1 files changed, 16 insertions, 11 deletions
diff --git a/packages/SystemUI/res/layout/super_status_bar.xml b/packages/SystemUI/res/layout/super_status_bar.xml index 896efde..c6178a0 100644 --- a/packages/SystemUI/res/layout/super_status_bar.xml +++ b/packages/SystemUI/res/layout/super_status_bar.xml @@ -18,13 +18,13 @@ --> <!-- This is the combined status bar / notification panel window. --> -<FrameLayout +<com.android.systemui.statusbar.phone.NavBarInsetLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:sysui="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="match_parent" android:focusable="true" - android:fitsSystemWindows="false" + android:fitsSystemWindows="true" android:descendantFocusability="afterDescendants"> <com.android.systemui.statusbar.BackDropView @@ -45,29 +45,34 @@ android:visibility="invisible" /> </com.android.systemui.statusbar.BackDropView> - <FrameLayout android:id="@+id/scrimview" + <com.android.systemui.statusbar.phone.NavBarInsetLayout + android:id="@+id/scrimview" android:layout_width="match_parent" android:layout_height="match_parent" - android:visibility="visible"> + android:visibility="visible" + sysui:ignoreRightInset="true" + android:fitsSystemWindows="true"> <com.android.systemui.statusbar.ScrimView android:id="@+id/scrim_behind" android:layout_width="match_parent" android:layout_height="match_parent" + sysui:ignoreRightInset="true" android:importantForAccessibility="no"/> <com.android.systemui.statusbar.AlphaOptimizedView - android:id="@+id/heads_up_scrim" - android:layout_width="match_parent" - android:layout_height="@dimen/heads_up_scrim_height" - android:background="@drawable/heads_up_scrim" - android:importantForAccessibility="no"/> + android:id="@+id/heads_up_scrim" + android:layout_width="match_parent" + android:layout_height="@dimen/heads_up_scrim_height" + android:background="@drawable/heads_up_scrim" + android:importantForAccessibility="no"/> <com.android.systemui.statusbar.VisualizerView android:id="@+id/visualizerview" android:gravity="bottom" android:layout_gravity="bottom" android:layout_width="match_parent" android:layout_height="match_parent" + sysui:ignoreRightInset="true" android:visibility="visible"/> - </FrameLayout> + </com.android.systemui.statusbar.phone.NavBarInsetLayout> <include layout="@layout/status_bar" android:layout_width="match_parent" @@ -109,4 +114,4 @@ sysui:ignoreRightInset="true" /> -</FrameLayout> +</com.android.systemui.statusbar.phone.NavBarInsetLayout> |