Cherish:Introduce QS tile style picker [2/3]

Signed-off-by: Hưng Phan <phandinhhungvp2001@gmail.com>
This commit is contained in:
calebcabob
2021-01-27 14:51:51 +07:00
committed by Hưng Phan
parent 142ccc57c0
commit d3b87dc73e
4 changed files with 88 additions and 1 deletions

View File

@@ -1156,4 +1156,47 @@
<item>6</item>
<item>7</item>
</string-array>
<!-- QS tile styles -->
<string-array name="qs_selector_entries" translatable="false">
<item>@string/qstile_default</item>
<item>@string/qstile_circle_trim</item>
<item>@string/qstile_dual_tone_circle</item>
<item>@string/qstile_squircle_trim</item>
<item>@string/qstile_wavey</item>
<item>@string/qstile_pokesign</item>
<item>@string/qstile_ninja</item>
<item>@string/qstile_dottedcircle</item>
<item>@string/qstile_attemptmountain</item>
<item>@string/qstile_squaremedo</item>
<item>@string/qstile_inkdrop</item>
<item>@string/qstile_cookie</item>
<item>@string/qstile_circleoutline</item>
<item>@string/qstile_cosmos</item>
<item>@string/qstile_divided</item>
<item>@string/qstile_neonlike</item>
<item>@string/qstile_oos</item>
<item>@string/qstile_triangles</item>
</string-array>
<string-array name="qs_selector_values" translatable="false">
<item>0</item>
<item>1</item>
<item>2</item>
<item>3</item>
<item>4</item>
<item>5</item>
<item>6</item>
<item>7</item>
<item>8</item>
<item>9</item>
<item>10</item>
<item>11</item>
<item>12</item>
<item>13</item>
<item>14</item>
<item>15</item>
<item>16</item>
<item>17</item>
</string-array>
</resources>

View File

@@ -1061,4 +1061,25 @@
<string name="switch_retro">Retro</string>
<string name="switch_telegram">Telegram</string>
<string name="switch_stockish">Stockish</string>
<!-- QS tile styles -->
<string name="qs_tile_style_title">QS tile style</string>
<string name="qstile_default">Default</string>
<string name="qstile_circle_trim">Circle with trim</string>
<string name="qstile_dual_tone_circle">Dual-toned circle</string>
<string name="qstile_squircle_trim">Squircle with trim</string>
<string name="qstile_wavey">Wavey</string>
<string name="qstile_pokesign">Pokesign</string>
<string name="qstile_ninja">Ninja</string>
<string name="qstile_dottedcircle">Dotted Circle</string>
<string name="qstile_attemptmountain">An attempt of a mountain</string>
<string name="qstile_squaremedo">The Squaremedo</string>
<string name="qstile_inkdrop">Ink</string>
<string name="qstile_cookie">Cookie</string>
<string name="qstile_circleoutline">Circle Outline</string>
<string name="qstile_cosmos">Shishu Cosmos</string>
<string name="qstile_divided">Divided Circle</string>
<string name="qstile_neonlike">Neon Light</string>
<string name="qstile_oos">Oxygen</string>
<string name="qstile_triangles">Triangle</string>
</resources>

View File

@@ -66,6 +66,14 @@
android:summary="%s"
android:defaultValue="0" />
<ListPreference
android:key="qs_tile_style"
android:icon="@drawable/ic_shape2_icon"
android:title="@string/qs_tile_style_title"
android:persistent="false"
android:entries="@array/qs_selector_entries"
android:entryValues="@array/qs_selector_values" />
<ListPreference
android:key="qs_header_style"
android:icon="@drawable/ic_header"

View File

@@ -58,6 +58,7 @@ public class ThemeSettings extends SettingsPreferenceFragment implements
private static final String PREF_PANEL_BG = "panel_bg";
private static final String PREF_THEME_SWITCH = "theme_switch";
private static final String QS_HEADER_STYLE = "qs_header_style";
private static final String QS_TILE_STYLE = "qs_tile_style";
private static final String ACCENT_COLOR = "accent_color";
private static final String ACCENT_COLOR_PROP = "persist.sys.theme.accentcolor";
private static final String GRADIENT_COLOR = "gradient_color";
@@ -74,6 +75,7 @@ public class ThemeSettings extends SettingsPreferenceFragment implements
private ListPreference mUIStyle;
private ListPreference mPanelBg;
private ListPreference mQsHeaderStyle;
private ListPreference mQsTileStyle;
@Override
public void onCreate(Bundle icicle) {
@@ -162,6 +164,14 @@ public class ThemeSettings extends SettingsPreferenceFragment implements
mQsHeaderStyle.setSummary(mQsHeaderStyle.getEntry());
mQsHeaderStyle.setOnPreferenceChangeListener(this);
mQsTileStyle = (ListPreference)findPreference(QS_TILE_STYLE);
int qsTileStyle = Settings.System.getIntForUser(resolver,
Settings.System.QS_TILE_STYLE, 0, UserHandle.USER_CURRENT);
int valueIndex = mQsTileStyle.findIndexOfValue(String.valueOf(qsTileStyle));
mQsTileStyle.setValueIndex(valueIndex >= 0 ? valueIndex : 0);
mQsTileStyle.setSummary(mQsTileStyle.getEntry());
mQsTileStyle.setOnPreferenceChangeListener(this);
mUiModeManager = getContext().getSystemService(UiModeManager.class);
mOverlayService = IOverlayManager.Stub
@@ -308,6 +318,11 @@ public class ThemeSettings extends SettingsPreferenceFragment implements
Settings.System.QS_HEADER_STYLE, Integer.valueOf(value));
int newIndex = mQsHeaderStyle.findIndexOfValue(value);
mQsHeaderStyle.setSummary(mQsHeaderStyle.getEntries()[newIndex]);
} else if (preference == mQsTileStyle) {
int qsTileStyleValue = Integer.valueOf((String) objValue);
Settings.System.putIntForUser(resolver,
Settings.System.QS_TILE_STYLE, qsTileStyleValue, UserHandle.USER_CURRENT);
mQsTileStyle.setSummary(mQsTileStyle.getEntries()[qsTileStyleValue]);
}
return true;
}