Fix workout list icon tint in action menu

This commit is contained in:
José Rebelo
2026-02-09 18:55:04 +00:00
parent b5994cfb04
commit 0032f0e887
4 changed files with 37 additions and 7 deletions
@@ -256,6 +256,16 @@ class WorkoutListActivity : AbstractListActivity<BaseActivitySummary>() {
override fun onCreateActionMode(mode: ActionMode, menu: Menu): Boolean {
mode.title = getString(R.string.number_selected_items, numSelected)
menuInflater.inflate(R.menu.activity_list_context_menu, menu)
// For some reason the icons in the context menu are not tinted
// by the theme, so we do it manually here
val typedValue = android.util.TypedValue()
theme.resolveAttribute(R.attr.actionmenu_icon_color, typedValue, true)
val iconColor = typedValue.data
for (i in 0 until menu.size()) {
menu.getItem(i).icon?.setTint(iconColor)
}
findViewById<View>(R.id.fab).visibility = View.INVISIBLE
return true
}
@@ -6,23 +6,27 @@
android:id="@+id/activity_action_addto_filter"
android:icon="@drawable/ic_filter_alt_plus"
android:title="@string/addto_filter"
app:iconTint="?attr/actionmenu_icon_color"
app:showAsAction="ifRoom" />
<item
android:id="@+id/activity_action_select_all"
android:icon="@drawable/ic_select_all"
android:title="@string/select_all"
app:iconTint="?attr/actionmenu_icon_color"
app:showAsAction="ifRoom" />
<item
android:id="@+id/activity_action_export"
android:icon="@drawable/ic_share"
android:title="@string/share"
app:iconTint="?attr/actionmenu_icon_color"
app:showAsAction="ifRoom" />
<item
android:id="@+id/activity_action_delete"
android:icon="@drawable/ic_delete_forever"
android:title="@string/Delete"
app:showAsAction="never"/>
app:iconTint="?attr/actionmenu_icon_color"
app:showAsAction="never" />
</menu>
@@ -1,15 +1,16 @@
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<item
android:id="@+id/action_filter_charts"
android:icon="@drawable/ic_filter_alt_plus"
android:title="@string/filter_charts"
app:showAsAction="always">
</item>
<item
android:id="@+id/action_rotate_screen"
android:icon="@drawable/ic_mobile_rotate"
android:title="@string/rotate_screen"
app:iconTint="?attr/actionmenu_icon_color"
app:showAsAction="always" />
<item
android:id="@+id/action_filter_charts"
android:icon="@drawable/ic_filter_alt_plus"
android:title="@string/filter_charts"
app:iconTint="?attr/actionmenu_icon_color"
app:showAsAction="ifRoom"/>
</menu>
+15
View File
@@ -18,6 +18,8 @@
<item name="drawerArrowStyle">@style/GadgetbridgeTheme.DrawerButtonStyle</item>
<item name="toolbarNavigationButtonStyle">@style/GadgetbridgeTheme.NavigationButtonStyle</item>
<item name="actionOverflowButtonStyle">@style/GadgetbridgeTheme.OverflowMenuButton</item>
<item name="actionModeStyle">@style/GadgetbridgeTheme.ActionMode</item>
<item name="actionModeCloseButtonStyle">@style/GadgetbridgeTheme.ActionModeCloseButton</item>
<item name="preferenceTheme">@style/AppPreferenceThemeOverlay</item>
<item name="drawer_header_color">?attr/colorPrimaryDark</item>
@@ -196,6 +198,19 @@
<style name="GadgetbridgeTheme.OverflowMenuButton" parent="Widget.AppCompat.ActionButton.Overflow">
<item name="tint">@android:color/white</item>
</style>
<style name="GadgetbridgeTheme.ActionMode" parent="Widget.AppCompat.ActionMode">
<item name="background">@color/primary_light</item>
<item name="titleTextStyle">@style/GadgetbridgeTheme.ActionBarTitleStyle</item>
<item name="subtitleTextStyle">@style/GadgetbridgeTheme.ActionBarTitleStyle</item>
<item name="android:theme">@style/GadgetbridgeTheme.ActionModeOverlay</item>
</style>
<style name="GadgetbridgeTheme.ActionModeOverlay" parent="">
<item name="colorControlNormal">@android:color/white</item>
<item name="actionmenu_icon_color">@android:color/white</item>
</style>
<style name="GadgetbridgeTheme.ActionModeCloseButton" parent="Widget.AppCompat.ActionButton">
<item name="android:tint">@android:color/white</item>
</style>
<style name="GadgetbridgeTheme.ActionBarTitleStyle" parent="TextAppearance.Material3.ActionBar.Title">
<item name="android:textColor">@color/primarytext_dark</item>
</style>