Decreases spacing between quick affordance items.
As per UX guidelines.
Bug: 266116562
Test: manually verified that this matches UX spec.
Change-Id: I7af876abdda128dc0dcb44cf5e00b82a6ca82c1d
diff --git a/src/com/android/customization/picker/quickaffordance/ui/binder/KeyguardQuickAffordancePickerBinder.kt b/src/com/android/customization/picker/quickaffordance/ui/binder/KeyguardQuickAffordancePickerBinder.kt
index 526b666..74d38b1 100644
--- a/src/com/android/customization/picker/quickaffordance/ui/binder/KeyguardQuickAffordancePickerBinder.kt
+++ b/src/com/android/customization/picker/quickaffordance/ui/binder/KeyguardQuickAffordancePickerBinder.kt
@@ -54,12 +54,12 @@
slotTabView.adapter = slotTabAdapter
slotTabView.layoutManager =
LinearLayoutManager(view.context, RecyclerView.HORIZONTAL, false)
- slotTabView.addItemDecoration(ItemSpacing())
+ slotTabView.addItemDecoration(ItemSpacing(SLOT_TAB_ITEM_SPACING_DP))
val affordancesAdapter = AffordancesAdapter()
affordancesView.adapter = affordancesAdapter
affordancesView.layoutManager =
LinearLayoutManager(view.context, RecyclerView.HORIZONTAL, false)
- affordancesView.addItemDecoration(ItemSpacing())
+ affordancesView.addItemDecoration(ItemSpacing(AFFORDANCE_ITEM_SPACING_DP))
var dialog: Dialog? = null
@@ -108,27 +108,29 @@
)
}
- private class ItemSpacing : RecyclerView.ItemDecoration() {
+ private class ItemSpacing(
+ private val itemSpacingDp: Int,
+ ) : RecyclerView.ItemDecoration() {
override fun getItemOffsets(outRect: Rect, itemPosition: Int, parent: RecyclerView) {
val addSpacingToStart = itemPosition > 0
val addSpacingToEnd = itemPosition < (parent.adapter?.itemCount ?: 0) - 1
val isRtl = parent.layoutManager?.layoutDirection == ViewCompat.LAYOUT_DIRECTION_RTL
val density = parent.context.resources.displayMetrics.density
+ val halfItemSpacingPx = itemSpacingDp.toPx(density) / 2
if (!isRtl) {
- outRect.left = if (addSpacingToStart) ITEM_SPACING_DP.toPx(density) else 0
- outRect.right = if (addSpacingToEnd) ITEM_SPACING_DP.toPx(density) else 0
+ outRect.left = if (addSpacingToStart) halfItemSpacingPx else 0
+ outRect.right = if (addSpacingToEnd) halfItemSpacingPx else 0
} else {
- outRect.left = if (addSpacingToEnd) ITEM_SPACING_DP.toPx(density) else 0
- outRect.right = if (addSpacingToStart) ITEM_SPACING_DP.toPx(density) else 0
+ outRect.left = if (addSpacingToEnd) halfItemSpacingPx else 0
+ outRect.right = if (addSpacingToStart) halfItemSpacingPx else 0
}
}
private fun Int.toPx(density: Float): Int {
return (this * density).toInt()
}
-
- companion object {
- private const val ITEM_SPACING_DP = 12
- }
}
+
+ private const val SLOT_TAB_ITEM_SPACING_DP = 12
+ private const val AFFORDANCE_ITEM_SPACING_DP = 8
}