Cherish:Introduce navbar styles [2/3]
This commit is contained in:
8
res/drawable/ic_nav.xml
Normal file
8
res/drawable/ic_nav.xml
Normal file
@@ -0,0 +1,8 @@
|
||||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:height="24dp"
|
||||
android:width="24dp"
|
||||
android:viewportWidth="24"
|
||||
android:viewportHeight="24">
|
||||
<path android:fillColor="?android:attr/colorControlNormal"
|
||||
android:pathData="M2,2H11V11H2V2M17.5,2C20,2 22,4 22,6.5C22,9 20,11 17.5,11C15,11 13,9 13,6.5C13,4 15,2 17.5,2M6.5,14L11,22H2L6.5,14M19,17H22V19H19V22H17V19H14V17H17V14H19V17Z" />
|
||||
</vector>
|
||||
@@ -730,4 +730,21 @@
|
||||
<item>3</item>
|
||||
<item>4</item>
|
||||
</string-array>
|
||||
|
||||
<!-- Navbar styles -->
|
||||
<string-array name="navbar_style_entries" translatable="false">
|
||||
<item>@string/navbar_default</item>
|
||||
<item>@string/navbar_asus</item>
|
||||
<item>@string/navbar_oneplus</item>
|
||||
<item>@string/navbar_oneui</item>
|
||||
<item>@string/navbar_tecno</item>
|
||||
</string-array>
|
||||
|
||||
<string-array name="navbar_style_values" translatable="false">
|
||||
<item>0</item>
|
||||
<item>1</item>
|
||||
<item>2</item>
|
||||
<item>3</item>
|
||||
<item>4</item>
|
||||
</string-array>
|
||||
</resources>
|
||||
|
||||
@@ -791,4 +791,12 @@
|
||||
<string name="ui_style_rectangle">Rectangle</string>
|
||||
<string name="ui_style_round_large">Round Large</string>
|
||||
<string name="ui_style_round_medium">Round Medium</string>
|
||||
|
||||
<!-- Navbar styles -->
|
||||
<string name="navbar_style_title">Navbar style</string>
|
||||
<string name="navbar_default">Default</string>
|
||||
<string name="navbar_asus">ASUS</string>
|
||||
<string name="navbar_oneplus">OnePlus</string>
|
||||
<string name="navbar_oneui">One UI</string>
|
||||
<string name="navbar_tecno">Tecno Camon</string>
|
||||
</resources>
|
||||
|
||||
@@ -72,6 +72,16 @@
|
||||
android:entries="@array/brightness_slider_style_selector_entries"
|
||||
android:entryValues="@array/brightness_slider_style_selector_values"
|
||||
android:persistent="false" />
|
||||
|
||||
<!-- Navbar Style -->
|
||||
<ListPreference
|
||||
android:key="navbar_style"
|
||||
android:title="@string/navbar_style_title"
|
||||
android:icon="@drawable/ic_nav"
|
||||
android:dialogTitle="@string/navbar_style_title"
|
||||
android:entries="@array/navbar_style_entries"
|
||||
android:entryValues="@array/navbar_style_values"
|
||||
android:defaultValue="0" />
|
||||
|
||||
<com.cherish.settings.preferences.SystemSettingIntListPreference
|
||||
android:key="theming_settings_dashboard_icons"
|
||||
|
||||
@@ -53,6 +53,7 @@ public class ThemeSettings extends SettingsPreferenceFragment implements
|
||||
private static final String QS_TILE_STYLE = "qs_tile_style";
|
||||
private static final String QS_HEADER_STYLE = "qs_header_style";
|
||||
private static final String BRIGHTNESS_SLIDER_STYLE = "brightness_slider_style";
|
||||
private static final String NAVBAR_STYLE = "navbar_style";
|
||||
|
||||
private static final String UI_STYLE = "ui_style";
|
||||
|
||||
@@ -68,6 +69,7 @@ public class ThemeSettings extends SettingsPreferenceFragment implements
|
||||
private ListPreference mQsHeaderStyle;
|
||||
private ListPreference mBrightnessSliderStyle;
|
||||
private ListPreference mUIStyle;
|
||||
private ListPreference mNavbarStyle;
|
||||
|
||||
@Override
|
||||
public void onCreate(Bundle icicle) {
|
||||
@@ -148,6 +150,36 @@ public class ThemeSettings extends SettingsPreferenceFragment implements
|
||||
}
|
||||
});
|
||||
|
||||
mNavbarStyle = (ListPreference) findPreference(NAVBAR_STYLE);
|
||||
int navbarStyle = Settings.System.getInt(getActivity().getContentResolver(),
|
||||
Settings.System.NAVBAR_STYLE, 0);
|
||||
int navbarStyleValue = getOverlayPosition(ThemesUtils.NAVBAR_STYLES);
|
||||
if (navbarStyleValue != 0) {
|
||||
mNavbarStyle.setValue(String.valueOf(navbarStyle));
|
||||
}
|
||||
mNavbarStyle.setSummary(mNavbarStyle.getEntry());
|
||||
mNavbarStyle.setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() {
|
||||
@Override
|
||||
public boolean onPreferenceChange(Preference preference, Object newValue) {
|
||||
if (preference == mNavbarStyle) {
|
||||
String value = (String) newValue;
|
||||
Settings.System.putInt(getActivity().getContentResolver(), Settings.System.NAVBAR_STYLE, Integer.valueOf(value));
|
||||
int valueIndex = mNavbarStyle.findIndexOfValue(value);
|
||||
mNavbarStyle.setSummary(mNavbarStyle.getEntries()[valueIndex]);
|
||||
String overlayName = getOverlayName(ThemesUtils.NAVBAR_STYLES);
|
||||
if (overlayName != null) {
|
||||
handleOverlays(overlayName, false, mOverlayService);
|
||||
}
|
||||
if (valueIndex > 0) {
|
||||
handleOverlays(ThemesUtils.NAVBAR_STYLES[valueIndex],
|
||||
true, mOverlayService);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
});
|
||||
|
||||
// Rounded Corner Radius
|
||||
mCornerRadius = (CustomSeekBarPreference) findPreference(SYSUI_ROUNDED_SIZE);
|
||||
int resourceIdRadius = (int) ctx.getResources().getDimension(com.android.internal.R.dimen.rounded_corner_radius);
|
||||
|
||||
Reference in New Issue
Block a user