Cherish:move all theming stuffs to our Theme Settings

Signed-off-by: Hưng Phan <phandinhhungvp2001@gmail.com>
This commit is contained in:
Hưng Phan
2021-12-18 19:50:19 +07:00
parent 7e26bdce09
commit f22f3ab622
3 changed files with 43 additions and 1 deletions

View File

@@ -71,6 +71,9 @@
<string name="custom_seekbar_default_value_to_set">Default value: <xliff:g id="v">%s</xliff:g>\nLong press to set</string> <string name="custom_seekbar_default_value_to_set">Default value: <xliff:g id="v">%s</xliff:g>\nLong press to set</string>
<string name="custom_seekbar_default_value_is_set">Default value is set</string> <string name="custom_seekbar_default_value_is_set">Default value is set</string>
<string name="add_package_to_title">Add application</string> <string name="add_package_to_title">Add application</string>
<string name="profile_choose_app">Choose app</string>
<string name="dialog_delete_title">Delete</string>
<string name="dialog_delete_message">Remove selected item?</string>
<!-- QS settings --> <!-- QS settings -->
<string name="qs_title">Quick settings</string> <string name="qs_title">Quick settings</string>
@@ -120,4 +123,17 @@
<string name="search">Search</string> <string name="search">Search</string>
<string name="search_apps">Search apps</string> <string name="search_apps">Search apps</string>
<!-- Themeing -->
<string name="dark_ui_mode_summary">Browse the dark theme options</string>
<!-- [CHAR_LIMIT=NONE] Developer Settings: Title of the settings category for theme overlays. -->
<string name="theme_customization_category">Theming</string>
<!-- [CHAR_LIMIT=NONE] Developer Settings: Title of the setting which enables overlays to customize accent color. -->
<string name="theme_customization_accent_color_title">Accent color</string>
<!-- [CHAR_LIMIT=NONE] Developer Settings: Title of the setting which enables overlays to customize headline and body fonts. -->
<string name="theme_customization_font_title">Headline / Body font</string>
<!-- [CHAR_LIMIT=NONE] Developer Settings: Title of the setting which enables overlays to customize the adaptive icon shape (e.g. launcher and quick settings icons). -->
<string name="theme_customization_icon_shape_title">Icon shape</string>
<!-- [CHAR_LIMIT=NONE] Developer Settings: Title of the setting which enables overlays to customize the statusbar icon -->
<string name="theme_customization_sysui_icon_title">Statusbar icon</string>
</resources> </resources>

View File

@@ -17,5 +17,24 @@
xmlns:android="http://schemas.android.com/apk/res/android" xmlns:android="http://schemas.android.com/apk/res/android"
android:title="@string/theme_title" android:title="@string/theme_title"
xmlns:settings="http://schemas.android.com/apk/res/com.android.settings"> xmlns:settings="http://schemas.android.com/apk/res/com.android.settings">
<PreferenceCategory
android:title="@string/theme_customization_category">
<Preference
android:key="dark_ui_mode"
android:title="@string/dark_ui_mode"
android:summary="@string/dark_ui_mode_summary"
android:fragment="com.android.settings.display.darkmode.DarkModeSettingsFragment"
settings:controller="com.android.settings.display.DarkUIPreferenceController" />
<ListPreference
android:key="android.theme.customization.font"
android:title="@string/theme_customization_font_title"/>
<ListPreference
android:key="android.theme.customization.icon_pack"
android:title="@string/theme_customization_sysui_icon_title"/>
</PreferenceCategory>
</PreferenceScreen> </PreferenceScreen>

View File

@@ -49,6 +49,9 @@ import com.android.settingslib.core.AbstractPreferenceController;
import com.android.settings.SettingsPreferenceFragment; import com.android.settings.SettingsPreferenceFragment;
import com.android.settingslib.core.AbstractPreferenceController; import com.android.settingslib.core.AbstractPreferenceController;
import com.android.settingslib.core.lifecycle.Lifecycle; import com.android.settingslib.core.lifecycle.Lifecycle;
import com.android.settings.development.OverlayCategoryPreferenceController;
import com.android.settingslib.core.AbstractPreferenceController;
import com.android.settingslib.core.lifecycle.Lifecycle;
import java.util.Locale; import java.util.Locale;
import android.text.TextUtils; import android.text.TextUtils;
import android.view.View; import android.view.View;
@@ -93,6 +96,10 @@ public class ThemeSettings extends DashboardFragment implements OnPreferenceChan
Context context, Lifecycle lifecycle, Fragment fragment) { Context context, Lifecycle lifecycle, Fragment fragment) {
final List<AbstractPreferenceController> controllers = new ArrayList<>(); final List<AbstractPreferenceController> controllers = new ArrayList<>();
controllers.add(new OverlayCategoryPreferenceController(context,
"android.theme.customization.font"));
controllers.add(new OverlayCategoryPreferenceController(context,
"android.theme.customization.icon_pack"));
return controllers; return controllers;
} }