summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xorg.fox.ttrss/src/main/java/org/fox/ttrss/Application.java4
-rwxr-xr-xorg.fox.ttrss/src/main/java/org/fox/ttrss/CommonActivity.java7
-rw-r--r--org.fox.ttrss/src/main/res/values-night/themes.xml5
-rwxr-xr-xorg.fox.ttrss/src/main/res/values/strings.xml2
-rw-r--r--org.fox.ttrss/src/main/res/values/themes.xml4
-rwxr-xr-xorg.fox.ttrss/src/main/res/xml/preferences.xml7
6 files changed, 25 insertions, 4 deletions
diff --git a/org.fox.ttrss/src/main/java/org/fox/ttrss/Application.java b/org.fox.ttrss/src/main/java/org/fox/ttrss/Application.java
index b4604632..17ae7ccf 100755
--- a/org.fox.ttrss/src/main/java/org/fox/ttrss/Application.java
+++ b/org.fox.ttrss/src/main/java/org/fox/ttrss/Application.java
@@ -5,6 +5,8 @@ import android.net.ConnectivityManager;
import android.net.NetworkInfo;
import android.os.Bundle;
+import com.google.android.material.color.DynamicColors;
+
import org.acra.ACRA;
import org.acra.config.CoreConfigurationBuilder;
import org.acra.config.DialogConfigurationBuilder;
@@ -41,6 +43,8 @@ public class Application extends android.app.Application {
public final void onCreate() {
super.onCreate();
+ DynamicColors.applyToActivitiesIfAvailable(this);
+
m_singleton = this;
m_cmgr = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
m_articleModel = new ArticleModel(this);
diff --git a/org.fox.ttrss/src/main/java/org/fox/ttrss/CommonActivity.java b/org.fox.ttrss/src/main/java/org/fox/ttrss/CommonActivity.java
index 12c74d2a..07c7a817 100755
--- a/org.fox.ttrss/src/main/java/org/fox/ttrss/CommonActivity.java
+++ b/org.fox.ttrss/src/main/java/org/fox/ttrss/CommonActivity.java
@@ -305,7 +305,10 @@ public class CommonActivity extends AppCompatActivity implements SharedPreferenc
AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_FOLLOW_SYSTEM);
}
- setTheme(R.style.AppTheme);
+ if (prefs.getBoolean("enable_dynamic_colors", false))
+ setTheme(R.style.AppTheme_Dynamic);
+ else
+ setTheme(R.style.AppTheme);
}
@Override
@@ -316,7 +319,7 @@ public class CommonActivity extends AppCompatActivity implements SharedPreferenc
setAppTheme(sharedPreferences);
}
- String[] filter = new String[] { "enable_cats", "widget_update_interval",
+ String[] filter = new String[] { "enable_dynamic_colors", "enable_cats", "widget_update_interval",
"headlines_swipe_to_dismiss", "headlines_mark_read_scroll", "headlines_request_size",
"force_phone_layout", "open_on_startup", "window_secure_mode" };
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 e11ef016..53c3e0b7 100644
--- a/org.fox.ttrss/src/main/res/values-night/themes.xml
+++ b/org.fox.ttrss/src/main/res/values-night/themes.xml
@@ -1,5 +1,8 @@
<resources>
- <style name="AppTheme" parent="Theme.Material3.Dark.NoActionBar">
+ <style name="AppTheme.Dynamic" parent="Theme.Material3.DynamicColors.DayNight.NoActionBar">
+ </style>
+
+ <style name="AppTheme" parent="Theme.Material3.DayNight.NoActionBar">
<item name="windowActionModeOverlay">true</item>
<item name="preferenceTheme">@style/AppPreferenceThemeOverlay</item>
diff --git a/org.fox.ttrss/src/main/res/values/strings.xml b/org.fox.ttrss/src/main/res/values/strings.xml
index 9512bc90..346a30c6 100755
--- a/org.fox.ttrss/src/main/res/values/strings.xml
+++ b/org.fox.ttrss/src/main/res/values/strings.xml
@@ -309,5 +309,7 @@
<string name="headlines_set_display_mode">Set display mode</string>
<string name="window_secure_mode_summary">Disables screenshots and hides window contents on non-secure displays</string>
<string name="window_secure_mode">Secure window mode</string>
+ <string name="enable_dynamic_colors_summary">Tints the UI according to color settings of your device</string>
+ <string name="enable_dynamic_colors">Dynamic colors</string>
</resources>
diff --git a/org.fox.ttrss/src/main/res/values/themes.xml b/org.fox.ttrss/src/main/res/values/themes.xml
index 15be8c17..53c3e0b7 100644
--- a/org.fox.ttrss/src/main/res/values/themes.xml
+++ b/org.fox.ttrss/src/main/res/values/themes.xml
@@ -1,6 +1,8 @@
<resources>
+ <style name="AppTheme.Dynamic" parent="Theme.Material3.DynamicColors.DayNight.NoActionBar">
+ </style>
- <style name="AppTheme" parent="Theme.Material3.Light.NoActionBar">
+ <style name="AppTheme" parent="Theme.Material3.DayNight.NoActionBar">
<item name="windowActionModeOverlay">true</item>
<item name="preferenceTheme">@style/AppPreferenceThemeOverlay</item>
diff --git a/org.fox.ttrss/src/main/res/xml/preferences.xml b/org.fox.ttrss/src/main/res/xml/preferences.xml
index 9e1f6642..6ceec5cc 100755
--- a/org.fox.ttrss/src/main/res/xml/preferences.xml
+++ b/org.fox.ttrss/src/main/res/xml/preferences.xml
@@ -31,6 +31,7 @@
<PreferenceCategory
android:key="category_look_and_feel"
android:title="@string/look_and_feel" >
+
<ListPreference
android:defaultValue="THEME_FOLLOW_DEVICE"
android:entries="@array/pref_theme_names"
@@ -40,6 +41,12 @@
<SwitchPreferenceCompat
android:defaultValue="false"
+ android:key="enable_dynamic_colors"
+ android:summary="@string/enable_dynamic_colors_summary"
+ android:title="@string/enable_dynamic_colors" />
+
+ <SwitchPreferenceCompat
+ android:defaultValue="false"
android:key="sort_feeds_by_unread"
android:title="@string/sort_feeds_by_unread" />