From 33960ec668d0191ccc16818ae5651abe4c34ae0d Mon Sep 17 00:00:00 2001 From: Fabian Kozynski Date: Tue, 4 Oct 2022 11:20:39 -0400 Subject: [PATCH 1/2] Fix sizes in new header to spec Also, fix text style to use correct font family and fix pivot for scaling of clock to always be in the vertical center. Test: manual Test: atest LargeScreenShadeHeaderControllerCombinedTest Fixes: 245971190 Change-Id: Idfaf9e9052cd746affd305e5ab609d509247501d --- .../res/layout/combined_qs_header.xml | 4 +- packages/SystemUI/res/values/dimens.xml | 3 +- packages/SystemUI/res/values/styles.xml | 5 +-- packages/SystemUI/res/xml/qqs_header.xml | 11 ++--- packages/SystemUI/res/xml/qs_header_new.xml | 16 +++---- .../shade/LargeScreenShadeHeaderController.kt | 1 + ...ScreenShadeHeaderControllerCombinedTest.kt | 45 +++++++++++++++++++ 7 files changed, 65 insertions(+), 20 deletions(-) diff --git a/packages/SystemUI/res/layout/combined_qs_header.xml b/packages/SystemUI/res/layout/combined_qs_header.xml index 5dc34b9db594f..a565988c14ade 100644 --- a/packages/SystemUI/res/layout/combined_qs_header.xml +++ b/packages/SystemUI/res/layout/combined_qs_header.xml @@ -73,8 +73,8 @@ android:singleLine="true" android:textDirection="locale" android:textAppearance="@style/TextAppearance.QS.Status" - android:transformPivotX="0sp" - android:transformPivotY="20sp" + android:transformPivotX="0dp" + android:transformPivotY="24dp" android:scaleX="1" android:scaleY="1" /> diff --git a/packages/SystemUI/res/values/dimens.xml b/packages/SystemUI/res/values/dimens.xml index 2eebdc61186c6..cf100cb04a7bb 100644 --- a/packages/SystemUI/res/values/dimens.xml +++ b/packages/SystemUI/res/values/dimens.xml @@ -519,7 +519,7 @@ 8dp @dimen/qs_tile_margin_horizontal 4dp - 8dp + 12dp 16dp 16dp 24dp @@ -572,6 +572,7 @@ 48dp 24dp + 20dp 20dp 88dp diff --git a/packages/SystemUI/res/values/styles.xml b/packages/SystemUI/res/values/styles.xml index ac3eb7e18539f..b5011dfaf6ebd 100644 --- a/packages/SystemUI/res/values/styles.xml +++ b/packages/SystemUI/res/values/styles.xml @@ -128,11 +128,10 @@ diff --git a/packages/SystemUI/res/xml/qqs_header.xml b/packages/SystemUI/res/xml/qqs_header.xml index a82684d0358b4..88b4f43b440b8 100644 --- a/packages/SystemUI/res/xml/qqs_header.xml +++ b/packages/SystemUI/res/xml/qqs_header.xml @@ -43,7 +43,8 @@ android:id="@+id/date"> @@ -54,11 +54,11 @@ android:id="@+id/date"> @@ -87,7 +87,7 @@ android:id="@+id/statusIcons"> val newPivot = if (v.isLayoutRtl) v.width.toFloat() else 0f v.pivotX = newPivot + v.pivotY = v.height.toFloat() / 2 } } diff --git a/packages/SystemUI/tests/src/com/android/systemui/shade/LargeScreenShadeHeaderControllerCombinedTest.kt b/packages/SystemUI/tests/src/com/android/systemui/shade/LargeScreenShadeHeaderControllerCombinedTest.kt index 0151822f871cf..14a3bc147808b 100644 --- a/packages/SystemUI/tests/src/com/android/systemui/shade/LargeScreenShadeHeaderControllerCombinedTest.kt +++ b/packages/SystemUI/tests/src/com/android/systemui/shade/LargeScreenShadeHeaderControllerCombinedTest.kt @@ -659,6 +659,51 @@ class LargeScreenShadeHeaderControllerCombinedTest : SysuiTestCase() { verify(privacyIconsController, never()).onParentInvisible() } + @Test + fun clockPivotYInCenter() { + val captor = ArgumentCaptor.forClass(View.OnLayoutChangeListener::class.java) + verify(clock).addOnLayoutChangeListener(capture(captor)) + var height = 100 + val width = 50 + + clock.executeLayoutChange(0, 0, width, height, captor.value) + verify(clock).pivotY = height.toFloat() / 2 + + height = 150 + clock.executeLayoutChange(0, 0, width, height, captor.value) + verify(clock).pivotY = height.toFloat() / 2 + } + + private fun View.executeLayoutChange( + left: Int, + top: Int, + right: Int, + bottom: Int, + listener: View.OnLayoutChangeListener + ) { + val oldLeft = this.left + val oldTop = this.top + val oldRight = this.right + val oldBottom = this.bottom + whenever(this.left).thenReturn(left) + whenever(this.top).thenReturn(top) + whenever(this.right).thenReturn(right) + whenever(this.bottom).thenReturn(bottom) + whenever(this.height).thenReturn(bottom - top) + whenever(this.width).thenReturn(right - left) + listener.onLayoutChange( + this, + oldLeft, + oldTop, + oldRight, + oldBottom, + left, + top, + right, + bottom + ) + } + private fun createWindowInsets( topCutout: Rect? = Rect() ): WindowInsets { From b157b8109282c6391d9ffcd436fc81572651c5d4 Mon Sep 17 00:00:00 2001 From: Fabian Kozynski Date: Tue, 11 Oct 2022 10:53:47 -0400 Subject: [PATCH 2/2] Bring animations up to spec * Complete fade out of date+icons at 14% of animation * Start fade in of date+icons at 58% of animation * Set key position such that date+icons fade out aligned with clock Test: manual Fixes: 243838218 Change-Id: I64da90516b2e205dd1f23a4dfd79e2c7b2018192 --- packages/SystemUI/res/values/integers.xml | 7 +++ .../res/xml/combined_qs_header_scene.xml | 51 ++++++++----------- 2 files changed, 29 insertions(+), 29 deletions(-) diff --git a/packages/SystemUI/res/values/integers.xml b/packages/SystemUI/res/values/integers.xml index 3164ed1e67513..e30d4415a0c4c 100644 --- a/packages/SystemUI/res/values/integers.xml +++ b/packages/SystemUI/res/values/integers.xml @@ -28,4 +28,11 @@ 0 + + + 14 + 58 + + 0.1066 \ No newline at end of file diff --git a/packages/SystemUI/res/xml/combined_qs_header_scene.xml b/packages/SystemUI/res/xml/combined_qs_header_scene.xml index f3866c08cbfc6..de855e275f5f1 100644 --- a/packages/SystemUI/res/xml/combined_qs_header_scene.xml +++ b/packages/SystemUI/res/xml/combined_qs_header_scene.xml @@ -27,67 +27,60 @@ -