Merge "Enforce constrainedWidth in date and icons" into tm-qpr-dev

This commit is contained in:
Fabian Kozynski
2022-11-15 14:26:19 +00:00
committed by Android (Google) Code Review
3 changed files with 21 additions and 0 deletions

View File

@@ -59,6 +59,7 @@
<Layout
android:layout_width="wrap_content"
android:layout_height="@dimen/new_qs_header_non_clickable_element_height"
app:layout_constrainedWidth="true"
app:layout_constraintHeight_min="@dimen/new_qs_header_non_clickable_element_height"
app:layout_constraintStart_toEndOf="@id/date"
app:layout_constraintEnd_toStartOf="@id/batteryRemainingIcon"

View File

@@ -51,6 +51,8 @@ object CombinedShadeHeadersConstraintManagerImpl : CombinedShadeHeadersConstrain
connect(R.id.statusIcons, ConstraintSet.START, R.id.date, ConstraintSet.END)
connect(R.id.privacy_container, ConstraintSet.START, R.id.date, ConstraintSet.END)
constrainWidth(R.id.statusIcons, ViewGroup.LayoutParams.WRAP_CONTENT)
constrainedWidth(R.id.date, true)
constrainedWidth(R.id.statusIcons, true)
}
)
}
@@ -92,6 +94,8 @@ object CombinedShadeHeadersConstraintManagerImpl : CombinedShadeHeadersConstrain
centerEnd,
ConstraintSet.END
)
constrainedWidth(R.id.date, true)
constrainedWidth(R.id.statusIcons, true)
},
qsConstraintsChanges = {
setGuidelineBegin(centerStart, offsetFromEdge)

View File

@@ -363,6 +363,22 @@ class CombinedShadeHeaderConstraintsTest : SysuiTestCase() {
}
}
@Test
fun testEmptyCutoutDateIconsAreConstrainedWidth() {
CombinedShadeHeadersConstraintManagerImpl.emptyCutoutConstraints()()
assertThat(qqsConstraint.getConstraint(R.id.date).layout.constrainedWidth).isTrue()
assertThat(qqsConstraint.getConstraint(R.id.statusIcons).layout.constrainedWidth).isTrue()
}
@Test
fun testCenterCutoutDateIconsAreConstrainedWidth() {
CombinedShadeHeadersConstraintManagerImpl.centerCutoutConstraints(false, 10)()
assertThat(qqsConstraint.getConstraint(R.id.date).layout.constrainedWidth).isTrue()
assertThat(qqsConstraint.getConstraint(R.id.statusIcons).layout.constrainedWidth).isTrue()
}
private operator fun ConstraintsChanges.invoke() {
qqsConstraintsChanges?.invoke(qqsConstraint)
qsConstraintsChanges?.invoke(qsConstraint)