Merge "Fix layout to handle long carrier text" into tm-qpr-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
2670c8a669
@@ -41,9 +41,6 @@
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@id/privacy_container"
|
||||
app:layout_constraintBottom_toBottomOf="@id/carrier_group"
|
||||
app:layout_constraintEnd_toStartOf="@id/carrier_group"
|
||||
app:layout_constraintHorizontal_bias="0"
|
||||
app:layout_constraintHorizontal_chainStyle="spread_inside"
|
||||
/>
|
||||
<Transform
|
||||
android:scaleX="2.57"
|
||||
@@ -62,18 +59,18 @@
|
||||
/>
|
||||
</Constraint>
|
||||
|
||||
<!-- LargeScreenShadeHeaderController helps with managing clock width to layout this view -->
|
||||
<Constraint
|
||||
android:id="@+id/carrier_group">
|
||||
<Layout
|
||||
app:layout_constraintWidth_min="48dp"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="@dimen/large_screen_shade_header_min_height"
|
||||
app:layout_constraintStart_toEndOf="@id/clock"
|
||||
app:layout_constraintWidth_min="48dp"
|
||||
app:layout_constraintWidth_default="wrap"
|
||||
app:layout_constraintStart_toStartOf="@id/clock"
|
||||
app:layout_constraintTop_toBottomOf="@id/privacy_container"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintHorizontal_bias="1"
|
||||
app:layout_constraintBottom_toTopOf="@id/batteryRemainingIcon"
|
||||
app:layout_constraintHorizontal_chainStyle="spread_inside"
|
||||
/>
|
||||
<PropertySet
|
||||
android:alpha="1"
|
||||
|
||||
@@ -45,7 +45,6 @@ import com.android.systemui.qs.HeaderPrivacyIconsController
|
||||
import com.android.systemui.qs.carrier.QSCarrierGroup
|
||||
import com.android.systemui.qs.carrier.QSCarrierGroupController
|
||||
import com.android.systemui.shade.LargeScreenShadeHeaderController.Companion.HEADER_TRANSITION_ID
|
||||
import com.android.systemui.shade.LargeScreenShadeHeaderController.Companion.LARGE_SCREEN_HEADER_CONSTRAINT
|
||||
import com.android.systemui.shade.LargeScreenShadeHeaderController.Companion.QQS_HEADER_CONSTRAINT
|
||||
import com.android.systemui.shade.LargeScreenShadeHeaderController.Companion.QS_HEADER_CONSTRAINT
|
||||
import com.android.systemui.statusbar.phone.StatusBarContentInsetsProvider
|
||||
@@ -305,6 +304,8 @@ class LargeScreenShadeHeaderController @Inject constructor(
|
||||
val newPivot = if (v.isLayoutRtl) v.width.toFloat() else 0f
|
||||
v.pivotX = newPivot
|
||||
v.pivotY = v.height.toFloat() / 2
|
||||
|
||||
qsCarrierGroup.setPaddingRelative((v.width * v.scaleX).toInt(), 0, 0, 0)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -90,7 +90,7 @@ class CombinedShadeHeaderConstraintsTest : SysuiTestCase() {
|
||||
fun testEdgeElementsAlignedWithEdgeOrGuide_qs() {
|
||||
with(qsConstraint) {
|
||||
assertThat(getConstraint(R.id.clock).layout.startToStart).isEqualTo(PARENT_ID)
|
||||
assertThat(getConstraint(R.id.clock).layout.horizontalBias).isEqualTo(0f)
|
||||
assertThat(getConstraint(R.id.clock).layout.horizontalBias).isEqualTo(0.5f)
|
||||
|
||||
assertThat(getConstraint(R.id.date).layout.startToStart).isEqualTo(PARENT_ID)
|
||||
assertThat(getConstraint(R.id.date).layout.horizontalBias).isEqualTo(0.5f)
|
||||
@@ -342,7 +342,6 @@ class CombinedShadeHeaderConstraintsTest : SysuiTestCase() {
|
||||
R.id.clock to "clock",
|
||||
R.id.date to "date",
|
||||
R.id.privacy_container to "privacy",
|
||||
R.id.carrier_group to "carriers",
|
||||
)
|
||||
views.forEach { (id, name) ->
|
||||
assertWithMessage("$name has 0 height in qqs")
|
||||
@@ -361,7 +360,6 @@ class CombinedShadeHeaderConstraintsTest : SysuiTestCase() {
|
||||
val views = mapOf(
|
||||
R.id.clock to "clock",
|
||||
R.id.privacy_container to "privacy",
|
||||
R.id.carrier_group to "carriers",
|
||||
)
|
||||
views.forEach { (id, name) ->
|
||||
expect.withMessage("$name changes height")
|
||||
|
||||
@@ -692,6 +692,19 @@ class LargeScreenShadeHeaderControllerCombinedTest : SysuiTestCase() {
|
||||
assertThat(captor.value.getResId()).isEqualTo(R.xml.large_screen_shade_header)
|
||||
}
|
||||
|
||||
@Test
|
||||
fun `carrier left padding is set when clock layout changes`() {
|
||||
val width = 200
|
||||
whenever(clock.width).thenReturn(width)
|
||||
whenever(clock.scaleX).thenReturn(2.57f) // 2.57 comes from qs_header.xml
|
||||
val captor = ArgumentCaptor.forClass(View.OnLayoutChangeListener::class.java)
|
||||
|
||||
verify(clock).addOnLayoutChangeListener(capture(captor))
|
||||
captor.value.onLayoutChange(clock, 0, 0, width, 0, 0, 0, 0, 0)
|
||||
|
||||
verify(carrierGroup).setPaddingRelative(514, 0, 0, 0)
|
||||
}
|
||||
|
||||
private fun View.executeLayoutChange(
|
||||
left: Int,
|
||||
top: Int,
|
||||
|
||||
Reference in New Issue
Block a user