diff options
| author | Andrew Dolgov <fox@fakecake.org> | 2025-05-09 11:04:20 +0300 |
|---|---|---|
| committer | Andrew Dolgov <fox@fakecake.org> | 2025-05-09 11:04:20 +0300 |
| commit | 4ad6971caf93f481155d3f1923b8de97e49a0621 (patch) | |
| tree | e5fbd506aed5b60b27e34efbbc0e322172257795 /org.fox.ttrss/src | |
| parent | b20acce27b05d24888e3a291f3f904bec5a28109 (diff) | |
add hack for material switches in preferences
Diffstat (limited to 'org.fox.ttrss/src')
6 files changed, 44 insertions, 27 deletions
diff --git a/org.fox.ttrss/src/main/res/layout/fragment_article.xml b/org.fox.ttrss/src/main/res/layout/fragment_article.xml index 71cf89ce..e75980b0 100755 --- a/org.fox.ttrss/src/main/res/layout/fragment_article.xml +++ b/org.fox.ttrss/src/main/res/layout/fragment_article.xml @@ -24,7 +24,7 @@ <com.google.android.material.card.MaterialCardView app:layout_scrollFlags="scroll|enterAlways" app:strokeWidth="0dp" - app:shapeAppearance="@style/shape_appearance_article_header" + app:shapeAppearance="@style/ShapeAppearanceArticleHeader" android:layout_width="match_parent" android:layout_height="wrap_content"> diff --git a/org.fox.ttrss/src/main/res/layout/preference_material_switch.xml b/org.fox.ttrss/src/main/res/layout/preference_material_switch.xml new file mode 100644 index 00000000..94d654f0 --- /dev/null +++ b/org.fox.ttrss/src/main/res/layout/preference_material_switch.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- Derived from https://github.com/androidx/androidx/blob/8cb282cc/preference/preference/res/layout/preference_widget_switch_compat.xml --> +<com.google.android.material.materialswitch.MaterialSwitch xmlns:android="http://schemas.android.com/apk/res/android" + android:id="@+id/switchWidget" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:background="@null" + android:clickable="false" + android:focusable="false" />
\ No newline at end of file diff --git a/org.fox.ttrss/src/main/res/values-night/themes.xml b/org.fox.ttrss/src/main/res/values-night/themes.xml index 4d06182b..7d54a029 100644 --- a/org.fox.ttrss/src/main/res/values-night/themes.xml +++ b/org.fox.ttrss/src/main/res/values-night/themes.xml @@ -1,6 +1,7 @@ <resources> <style name="AppTheme" parent="Theme.Material3.Dark.NoActionBar"> <item name="windowActionModeOverlay">true</item> + <item name="preferenceTheme">@style/AppPreferenceThemeOverlay</item> <item name="ic_rss_box">@drawable/baseline_rss_feed_24</item> <item name="ic_checkbox_marked">@drawable/baseline_check_box_24</item> diff --git a/org.fox.ttrss/src/main/res/values/style.xml b/org.fox.ttrss/src/main/res/values/style.xml index d97daff5..0b43f1d9 100644 --- a/org.fox.ttrss/src/main/res/values/style.xml +++ b/org.fox.ttrss/src/main/res/values/style.xml @@ -1,9 +1,18 @@ <resources> - <style name="shape_appearance_article_header"> + <style name="ShapeAppearanceArticleHeader"> <item name="cornerFamily">rounded</item> <item name="cornerSizeTopLeft">0dp</item> <item name="cornerSizeTopRight">0dp</item> <item name="cornerSizeBottomLeft">16dp</item> <item name="cornerSizeBottomRight">16dp</item> </style> + + <!-- https://stackoverflow.com/a/73782598 --> + <style name="AppPreferenceThemeOverlay" parent="@style/PreferenceThemeOverlay"> + <item name="switchPreferenceCompatStyle">@style/AppSwitchPreference</item> + </style> + + <style name="AppSwitchPreference" parent="@style/Preference.SwitchPreferenceCompat.Material"> + <item name="widgetLayout">@layout/preference_material_switch</item> + </style> </resources>
\ No newline at end of file diff --git a/org.fox.ttrss/src/main/res/values/themes.xml b/org.fox.ttrss/src/main/res/values/themes.xml index 56899235..68a57811 100644 --- a/org.fox.ttrss/src/main/res/values/themes.xml +++ b/org.fox.ttrss/src/main/res/values/themes.xml @@ -2,6 +2,7 @@ <style name="AppTheme" parent="Theme.Material3.Light.NoActionBar"> <item name="windowActionModeOverlay">true</item> + <item name="preferenceTheme">@style/AppPreferenceThemeOverlay</item> <item name="ic_rss_box">@drawable/baseline_rss_feed_24</item> <item name="ic_checkbox_marked">@drawable/baseline_check_box_24</item> diff --git a/org.fox.ttrss/src/main/res/xml/preferences.xml b/org.fox.ttrss/src/main/res/xml/preferences.xml index 7c85bac2..3c422e7e 100755 --- a/org.fox.ttrss/src/main/res/xml/preferences.xml +++ b/org.fox.ttrss/src/main/res/xml/preferences.xml @@ -38,20 +38,17 @@ android:key="theme" android:title="@string/pref_theme" /> - <SwitchPreference + <SwitchPreferenceCompat android:defaultValue="false" android:key="sort_feeds_by_unread" android:title="@string/sort_feeds_by_unread" /> - <!-- <SwitchPreference - android:defaultValue="false" - android:key="download_feed_icons" - android:title="@string/download_feed_icons" /> --> - <SwitchPreference + + <SwitchPreferenceCompat android:defaultValue="false" android:key="enable_cats" android:title="@string/enable_cats" /> - <SwitchPreference + <SwitchPreferenceCompat android:defaultValue="false" android:dependency="enable_cats" android:key="browse_cats_like_feeds" @@ -65,7 +62,7 @@ android:key="open_on_startup" android:title="@string/open_on_startup" /> - <SwitchPreference + <SwitchPreferenceCompat android:defaultValue="false" android:key="force_phone_layout" android:summary="@string/force_phone_layout_summary" @@ -92,24 +89,24 @@ android:summary="@string/prefs_headline_display_mode_long" android:title="@string/prefs_headline_display_mode" /> - <SwitchPreference + <SwitchPreferenceCompat android:defaultValue="false" android:key="headline_images_wifi_only" android:summary="@string/prefs_headline_images_wifi_only_long" android:title="@string/prefs_headline_images_wifi_only" /> - <SwitchPreference + <SwitchPreferenceCompat android:defaultValue="true" android:key="headlines_show_content" android:title="@string/pref_headlines_show_content" /> - <SwitchPreference + <SwitchPreferenceCompat android:defaultValue="false" android:disableDependentsState="true" android:key="headlines_mark_read_scroll" android:title="@string/pref_headlines_mark_read_scroll" /> - <SwitchPreference + <SwitchPreferenceCompat android:defaultValue="true" android:dependency="headlines_mark_read_scroll" android:key="headlines_swipe_to_dismiss" @@ -124,20 +121,20 @@ android:summary="@string/prefs_headline_request_size_long" android:title="@string/prefs_headline_request_size" /> - <SwitchPreference + <SwitchPreferenceCompat android:defaultValue="false" android:key="enable_image_downsampling" android:title="@string/prefs_enable_image_downsampling" android:summary="@string/prefs_enable_image_downsampling_long" /> - <SwitchPreference + <SwitchPreferenceCompat android:defaultValue="false" android:key="always_downsample_images" android:dependency="enable_image_downsampling" android:title="@string/prefs_always_downsample_images" android:summary="@string/prefs_always_downsample_images_long" /> - <SwitchPreference + <SwitchPreferenceCompat android:defaultValue="false" android:key="inline_video_player" android:summary="@string/prefs_inline_video_player" @@ -153,32 +150,32 @@ app:showSeekBarValue="true" app:key="article_font_size_sp_int" android:title="@string/pref_font_size" /> - <SwitchPreference + <SwitchPreferenceCompat android:defaultValue="true" android:key="justify_article_text" android:title="@string/justify_article_text" /> - <SwitchPreference + <SwitchPreferenceCompat android:defaultValue="false" android:key="use_volume_keys" android:summary="@string/use_volume_keys_long" android:title="@string/use_volume_keys" /> - <SwitchPreference + <SwitchPreferenceCompat android:defaultValue="true" android:key="enable_article_fab" android:summary="@string/prefs_enable_fab_long" android:title="@string/prefs_enable_fab" /> </PreferenceCategory> <PreferenceCategory android:title="@string/prefs_opening_links" > - <SwitchPreference + <SwitchPreferenceCompat android:defaultValue="true" android:key="enable_custom_tabs" android:summary="@string/prefs_custom_tabs_summary" android:title="@string/prefs_use_custom_tabs" /> - <SwitchPreference + <SwitchPreferenceCompat android:defaultValue="true" android:key="custom_tabs_ask_always" android:title="@string/ask_me_every_time" /> - <SwitchPreference + <SwitchPreferenceCompat android:defaultValue="false" android:key="always_open_uri" android:summary="@string/prefs_always_open_uri_summary" @@ -193,12 +190,12 @@ android:summary="@string/offline_articles_to_download_long" android:title="@string/offline_articles_to_download" /> - <SwitchPreference + <SwitchPreferenceCompat android:defaultValue="false" android:key="offline_sort_by_feed" android:title="@string/prefs_offline_sort_by_feed" /> - <SwitchPreference + <SwitchPreferenceCompat android:defaultValue="false" android:key="offline_image_cache_enabled" android:summary="@string/offline_media_cache_enabled_summary" @@ -220,7 +217,7 @@ android:key="widget_background" android:title="@string/pref_widget_background" /> - <SwitchPreference + <SwitchPreferenceCompat android:defaultValue="true" android:key="widget_show_fresh" android:title="@string/prefs_widget_show_fresh" @@ -232,7 +229,7 @@ android:key="show_logcat" android:title="@string/logcat_title" /> - <SwitchPreference + <SwitchPreferenceCompat android:defaultValue="false" android:key="transport_debugging" android:title="@string/transport_debugging" /> |