Cherish: Settings Customization
Signed-off-by: Hưng Phan <phandinhhungvp2001@gmail.com>
This commit is contained in:
@@ -233,4 +233,20 @@
|
||||
<item>5</item>
|
||||
</string-array>
|
||||
|
||||
<!-- Settings dashboard styles-->
|
||||
<string-array name="settings_dashboard_style_entries" translatable="false">
|
||||
<item>@string/settings_dashboard_style_aosp</item>
|
||||
<item>@string/settings_dashboard_style_oos11</item>
|
||||
<item>@string/settings_dashboard_style_oos12</item>
|
||||
<item>@string/settings_dashboard_style_cherish</item>
|
||||
<item>@string/settings_dashboard_style_cherish_clean</item>
|
||||
</string-array>
|
||||
|
||||
<string-array name="settings_dashboard_style_values" translatable="false">
|
||||
<item>0</item>
|
||||
<item>1</item>
|
||||
<item>2</item>
|
||||
<item>3</item>
|
||||
<item>4</item>
|
||||
</string-array>
|
||||
</resources>
|
||||
|
||||
@@ -475,4 +475,20 @@
|
||||
<!-- Toast app icon -->
|
||||
<string name="toast_icon_title">Toast app icon</string>
|
||||
<string name="toast_icon_summary">Display the app\'s icon corresponding with the toast</string>
|
||||
|
||||
<!-- Custom settings dashboard style -->
|
||||
<string name="settings_dashboard_style_title">Settings layout</string>
|
||||
<string name="settings_dashboard_style_aosp">Aosp</string>
|
||||
<string name="settings_dashboard_style_oos11">OxygenOS 11</string>
|
||||
<string name="settings_dashboard_style_oos12">OxygenOS 12</string>
|
||||
<string name="settings_dashboard_style_cherish">Cherish</string>
|
||||
<string name="settings_dashboard_style_cherish_clean">Cherish Clean</string>
|
||||
<string name="settings_layout_category_title">Settings UI interface</string>
|
||||
<string name="settings_base_style_title">Settings Base layout</string>
|
||||
<string name="settings_base_style_summary">Use an alternative layout for setting menus</string>
|
||||
<string name="settings_home_style_title">Settings Home layout</string>
|
||||
<string name="settings_home_style_summary">Use stock aosp layout for homepage</string>
|
||||
<string name="disable_usercard_title">Settings UserCard</string>
|
||||
<string name="disable_usercard_summary">Toggle in order not to show the usercard on main settings page</string>
|
||||
|
||||
</resources>
|
||||
|
||||
@@ -18,6 +18,38 @@
|
||||
android:title="@string/theme_title"
|
||||
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_style"
|
||||
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" />
|
||||
|
||||
<com.cherish.settings.preferences.SystemSettingSwitchPreference
|
||||
android:key="alt_settings_layout"
|
||||
android:title="@string/settings_base_style_title"
|
||||
android:summary="@string/settings_base_style_summary"
|
||||
android:defaultValue="false" />
|
||||
|
||||
<com.cherish.settings.preferences.SystemSettingSwitchPreference
|
||||
android:key="use_stock_layout"
|
||||
android:title="@string/settings_home_style_title"
|
||||
android:summary="@string/settings_home_style_summary"
|
||||
android:defaultValue="false" />
|
||||
|
||||
<com.cherish.settings.preferences.SystemSettingSwitchPreference
|
||||
android:key="disable_usercard"
|
||||
android:title="@string/disable_usercard_title"
|
||||
android:summary="@string/disable_usercard_summary"
|
||||
android:defaultValue="false" />
|
||||
|
||||
</PreferenceCategory>
|
||||
|
||||
<PreferenceCategory
|
||||
android:title="@string/theme_customization_category">
|
||||
|
||||
|
||||
@@ -69,6 +69,11 @@ import net.margaritov.preference.colorpicker.ColorPickerPreference;
|
||||
@SearchIndexable(forTarget = SearchIndexable.ALL & ~SearchIndexable.ARC)
|
||||
public class ThemeSettings extends DashboardFragment implements OnPreferenceChangeListener {
|
||||
|
||||
private static final String ALT_SETTINGS_LAYOUT = "alt_settings_layout";
|
||||
private static final String SETTINGS_DASHBOARD_STYLE = "settings_dashboard_style";
|
||||
private static final String USE_STOCK_LAYOUT = "use_stock_layout";
|
||||
private static final String DISABLE_USERCARD = "disable_usercard";
|
||||
|
||||
public static final String TAG = "ThemeSettings";
|
||||
static final int DEFAULT_QS_PANEL_COLOR = 0xffffffff;
|
||||
static final int DEFAULT = 0xff1a73e8;
|
||||
@@ -76,6 +81,10 @@ public class ThemeSettings extends DashboardFragment implements OnPreferenceChan
|
||||
|
||||
private IOverlayManager mOverlayService;
|
||||
private UiModeManager mUiModeManager;
|
||||
private SystemSettingListPreference mSettingsDashBoardStyle;
|
||||
private SystemSettingSwitchPreference mAltSettingsLayout;
|
||||
private SystemSettingSwitchPreference mUseStockLayout;
|
||||
private SystemSettingSwitchPreference mDisableUserCard;
|
||||
|
||||
@Override
|
||||
protected String getLogTag() {
|
||||
@@ -105,8 +114,17 @@ public class ThemeSettings extends DashboardFragment implements OnPreferenceChan
|
||||
|
||||
PreferenceScreen prefScreen = getPreferenceScreen();
|
||||
ContentResolver resolver = getActivity().getContentResolver();
|
||||
final Resources res = getResources();
|
||||
mContext = getActivity();
|
||||
final Resources res = getResources();
|
||||
mContext = getActivity();
|
||||
|
||||
mSettingsDashBoardStyle = (SystemSettingListPreference) findPreference(SETTINGS_DASHBOARD_STYLE);
|
||||
mSettingsDashBoardStyle.setOnPreferenceChangeListener(this);
|
||||
mAltSettingsLayout = (SystemSettingSwitchPreference) findPreference(ALT_SETTINGS_LAYOUT);
|
||||
mAltSettingsLayout.setOnPreferenceChangeListener(this);
|
||||
mUseStockLayout = (SystemSettingSwitchPreference) findPreference(USE_STOCK_LAYOUT);
|
||||
mUseStockLayout.setOnPreferenceChangeListener(this);
|
||||
mDisableUserCard = (SystemSettingSwitchPreference) findPreference(DISABLE_USERCARD);
|
||||
mDisableUserCard.setOnPreferenceChangeListener(this);
|
||||
}
|
||||
|
||||
public boolean isAvailable() {
|
||||
@@ -116,6 +134,19 @@ public class ThemeSettings extends DashboardFragment implements OnPreferenceChan
|
||||
@Override
|
||||
public boolean onPreferenceChange(Preference preference, Object objValue) {
|
||||
ContentResolver resolver = getActivity().getContentResolver();
|
||||
if (preference == mSettingsDashBoardStyle) {
|
||||
CherishUtils.showSettingsRestartDialog(getContext());
|
||||
return true;
|
||||
} else if (preference == mAltSettingsLayout) {
|
||||
CherishUtils.showSettingsRestartDialog(getContext());
|
||||
return true;
|
||||
} else if (preference == mUseStockLayout) {
|
||||
CherishUtils.showSettingsRestartDialog(getContext());
|
||||
return true;
|
||||
} else if (preference == mDisableUserCard) {
|
||||
CherishUtils.showSettingsRestartDialog(getContext());
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user