Battery options: cleanup [2/2]

Change-Id: I9ebe4aa3613d1c7381a87e194dd96ae452b0bdcb
Signed-off-by: SagarMakhar <sagarmakhar@gmail.com>
Signed-off-by: Hưng Phan <phandinhhungvp2001@gmail.com>
This commit is contained in:
ezio84
2020-04-27 17:50:52 +02:00
committed by Hưng Phan
parent 4dc160f91d
commit ab44d4e5d7

View File

@@ -58,7 +58,8 @@ public class BatterySettings extends SettingsPreferenceFragment
private static final int BATTERY_STYLE_TEXT = 4;
private static final int BATTERY_STYLE_HIDDEN = 5;
private static final int BATTERY_PERCENT_HIDDEN = 0;
private static final int BATTERY_PERCENT_SHOW = 2;
//private static final int BATTERY_PERCENT_SHOW_INSIDE = 1;
//private static final int BATTERY_PERCENT_SHOW_OUTSIDE = 2;
private ListPreference mBatteryBar;
private ListPreference mBatteryBarNoNavbar;
@@ -74,7 +75,6 @@ public class BatterySettings extends SettingsPreferenceFragment
private ListPreference mBatteryPercent;
private ListPreference mBatteryStyle;
private int mBatteryPercentValue;
private int mBatteryPercentValuePrev;
@Override
public void onCreate(Bundle savedInstanceState) {
@@ -148,9 +148,7 @@ public class BatterySettings extends SettingsPreferenceFragment
mBatteryStyle.setOnPreferenceChangeListener(this);
mBatteryPercentValue = Settings.System.getIntForUser(getContentResolver(),
Settings.System.STATUS_BAR_SHOW_BATTERY_PERCENT, 0, UserHandle.USER_CURRENT);
mBatteryPercentValuePrev = Settings.System.getIntForUser(getContentResolver(),
Settings.System.STATUS_BAR_SHOW_BATTERY_PERCENT + "_prev", -1, UserHandle.USER_CURRENT);
Settings.System.STATUS_BAR_SHOW_BATTERY_PERCENT, BATTERY_PERCENT_HIDDEN, UserHandle.USER_CURRENT);
mBatteryPercent = (ListPreference) findPreference(PREF_STATUS_BAR_SHOW_BATTERY_PERCENT);
mBatteryPercent.setValue(String.valueOf(mBatteryPercentValue));
@@ -172,7 +170,8 @@ public class BatterySettings extends SettingsPreferenceFragment
}*/
updateBatteryBarOptions();
updateBatteryOptions(batterystyle, mBatteryPercentValue);
mBatteryPercent.setEnabled(
batterystyle != BATTERY_STYLE_TEXT && batterystyle != BATTERY_STYLE_HIDDEN);
}
@Override
@@ -235,9 +234,13 @@ public class BatterySettings extends SettingsPreferenceFragment
return true;
} else if (preference == mBatteryStyle) {
int batterystyle = Integer.parseInt((String) newValue);
updateBatteryOptions(batterystyle, mBatteryPercentValue);
Settings.System.putIntForUser(resolver,
Settings.System.STATUS_BAR_BATTERY_STYLE, batterystyle,
UserHandle.USER_CURRENT);
int index = mBatteryStyle.findIndexOfValue((String) newValue);
mBatteryStyle.setSummary(mBatteryStyle.getEntries()[index]);
mBatteryPercent.setEnabled(
batterystyle != BATTERY_STYLE_TEXT && batterystyle != BATTERY_STYLE_HIDDEN);
return true;
} else if (preference == mBatteryPercent) {
mBatteryPercentValue = Integer.parseInt((String) newValue);
@@ -274,58 +277,7 @@ public class BatterySettings extends SettingsPreferenceFragment
mBatteryBarBlendColor.setEnabled(true);
mBatteryBarBlendColorReverse.setEnabled(true);
}
}
private void updateBatteryOptions(int batterystyle, int batterypercent) {
ContentResolver resolver = getActivity().getContentResolver();
switch (batterystyle) {
case BATTERY_STYLE_TEXT:
handleTextPercentage(BATTERY_PERCENT_SHOW);
break;
case BATTERY_STYLE_HIDDEN:
handleTextPercentage(BATTERY_PERCENT_HIDDEN);
break;
default:
mBatteryPercent.setEnabled(true);
if (mBatteryPercentValuePrev != -1) {
Settings.System.putIntForUser(resolver,
Settings.System.STATUS_BAR_SHOW_BATTERY_PERCENT,
mBatteryPercentValuePrev, UserHandle.USER_CURRENT);
Settings.System.putIntForUser(resolver,
Settings.System.STATUS_BAR_SHOW_BATTERY_PERCENT + "_prev",
-1, UserHandle.USER_CURRENT);
mBatteryPercentValue = mBatteryPercentValuePrev;
mBatteryPercentValuePrev = -1;
int index = mBatteryPercent.findIndexOfValue(String.valueOf(mBatteryPercentValue));
mBatteryPercent.setSummary(mBatteryPercent.getEntries()[index]);
}
Settings.System.putIntForUser(resolver,
Settings.System.STATUS_BAR_BATTERY_STYLE, batterystyle,
UserHandle.USER_CURRENT);
break;
}
}
private void handleTextPercentage(int batterypercent) {
ContentResolver resolver = getActivity().getContentResolver();
if (mBatteryPercentValuePrev == -1) {
mBatteryPercentValuePrev = mBatteryPercentValue;
Settings.System.putIntForUser(resolver,
Settings.System.STATUS_BAR_SHOW_BATTERY_PERCENT + "_prev",
mBatteryPercentValue, UserHandle.USER_CURRENT);
}
Settings.System.putIntForUser(resolver,
Settings.System.STATUS_BAR_SHOW_BATTERY_PERCENT,
batterypercent, UserHandle.USER_CURRENT);
Settings.System.putIntForUser(resolver,
Settings.System.STATUS_BAR_BATTERY_STYLE, BATTERY_STYLE_TEXT,
UserHandle.USER_CURRENT);
int index = mBatteryPercent.findIndexOfValue(String.valueOf(batterypercent));
mBatteryPercent.setSummary(mBatteryPercent.getEntries()[index]);
mBatteryPercent.setEnabled(false);
}
}
@Override
public int getMetricsCategory() {