TopLevelSettings: custom settings layout [3/3]

Signed-off-by: Hưng Phan <phandinhhungvp2001@gmail.com>
This commit is contained in:
spkal01
2022-03-21 08:13:50 +07:00
committed by Hưng Phan
parent 0aab504f62
commit 42d357e1a2
4 changed files with 42 additions and 1 deletions

View File

@@ -520,5 +520,16 @@
<item>EEEE MM/dd</item> <item>EEEE MM/dd</item>
<item>@string/status_bar_date_format_custom</item> <item>@string/status_bar_date_format_custom</item>
</string-array> </string-array>
<!-- Settings dashboard styles-->
<string-array name="settings_dashboard_style_entries" translatable="false">
<item>@string/settings_dashboard_style_gms</item>
<item>@string/settings_dashboard_style_aosp</item>
</string-array>
<string-array name="settings_dashboard_style_values" translatable="false">
<item>0</item>
<item>1</item>
</string-array>
</resources> </resources>

View File

@@ -614,5 +614,11 @@
<!-- QS date --> <!-- QS date -->
<string name="qs_date_title">Date</string> <string name="qs_date_title">Date</string>
<string name="qs_date_summary">Display date in quick status bar header</string> <string name="qs_date_summary">Display date in quick status bar header</string>
<!-- Custom settings dashboard style -->
<string name="settings_dashboard_style_title">Settings layout</string>
<string name="settings_dashboard_style_gms">Default</string>
<string name="settings_dashboard_style_aosp">Aosp</string>
<string name="settings_layout_category_title">Settings UI interface</string>
</resources> </resources>

View File

@@ -17,6 +17,20 @@
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:key="settings_layout_category"
android:title="@string/settings_layout_category_title">
<com.cherish.settings.preferences.SystemSettingListPreference
android:key="settings_dashboard_gms"
android:title="@string/settings_dashboard_style_title"
android:entries="@array/settings_dashboard_style_entries"
android:entryValues="@array/settings_dashboard_style_values"
android:summary="%s"
android:defaultValue="0" />
</PreferenceCategory>
<PreferenceCategory <PreferenceCategory
android:title="@string/theme_customization_category"> android:title="@string/theme_customization_category">

View File

@@ -68,12 +68,15 @@ import net.margaritov.preference.colorpicker.ColorPickerPreference;
@SearchIndexable(forTarget = SearchIndexable.ALL & ~SearchIndexable.ARC) @SearchIndexable(forTarget = SearchIndexable.ALL & ~SearchIndexable.ARC)
public class ThemeSettings extends DashboardFragment implements OnPreferenceChangeListener { public class ThemeSettings extends DashboardFragment implements OnPreferenceChangeListener {
private static final String SETTINGS_DASHBOARD_GMS = "settings_dashboard_gms";
public static final String TAG = "ThemeSettings"; public static final String TAG = "ThemeSettings";
static final int DEFAULT_QS_PANEL_COLOR = 0xffffffff; static final int DEFAULT_QS_PANEL_COLOR = 0xffffffff;
static final int DEFAULT = 0xff1a73e8; static final int DEFAULT = 0xff1a73e8;
private Context mContext; private Context mContext;
private SystemSettingListPreference mSettingsDashBoardGms;
private IOverlayManager mOverlayService; private IOverlayManager mOverlayService;
private UiModeManager mUiModeManager; private UiModeManager mUiModeManager;
@@ -107,6 +110,9 @@ public class ThemeSettings extends DashboardFragment implements OnPreferenceChan
ContentResolver resolver = getActivity().getContentResolver(); ContentResolver resolver = getActivity().getContentResolver();
final Resources res = getResources(); final Resources res = getResources();
mContext = getActivity(); mContext = getActivity();
mSettingsDashBoardGms = (SystemSettingListPreference) findPreference(SETTINGS_DASHBOARD_GMS);
mSettingsDashBoardGms.setOnPreferenceChangeListener(this);
} }
public boolean isAvailable() { public boolean isAvailable() {
@@ -116,6 +122,10 @@ public class ThemeSettings extends DashboardFragment implements OnPreferenceChan
@Override @Override
public boolean onPreferenceChange(Preference preference, Object objValue) { public boolean onPreferenceChange(Preference preference, Object objValue) {
ContentResolver resolver = getActivity().getContentResolver(); ContentResolver resolver = getActivity().getContentResolver();
if (preference == mSettingsDashBoardGms) {
CherishUtils.showSettingsRestartDialog(getContext());
return true;
}
return false; return false;
} }