Cherish:Allow hiding battery icon from QS header [2/2]

This commit is contained in:
idoybh
2020-09-01 01:07:17 +07:00
committed by Hưng Phan
parent 43049fcbf7
commit a127508df4
4 changed files with 39 additions and 0 deletions

View File

@@ -0,0 +1,7 @@
<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="M16,20H8V6H16M16.67,4H15V2H9V4H7.33A1.33,1.33 0 0,0 6,5.33V20.67C6,21.4 6.6,22 7.33,22H16.67A1.33,1.33 0 0,0 18,20.67V5.33C18,4.6 17.4,4 16.67,4Z" />
</vector>

View File

@@ -216,6 +216,9 @@
<string name="status_bar_battery_text_charging_summary">Always display battery percentage when charging</string>
<!-- Battery mode -->
<string name="battery_title">Battery icon</string>
<string name="qs_hide_battery_title">Hide battery icon</string>
<string name="qs_hide_battery_summary">Hides the battery icon from the QS header</string>
<string name="battery_percentage_title">Battery percentage</string>
<string name="battery_percentage_off">Disabled</string>
<string name="battery_percentage_next">Enabled</string>

View File

@@ -219,6 +219,17 @@
</PreferenceCategory>
<PreferenceCategory
android:title="@string/battery_title">
<!-- Battery hide -->
<com.cherish.settings.preferences.SystemSettingSwitchPreference
android:key="qs_hide_battery"
android:icon="@drawable/ic_battery_outline"
android:title="@string/qs_hide_battery_title"
android:summary="@string/qs_hide_battery_summary"
android:defaultValue="false" />
<com.cherish.settings.preferences.SystemSettingListPreference
android:key="qs_battery_mode"
android:icon="@drawable/ic_battery_percent"
@@ -226,5 +237,7 @@
android:entries="@array/qs_battery_mode_entries"
android:entryValues="@array/qs_battery_mode_values"
android:defaultValue="1" />
</PreferenceCategory>
</PreferenceScreen>

View File

@@ -22,6 +22,8 @@ import java.util.Locale;
import android.text.TextUtils;
import android.view.View;
import com.cherish.settings.preferences.SystemSettingSwitchPreference;
import com.cherish.settings.preferences.SystemSettingListPreference;
import com.cherish.settings.preferences.SystemSettingEditTextPreference;
import com.cherish.settings.preferences.SystemSettingMasterSwitchPreference;
import java.util.List;
@@ -34,12 +36,16 @@ public class QuickSettings extends SettingsPreferenceFragment implements
private static final String QUICK_PULLDOWN = "quick_pulldown";
private static final String FOOTER_TEXT_STRING = "footer_text_string";
private static final String STATUS_BAR_CUSTOM_HEADER = "status_bar_custom_header";
private static final String QS_HIDE_BATTERY = "qs_hide_battery";
private static final String QS_BATTERY_MODE = "qs_battery_mode";
private ListPreference mQuickPulldown;
private CustomSeekBarPreference mQSBlurAlpha;
private CustomSeekBarPreference mQSBlurIntensity;
private SystemSettingEditTextPreference mFooterString;
private SystemSettingMasterSwitchPreference mCustomHeader;
private SystemSettingSwitchPreference mHideBattery;
private SystemSettingListPreference mQsBatteryMode;
@Override
public void onCreate(Bundle icicle) {
@@ -73,6 +79,10 @@ public class QuickSettings extends SettingsPreferenceFragment implements
Settings.System.STATUS_BAR_CUSTOM_HEADER, 0);
mCustomHeader.setChecked(qsHeader != 0);
mCustomHeader.setOnPreferenceChangeListener(this);
mQsBatteryMode = (SystemSettingListPreference) findPreference(QS_BATTERY_MODE);
mHideBattery = (SystemSettingSwitchPreference) findPreference(QS_HIDE_BATTERY);
mHideBattery.setOnPreferenceChangeListener(this);
mFooterString = (SystemSettingEditTextPreference) findPreference(FOOTER_TEXT_STRING);
mFooterString.setOnPreferenceChangeListener(this);
@@ -123,6 +133,12 @@ public class QuickSettings extends SettingsPreferenceFragment implements
Settings.System.putInt(resolver,
Settings.System.STATUS_BAR_CUSTOM_HEADER, header ? 1 : 0);
return true;
} else if (preference == mHideBattery) {
Boolean value = (Boolean) newValue;
Settings.System.putInt(getContentResolver(),
Settings.System.QS_HIDE_BATTERY, value ? 1 : 0);
mQsBatteryMode.setEnabled(!value);
return true;
}
return false;
}