diff options
| author | 2022-05-05 09:51:50 +0000 | |
|---|---|---|
| committer | 2022-05-05 09:51:50 +0000 | |
| commit | eb08799ad3ec10833dfbacb27a19193a9f48938b (patch) | |
| tree | 9fcdaa4ed7a8ca72435eee86811b6a39ec513569 | |
| parent | a7abdb12df672361244d03957b5aab88111cc43f (diff) | |
| parent | f4d20b9f1b2b5cfde76ee94e7d8d34daf5301299 (diff) | |
Merge "Adjust QS side spacing in split shade according to specs" into tm-dev
6 files changed, 58 insertions, 25 deletions
diff --git a/packages/SystemUI/res-keyguard/values-sw600dp-land/dimens.xml b/packages/SystemUI/res-keyguard/values-sw600dp-land/dimens.xml index 96949995670f..c4baa52a6add 100644 --- a/packages/SystemUI/res-keyguard/values-sw600dp-land/dimens.xml +++ b/packages/SystemUI/res-keyguard/values-sw600dp-land/dimens.xml @@ -22,6 +22,4 @@ <!-- Overload default clock widget parameters --> <dimen name="widget_big_font_size">88dp</dimen> - <dimen name="qs_panel_padding_top">16dp</dimen> - -</resources>
\ No newline at end of file +</resources> diff --git a/packages/SystemUI/res/layout/qs_paged_page.xml b/packages/SystemUI/res/layout/qs_paged_page.xml index 98804fc80b50..c366ceb4c190 100644 --- a/packages/SystemUI/res/layout/qs_paged_page.xml +++ b/packages/SystemUI/res/layout/qs_paged_page.xml @@ -19,7 +19,7 @@ android:id="@+id/tile_page" android:layout_width="match_parent" android:layout_height="match_parent" - android:paddingStart="@dimen/notification_side_paddings" - android:paddingEnd="@dimen/notification_side_paddings" + android:paddingStart="@dimen/qs_tiles_page_horizontal_margin" + android:paddingEnd="@dimen/qs_tiles_page_horizontal_margin" android:clipChildren="false" android:clipToPadding="false" /> diff --git a/packages/SystemUI/res/values-sw600dp-land/dimens.xml b/packages/SystemUI/res/values-sw600dp-land/dimens.xml index b3da144ac73b..6c42073b8805 100644 --- a/packages/SystemUI/res/values-sw600dp-land/dimens.xml +++ b/packages/SystemUI/res/values-sw600dp-land/dimens.xml @@ -21,13 +21,20 @@ <dimen name="keyguard_indication_margin_bottom">25dp</dimen> <dimen name="ambient_indication_margin_bottom">115dp</dimen> <dimen name="lock_icon_margin_bottom">60dp</dimen> - - <dimen name="qs_media_session_height_expanded">172dp</dimen> - <!-- margin from keyguard status bar to clock. For split shade it should be keyguard_split_shade_top_margin - status_bar_header_height_keyguard = 8dp --> <dimen name="keyguard_clock_top_margin">8dp</dimen> + <!-- QS--> + <dimen name="qs_panel_padding_top">16dp</dimen> + <dimen name="qs_content_horizontal_padding">24dp</dimen> + <dimen name="qs_horizontal_margin">24dp</dimen> + <!-- in split shade qs_tiles_page_horizontal_margin should be equal of qs_horizontal_margin/2, + otherwise full space between two pages is qs_horizontal_margin*2, and that makes tiles page + not appear immediately after user swipes to the side --> + <dimen name="qs_tiles_page_horizontal_margin">12dp</dimen> + <dimen name="qs_media_session_height_expanded">172dp</dimen> + <dimen name="split_shade_notifications_scrim_margin_bottom">16dp</dimen> <dimen name="notification_panel_margin_bottom">48dp</dimen> diff --git a/packages/SystemUI/res/values-sw720dp-land/dimens.xml b/packages/SystemUI/res/values-sw720dp-land/dimens.xml index 33d6f19b35d0..f45f106d391d 100644 --- a/packages/SystemUI/res/values-sw720dp-land/dimens.xml +++ b/packages/SystemUI/res/values-sw720dp-land/dimens.xml @@ -26,6 +26,12 @@ <dimen name="status_bar_header_height_keyguard">56dp</dimen> <dimen name="qs_media_session_height_expanded">251dp</dimen> + <dimen name="qs_content_horizontal_padding">40dp</dimen> + <dimen name="qs_horizontal_margin">40dp</dimen> + <!-- in split shade qs_tiles_page_horizontal_margin should be equal of qs_horizontal_margin/2, + otherwise full space between two pages is qs_horizontal_margin*2, and that makes tiles page + not appear immediately after user swipes to the side --> + <dimen name="qs_tiles_page_horizontal_margin">20dp</dimen> <dimen name="lockscreen_shade_max_over_scroll_amount">42dp</dimen> diff --git a/packages/SystemUI/res/values/dimens.xml b/packages/SystemUI/res/values/dimens.xml index f77430bae4ab..a014efb7d176 100644 --- a/packages/SystemUI/res/values/dimens.xml +++ b/packages/SystemUI/res/values/dimens.xml @@ -478,6 +478,22 @@ <dimen name="qqs_layout_margin_top">16dp</dimen> <dimen name="qqs_layout_padding_bottom">24dp</dimen> + <!-- Most of the time it should be the same as notification_side_paddings as it's vertically + aligned with notifications. The exception is split shade when this value becomes + independent --> + <dimen name="qs_horizontal_margin">@dimen/notification_side_paddings</dimen> + + <!-- Most of the time it should be the same as notification_shade_content_margin_horizontal as + it's vertically aligned with notifications. The exception is split shade when this value + becomes independent --> + <dimen name="qs_content_horizontal_padding">@dimen/notification_shade_content_margin_horizontal</dimen> + + <!-- Most of the time it should be the same as notification_side_paddings as it's vertically + aligned with notifications. That's not the case on large screen when we have either split + shade and QS is not above notifications or in portrait shade when notification scrim is no + longer full width and next page of tiles should be at the edge of the screen --> + <dimen name="qs_tiles_page_horizontal_margin">@dimen/notification_side_paddings</dimen> + <dimen name="qs_customize_internal_side_paddings">8dp</dimen> <dimen name="qs_icon_size">20dp</dimen> <dimen name="qs_side_view_size">28dp</dimen> diff --git a/packages/SystemUI/src/com/android/systemui/qs/QSContainerImpl.java b/packages/SystemUI/src/com/android/systemui/qs/QSContainerImpl.java index 7d3df6ef6b07..5d2060d8043e 100644 --- a/packages/SystemUI/src/com/android/systemui/qs/QSContainerImpl.java +++ b/packages/SystemUI/src/com/android/systemui/qs/QSContainerImpl.java @@ -47,9 +47,10 @@ public class QSContainerImpl extends FrameLayout implements Dumpable { private QSCustomizer mQSCustomizer; private NonInterceptingScrollView mQSPanelContainer; - private int mSideMargins; + private int mHorizontalMargins; + private int mTilesPageMargin; private boolean mQsDisabled; - private int mContentPadding = -1; + private int mContentHorizontalPadding = -1; private boolean mClippingEnabled; public QSContainerImpl(Context context, AttributeSet attrs) { @@ -145,12 +146,17 @@ public class QSContainerImpl extends FrameLayout implements Dumpable { mQSPanelContainer.getPaddingEnd(), bottomPadding); - int sideMargins = getResources().getDimensionPixelSize(R.dimen.notification_side_paddings); - int padding = getResources().getDimensionPixelSize( - R.dimen.notification_shade_content_margin_horizontal); - boolean marginsChanged = padding != mContentPadding || sideMargins != mSideMargins; - mContentPadding = padding; - mSideMargins = sideMargins; + int horizontalMargins = getResources().getDimensionPixelSize(R.dimen.qs_horizontal_margin); + int horizontalPadding = getResources().getDimensionPixelSize( + R.dimen.qs_content_horizontal_padding); + int tilesPageMargin = getResources().getDimensionPixelSize( + R.dimen.qs_tiles_page_horizontal_margin); + boolean marginsChanged = horizontalPadding != mContentHorizontalPadding + || horizontalMargins != mHorizontalMargins + || tilesPageMargin != mTilesPageMargin; + mContentHorizontalPadding = horizontalPadding; + mHorizontalMargins = horizontalMargins; + mTilesPageMargin = tilesPageMargin; if (marginsChanged) { updatePaddingsAndMargins(qsPanelController, quickStatusBarHeaderController); } @@ -198,22 +204,22 @@ public class QSContainerImpl extends FrameLayout implements Dumpable { // Only padding for FooterActionsView, no margin. That way, the background goes // all the way to the edge. LayoutParams lp = (LayoutParams) view.getLayoutParams(); - lp.rightMargin = mSideMargins; - lp.leftMargin = mSideMargins; + lp.rightMargin = mHorizontalMargins; + lp.leftMargin = mHorizontalMargins; } if (view == mQSPanelContainer) { // QS panel lays out some of its content full width - qsPanelController.setContentMargins(mContentPadding, mContentPadding); - // Set it as double the side margin (to simulate end margin of current page + - // start margin of next page). - qsPanelController.setPageMargin(mSideMargins); + qsPanelController.setContentMargins(mContentHorizontalPadding, + mContentHorizontalPadding); + qsPanelController.setPageMargin(mTilesPageMargin); } else if (view == mHeader) { - quickStatusBarHeaderController.setContentMargins(mContentPadding, mContentPadding); + quickStatusBarHeaderController.setContentMargins(mContentHorizontalPadding, + mContentHorizontalPadding); } else { view.setPaddingRelative( - mContentPadding, + mContentHorizontalPadding, view.getPaddingTop(), - mContentPadding, + mContentHorizontalPadding, view.getPaddingBottom()); } } |