Fixes touch targets for several tabs in ThemePicker by wrapping views in layout
Bug: 280729818
Bug: 280547411
Bug: 278662294
Test: Manually with Accessibility Scanner and on device
Change-Id: Ibf681662a43684858b7ae9f2f6ecff04d32ecd9f
diff --git a/res/layout/clock_size_radio_button_group.xml b/res/layout/clock_size_radio_button_group.xml
index 4264007..2aa78d2 100644
--- a/res/layout/clock_size_radio_button_group.xml
+++ b/res/layout/clock_size_radio_button_group.xml
@@ -57,6 +57,7 @@
android:id="@+id/button_container_small"
android:layout_width="match_parent"
android:layout_height="wrap_content"
+ android:minHeight="@dimen/touch_target_min_height"
android:orientation="horizontal">
<RadioButton
diff --git a/res/layout/picker_fragment_tab.xml b/res/layout/picker_fragment_tab.xml
index 01ba81d..7aaa776 100644
--- a/res/layout/picker_fragment_tab.xml
+++ b/res/layout/picker_fragment_tab.xml
@@ -14,18 +14,26 @@
~ limitations under the License.
~
-->
-
-<TextView
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:id="@+id/text"
+<FrameLayout
+ android:id="@+id/text_wrapper"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
- android:textColor="@color/picker_fragment_tab_text_color"
- android:paddingVertical="8dp"
- android:paddingHorizontal="16dp"
- android:minWidth="48dp"
- android:minHeight="36dp"
- android:gravity="center"
- android:background="@drawable/picker_fragment_tab_background"
- android:maxLines="1"
- android:ellipsize="end" />
+ android:minWidth="@dimen/touch_target_min_width"
+ android:minHeight="@dimen/touch_target_min_height"
+ xmlns:android="http://schemas.android.com/apk/res/android">
+
+ <TextView
+ android:id="@+id/text"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:textColor="@color/picker_fragment_tab_text_color"
+ android:paddingVertical="8dp"
+ android:paddingHorizontal="16dp"
+ android:minWidth="48dp"
+ android:minHeight="36dp"
+ android:gravity="center"
+ android:background="@drawable/picker_fragment_tab_background"
+ android:maxLines="1"
+ android:ellipsize="end" />
+
+</FrameLayout>
diff --git a/src/com/android/customization/picker/clock/ui/adapter/ClockSettingsTabAdapter.kt b/src/com/android/customization/picker/clock/ui/adapter/ClockSettingsTabAdapter.kt
index 746fdb3..981a8e8 100644
--- a/src/com/android/customization/picker/clock/ui/adapter/ClockSettingsTabAdapter.kt
+++ b/src/com/android/customization/picker/clock/ui/adapter/ClockSettingsTabAdapter.kt
@@ -54,7 +54,7 @@
val item = items[position]
holder.itemView.isSelected = item.isSelected
holder.textView.text = item.name
- holder.textView.setOnClickListener(
+ holder.itemView.setOnClickListener(
if (item.onClicked != null) {
View.OnClickListener { item.onClicked.invoke() }
} else {
diff --git a/src/com/android/customization/picker/color/ui/adapter/ColorTypeTabAdapter.kt b/src/com/android/customization/picker/color/ui/adapter/ColorTypeTabAdapter.kt
index bb9f082..553f586 100644
--- a/src/com/android/customization/picker/color/ui/adapter/ColorTypeTabAdapter.kt
+++ b/src/com/android/customization/picker/color/ui/adapter/ColorTypeTabAdapter.kt
@@ -55,7 +55,7 @@
val item = items[position]
holder.itemView.isSelected = item.isSelected
holder.textView.text = item.name
- holder.textView.setOnClickListener(
+ holder.itemView.setOnClickListener(
if (item.onClick != null) {
View.OnClickListener { item.onClick.invoke() }
} else {
diff --git a/src/com/android/customization/picker/quickaffordance/ui/adapter/SlotTabAdapter.kt b/src/com/android/customization/picker/quickaffordance/ui/adapter/SlotTabAdapter.kt
index 5203ed3..6879ffc 100644
--- a/src/com/android/customization/picker/quickaffordance/ui/adapter/SlotTabAdapter.kt
+++ b/src/com/android/customization/picker/quickaffordance/ui/adapter/SlotTabAdapter.kt
@@ -55,7 +55,7 @@
val item = items[position]
holder.itemView.isSelected = item.isSelected
holder.textView.text = item.name
- holder.textView.setOnClickListener(
+ holder.itemView.setOnClickListener(
if (item.onClicked != null) {
View.OnClickListener { item.onClicked.invoke() }
} else {