summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--res/flag(com.android.documentsui.flags.use_material3)/color/list_item_ripple_color.xml4
-rw-r--r--res/flag(com.android.documentsui.flags.use_material3)/drawable/list_item_background.xml57
2 files changed, 61 insertions, 0 deletions
diff --git a/res/flag(com.android.documentsui.flags.use_material3)/color/list_item_ripple_color.xml b/res/flag(com.android.documentsui.flags.use_material3)/color/list_item_ripple_color.xml
index 6c2d0714e..85e5b46ce 100644
--- a/res/flag(com.android.documentsui.flags.use_material3)/color/list_item_ripple_color.xml
+++ b/res/flag(com.android.documentsui.flags.use_material3)/color/list_item_ripple_color.xml
@@ -17,6 +17,10 @@
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_enabled="false" android:color="@android:color/transparent" />
+ <!-- By default <ripple> introduces a gray-ish layer for the focused state which we don't
+ want, hence explicitly setting focused ripple color to transparent to get rid of that.
+ -->
+ <item android:state_focused="true" android:color="@android:color/transparent" />
<item android:state_selected="true" android:alpha="@dimen/ripple_overlay_alpha"
android:color="?attr/colorOnPrimaryContainer" />
<item android:alpha="@dimen/ripple_overlay_alpha"
diff --git a/res/flag(com.android.documentsui.flags.use_material3)/drawable/list_item_background.xml b/res/flag(com.android.documentsui.flags.use_material3)/drawable/list_item_background.xml
index 31bbec1f2..79c2eb1b7 100644
--- a/res/flag(com.android.documentsui.flags.use_material3)/drawable/list_item_background.xml
+++ b/res/flag(com.android.documentsui.flags.use_material3)/drawable/list_item_background.xml
@@ -26,6 +26,41 @@
<item>
<selector>
<!-- Selected -->
+ <item
+ android:state_selected="true"
+ android:state_focused="true"
+ android:state_hovered="true">
+ <layer-list>
+ <item
+ android:bottom="@dimen/focus_ring_gap"
+ android:left="@dimen/focus_ring_gap"
+ android:right="@dimen/focus_ring_gap"
+ android:top="@dimen/focus_ring_gap">
+ <shape>
+ <corners android:radius="@dimen/list_item_height" />
+ <solid android:color="@color/list_item_selected_background_color" />
+ </shape>
+ </item>
+ <item
+ android:bottom="@dimen/focus_ring_gap"
+ android:left="@dimen/focus_ring_gap"
+ android:right="@dimen/focus_ring_gap"
+ android:top="@dimen/focus_ring_gap">
+ <shape android:tint="?attr/colorOnPrimaryContainer">
+ <corners android:radius="@dimen/list_item_height" />
+ <solid android:color="@color/overlay_hover_color_percentage" />
+ </shape>
+ </item>
+ <item>
+ <shape>
+ <corners android:radius="@dimen/list_item_height" />
+ <stroke
+ android:width="@dimen/focus_ring_width"
+ android:color="?attr/colorSecondary" />
+ </shape>
+ </item>
+ </layer-list>
+ </item>
<item android:state_selected="true" android:state_drag_hovered="true">
<layer-list>
<item>
@@ -104,6 +139,28 @@
</item>
<!-- Unselected -->
+ <item android:state_focused="true" android:state_hovered="true">
+ <layer-list>
+ <item
+ android:bottom="@dimen/focus_ring_gap"
+ android:left="@dimen/focus_ring_gap"
+ android:right="@dimen/focus_ring_gap"
+ android:top="@dimen/focus_ring_gap">
+ <shape android:tint="?attr/colorOnSurface">
+ <corners android:radius="@dimen/list_item_height" />
+ <solid android:color="@color/overlay_hover_color_percentage" />
+ </shape>
+ </item>
+ <item>
+ <shape>
+ <corners android:radius="@dimen/list_item_height" />
+ <stroke
+ android:width="@dimen/focus_ring_width"
+ android:color="?attr/colorSecondary" />
+ </shape>
+ </item>
+ </layer-list>
+ </item>
<item android:state_drag_hovered="true">
<shape android:tint="?attr/colorOnSurface">
<corners android:radius="@dimen/list_item_height" />