Evolver: Battery styles customizations [2/2]

Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
Signed-off-by: AnierinB <anierin@evolution-x.org>
This commit is contained in:
Pranav Vashi
2024-05-17 23:57:09 +09:00
committed by Joey Huab
parent 5a0f1dde80
commit 157c794e8a
6 changed files with 265 additions and 0 deletions

View File

@@ -94,6 +94,123 @@
<item>3</item>
</string-array>
<!-- Status bar - Battery -->
<string-array name="status_bar_battery_style_entries" translatable="false">
<item>@string/status_bar_battery_style_icon_portrait</item>
<item>@string/status_bar_battery_style_icon_rlandscape</item>
<item>@string/status_bar_battery_style_icon_landscape</item>
<item>@string/status_bar_battery_style_icon_landscape_buddy</item>
<item>@string/status_bar_battery_style_icon_landscape_line</item>
<item>@string/status_bar_battery_style_icon_landscape_musku</item>
<item>@string/status_bar_battery_style_icon_landscape_pill</item>
<item>@string/status_bar_battery_style_icon_landscape_signal</item>
<item>@string/status_bar_battery_style_icon_rlandscape_style_a</item>
<item>@string/status_bar_battery_style_icon_landscape_style_a</item>
<item>@string/status_bar_battery_style_icon_rlandscape_style_b</item>
<item>@string/status_bar_battery_style_icon_landscape_style_b</item>
<item>@string/status_bar_battery_style_icon_landscape_ios15</item>
<item>@string/status_bar_battery_style_icon_landscape_ios16</item>
<item>@string/status_bar_battery_style_icon_landscape_origami</item>
<item>@string/status_bar_battery_style_circle</item>
<item>@string/status_bar_battery_style_dotted_circle</item>
<item>@string/status_bar_battery_style_filled_circle</item>
<item>@string/status_bar_battery_style_big_circle</item>
<item>@string/status_bar_battery_style_big_dotted_circle</item>
<item>@string/status_bar_battery_style_text</item>
<item>@string/status_bar_battery_style_hidden</item>
</string-array>
<string-array name="status_bar_battery_style_values" translatable="false">
<item>0</item>
<item>6</item>
<item>7</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>
<item>18</item>
<item>19</item>
<item>20</item>
<item>21</item>
<item>1</item>
<item>2</item>
<item>3</item>
<item>8</item>
<item>9</item>
<item>4</item>
<item>5</item>
</string-array>
<string-array name="status_bar_battery_percent_entries">
<item>@string/status_bar_battery_percent_hidden</item>
<item>@string/status_bar_battery_percent_text_inside</item>
<item>@string/status_bar_battery_percent_text_next_right</item>
<item>@string/status_bar_battery_percent_text_next_left</item>
</string-array>
<string-array name="status_bar_battery_percent_values" translatable="false">
<item>0</item>
<item>1</item>
<item>2</item>
<item>3</item>
</string-array>
<string-array name="qs_battery_style_entries" translatable="false">
<item>@string/status_bar_battery_style_follow_status_bar</item>
<item>@string/status_bar_battery_style_icon_portrait</item>
<item>@string/status_bar_battery_style_icon_rlandscape</item>
<item>@string/status_bar_battery_style_icon_landscape</item>
<item>@string/status_bar_battery_style_icon_landscape_buddy</item>
<item>@string/status_bar_battery_style_icon_landscape_line</item>
<item>@string/status_bar_battery_style_icon_landscape_musku</item>
<item>@string/status_bar_battery_style_icon_landscape_pill</item>
<item>@string/status_bar_battery_style_icon_landscape_signal</item>
<item>@string/status_bar_battery_style_icon_rlandscape_style_a</item>
<item>@string/status_bar_battery_style_icon_landscape_style_a</item>
<item>@string/status_bar_battery_style_icon_rlandscape_style_b</item>
<item>@string/status_bar_battery_style_icon_landscape_style_b</item>
<item>@string/status_bar_battery_style_icon_landscape_ios15</item>
<item>@string/status_bar_battery_style_icon_landscape_ios16</item>
<item>@string/status_bar_battery_style_icon_landscape_origami</item>
<item>@string/status_bar_battery_style_circle</item>
<item>@string/status_bar_battery_style_dotted_circle</item>
<item>@string/status_bar_battery_style_filled_circle</item>
<item>@string/status_bar_battery_style_big_circle</item>
<item>@string/status_bar_battery_style_big_dotted_circle</item>
<item>@string/status_bar_battery_style_text</item>
<item>@string/status_bar_battery_style_hidden</item>
</string-array>
<string-array name="qs_battery_style_values" translatable="false">
<item>-1</item>
<item>0</item>
<item>6</item>
<item>7</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>
<item>18</item>
<item>19</item>
<item>20</item>
<item>21</item>
<item>1</item>
<item>2</item>
<item>3</item>
<item>8</item>
<item>9</item>
<item>4</item>
<item>5</item>
</string-array>
<!-- Quick Settings - brightness slider -->
<string-array name="quick_settings_show_brightness_slider_entries" translatable="false">
<item>@string/quick_settings_show_brightness_slider_never</item>

View File

@@ -112,6 +112,37 @@
<string name="status_bar_icons_category">Icons</string>
<string name="status_bar_tuner_title">Status bar tuner</string>
<string name="status_bar_tuner_summary">Choose which system icons can be shown</string>
<string name="status_bar_battery_style_title">Battery style</string>
<string name="status_bar_battery_style_icon_portrait">Icon portrait</string>
<string name="status_bar_battery_style_icon_rlandscape">Icon landscape (Right)</string>
<string name="status_bar_battery_style_icon_landscape">Icon landscape (Left)</string>
<string name="status_bar_battery_style_icon_landscape_buddy">Landscape Capsule</string>
<string name="status_bar_battery_style_icon_landscape_line">Landscape Lorn</string>
<string name="status_bar_battery_style_icon_landscape_musku">Portrait IOS</string>
<string name="status_bar_battery_style_icon_landscape_pill">Portrait Mx</string>
<string name="status_bar_battery_style_icon_landscape_signal">Landscape Airoo</string>
<string name="status_bar_battery_style_icon_rlandscape_style_a">Landscape R Style A</string>
<string name="status_bar_battery_style_icon_landscape_style_a">Landscape L Style A</string>
<string name="status_bar_battery_style_icon_rlandscape_style_b">Landscape R Style B</string>
<string name="status_bar_battery_style_icon_landscape_style_b">Landscape L Style B</string>
<string name="status_bar_battery_style_icon_landscape_ios15">Landscape iOS 15</string>
<string name="status_bar_battery_style_icon_landscape_ios16">Landscape iOS 16</string>
<string name="status_bar_battery_style_icon_landscape_origami">Landscape Origami</string>
<string name="status_bar_battery_style_circle">Circle</string>
<string name="status_bar_battery_style_dotted_circle">Dotted circle</string>
<string name="status_bar_battery_style_filled_circle">Filled circle</string>
<string name="status_bar_battery_style_big_circle">Big circle</string>
<string name="status_bar_battery_style_big_dotted_circle">Big dotted circle</string>
<string name="status_bar_battery_style_text">Text</string>
<string name="status_bar_battery_style_hidden">Hidden</string>
<string name="status_bar_battery_style_follow_status_bar">Follow status bar style</string>
<string name="status_bar_battery_percent_title">Battery percent</string>
<string name="status_bar_battery_percent_hidden">Hidden</string>
<string name="status_bar_battery_percent_text_inside">Inside the icon</string>
<string name="status_bar_battery_percent_text_next_right">Next to the icon (right)</string>
<string name="status_bar_battery_percent_text_next_left">Next to the icon (left)</string>
<string name="status_bar_battery_text_charging_title">Battery percentage when charging</string>
<string name="status_bar_battery_text_charging_summary">Always display battery percentage when charging</string>
<string name="status_bar_data_disabled_icon_title">Data disabled indicator</string>
<string name="status_bar_data_disabled_icon_summary">Display an indicator next to signal icon when data is disabled</string>
<string name="status_bar_4g_icon_title">4G icon</string>
@@ -133,6 +164,7 @@
<string name="status_bar_projection_privacy_indicator_summary">Display an indicator when the screen is being projected</string>
<!-- Quick settings -->
<string name="quick_settings_interface_category">Interface</string>
<string name="quick_settings_brightness_slider_category">Brightness slider</string>
<string name="quick_settings_show_brightness_slider_title">Brightness slider</string>
<string name="quick_settings_show_brightness_slider_never">Never show</string>

View File

@@ -44,6 +44,27 @@
android:defaultValue="true" />
</PreferenceCategory>
<PreferenceCategory
android:key="quick_settings_interface_category"
android:title="@string/quick_settings_interface_category">
<!-- Battery styles -->
<org.evolution.settings.preferences.SystemSettingListPreference
android:key="qs_battery_style"
android:title="@string/status_bar_battery_style_title"
android:entries="@array/qs_battery_style_entries"
android:entryValues="@array/qs_battery_style_values"
android:defaultValue="-1" />
<!-- Battery percent -->
<org.evolution.settings.preferences.SystemSettingListPreference
android:key="qs_show_battery_percent"
android:title="@string/status_bar_battery_percent_title"
android:entries="@array/status_bar_battery_percent_entries"
android:entryValues="@array/status_bar_battery_percent_values"
android:defaultValue="2" />
</PreferenceCategory>
<PreferenceCategory
android:key="quick_settings_lock_screen_category"
android:title="@string/quick_settings_lock_screen_category">

View File

@@ -41,6 +41,29 @@
<intent android:action="com.android.settings.action.STATUS_BAR_TUNER" />
</Preference>
<!-- Battery styles -->
<org.evolution.settings.preferences.SystemSettingListPreference
android:key="status_bar_battery_style"
android:title="@string/status_bar_battery_style_title"
android:entries="@array/status_bar_battery_style_entries"
android:entryValues="@array/status_bar_battery_style_values"
android:defaultValue="0" />
<!-- Battery percent -->
<org.evolution.settings.preferences.SystemSettingListPreference
android:key="status_bar_show_battery_percent"
android:title="@string/status_bar_battery_percent_title"
android:entries="@array/status_bar_battery_percent_entries"
android:entryValues="@array/status_bar_battery_percent_values"
android:defaultValue="0" />
<!-- Battery percentage when charging -->
<org.evolution.settings.preferences.SystemSettingSwitchPreference
android:key="status_bar_battery_text_charging"
android:title="@string/status_bar_battery_text_charging_title"
android:summary="@string/status_bar_battery_text_charging_summary"
android:defaultValue="true" />
<!-- Data disabled icon -->
<org.evolution.settings.preferences.SystemSettingSwitchPreference
android:key="data_disabled_icon"

View File

@@ -10,6 +10,7 @@ import android.content.Context;
import android.content.res.Resources;
import android.os.Bundle;
import android.os.UserHandle;
import android.provider.Settings;
import androidx.preference.ListPreference;
import androidx.preference.Preference;
@@ -29,6 +30,7 @@ import java.util.List;
import lineageos.preference.LineageSecureSettingSwitchPreference;
import lineageos.providers.LineageSettings;
import org.evolution.settings.preferences.SystemSettingListPreference;
import org.evolution.settings.preferences.SystemSettingSwitchPreference;
import org.evolution.settings.utils.DeviceUtils;
@@ -38,6 +40,8 @@ public class QuickSettings extends SettingsPreferenceFragment implements
private static final String TAG = "QuickSettings";
private static final String KEY_BATTERY_PERCENT = "qs_show_battery_percent";
private static final String KEY_BATTERY_STYLE = "qs_battery_style";
private static final String KEY_BRIGHTNESS_SLIDER_POSITION = "qs_brightness_slider_position";
private static final String KEY_BRIGHTNESS_SLIDER_HAPTIC = "qs_brightness_slider_haptic";
private static final String KEY_INTERFACE_CATEGORY = "quick_settings_interface_category";
@@ -46,11 +50,17 @@ public class QuickSettings extends SettingsPreferenceFragment implements
private static final String KEY_SHOW_BRIGHTNESS_SLIDER = "qs_show_brightness_slider";
private static final String KEY_SHOW_AUTO_BRIGHTNESS = "qs_show_auto_brightness";
private static final int BATTERY_STYLE_PORTRAIT = 0;
private static final int BATTERY_STYLE_TEXT = 4;
private static final int BATTERY_STYLE_HIDDEN = 5;
private PreferenceCategory mInterfaceCategory;
private PreferenceCategory mMiscellaneousCategory;
private ListPreference mShowBrightnessSlider;
private ListPreference mBrightnessSliderPosition;
private LineageSecureSettingSwitchPreference mShowAutoBrightness;
private SystemSettingListPreference mBatteryStyle;
private SystemSettingListPreference mBatteryPercent;
private SystemSettingSwitchPreference mBrightnessSliderHaptic;
@Override
@@ -63,6 +73,17 @@ public class QuickSettings extends SettingsPreferenceFragment implements
final PreferenceScreen prefScreen = getPreferenceScreen();
final Resources resources = mContext.getResources();
mBatteryStyle = (SystemSettingListPreference) findPreference(KEY_BATTERY_STYLE);
mBatteryPercent = (SystemSettingListPreference) findPreference(KEY_BATTERY_PERCENT);
int batterystyle = Settings.System.getIntForUser(resolver,
Settings.System.QS_BATTERY_STYLE, BATTERY_STYLE_PORTRAIT, UserHandle.USER_CURRENT);
mBatteryStyle.setOnPreferenceChangeListener(this);
mBatteryPercent.setEnabled(
batterystyle != BATTERY_STYLE_TEXT && batterystyle != BATTERY_STYLE_HIDDEN);
mShowBrightnessSlider = findPreference(KEY_SHOW_BRIGHTNESS_SLIDER);
mShowBrightnessSlider.setOnPreferenceChangeListener(this);
boolean showSlider = LineageSettings.Secure.getIntForUser(resolver,
@@ -101,6 +122,11 @@ public class QuickSettings extends SettingsPreferenceFragment implements
if (mShowAutoBrightness != null)
mShowAutoBrightness.setEnabled(value > 0);
return true;
} else if (preference == mBatteryStyle) {
int value = Integer.parseInt((String) newValue);
mBatteryPercent.setEnabled(
value != BATTERY_STYLE_TEXT && value != BATTERY_STYLE_HIDDEN);
return true;
}
return false;
}

View File

@@ -9,6 +9,8 @@ import android.content.ContentResolver;
import android.content.Context;
import android.content.res.Resources;
import android.os.Bundle;
import android.os.UserHandle;
import android.provider.Settings;
import android.view.View;
import androidx.preference.Preference;
@@ -26,6 +28,7 @@ import java.util.List;
import lineageos.preference.LineageSystemSettingListPreference;
import org.evolution.settings.preferences.SystemSettingListPreference;
import org.evolution.settings.preferences.SystemSettingSwitchPreference;
import org.evolution.settings.utils.DeviceUtils;
@@ -38,6 +41,9 @@ public class StatusBar extends SettingsPreferenceFragment implements
private static final String KEY_QUICK_PULLDOWN = "qs_quick_pulldown";
private static final String KEY_ICONS_CATEGORY = "status_bar_icons_category";
private static final String KEY_BATTERY_STYLE = "status_bar_battery_style";
private static final String KEY_BATTERY_PERCENT = "status_bar_show_battery_percent";
private static final String KEY_BATTERY_TEXT_CHARGING = "status_bar_battery_text_charging";
private static final String KEY_DATA_DISABLED_ICON = "data_disabled_icon";
private static final String KEY_BLUETOOTH_BATTERY_STATUS = "bluetooth_show_battery";
private static final String KEY_FOUR_G_ICON = "show_fourg_icon";
@@ -46,10 +52,16 @@ public class StatusBar extends SettingsPreferenceFragment implements
private static final int PULLDOWN_DIR_RIGHT = 1;
private static final int PULLDOWN_DIR_LEFT = 2;
private static final int PULLDOWN_DIR_BOTH = 3;
private static final int BATTERY_STYLE_PORTRAIT = 0;
private static final int BATTERY_STYLE_TEXT = 4;
private static final int BATTERY_STYLE_HIDDEN = 5;
private LineageSystemSettingListPreference mQuickPulldown;
private PreferenceCategory mIconsCategory;
private SystemSettingListPreference mBatteryPercent;
private SystemSettingListPreference mBatteryStyle;
private SystemSettingSwitchPreference mBatteryTextCharging;
private SystemSettingSwitchPreference mDataDisabledIcon;
private SystemSettingSwitchPreference mFourgIcon;
private SystemSettingSwitchPreference mBluetoothBatteryStatus;
@@ -70,6 +82,10 @@ public class StatusBar extends SettingsPreferenceFragment implements
updateQuickPulldownSummary(mQuickPulldown.getIntValue(0));
mIconsCategory = (PreferenceCategory) findPreference(KEY_ICONS_CATEGORY);
mBatteryStyle = (SystemSettingListPreference) findPreference(KEY_BATTERY_STYLE);
mBatteryPercent = (SystemSettingListPreference) findPreference(KEY_BATTERY_PERCENT);
mBatteryTextCharging = (SystemSettingSwitchPreference) findPreference(KEY_BATTERY_TEXT_CHARGING);
mBluetoothBatteryStatus = (SystemSettingSwitchPreference) findPreference(KEY_BLUETOOTH_BATTERY_STATUS);
mDataDisabledIcon = (SystemSettingSwitchPreference) findPreference(KEY_DATA_DISABLED_ICON);
mFourgIcon = (SystemSettingSwitchPreference) findPreference(KEY_FOUR_G_ICON);
mBluetoothBatteryStatus = (SystemSettingSwitchPreference) findPreference(KEY_BLUETOOTH_BATTERY_STATUS);
@@ -79,6 +95,20 @@ public class StatusBar extends SettingsPreferenceFragment implements
mQuickPulldown.setEntryValues(R.array.status_bar_quick_pull_down_values_rtl);
}
int batterystyle = Settings.System.getIntForUser(resolver,
Settings.System.STATUS_BAR_BATTERY_STYLE, BATTERY_STYLE_PORTRAIT, UserHandle.USER_CURRENT);
int batterypercent = Settings.System.getIntForUser(resolver,
Settings.System.STATUS_BAR_SHOW_BATTERY_PERCENT, 0, UserHandle.USER_CURRENT);
mBatteryStyle.setOnPreferenceChangeListener(this);
mBatteryPercent.setEnabled(
batterystyle != BATTERY_STYLE_TEXT && batterystyle != BATTERY_STYLE_HIDDEN);
mBatteryPercent.setOnPreferenceChangeListener(this);
mBatteryTextCharging.setEnabled(batterystyle == BATTERY_STYLE_HIDDEN ||
(batterystyle != BATTERY_STYLE_TEXT && batterypercent != 2));
if (!DeviceUtils.deviceSupportsMobileData(context)) {
mIconsCategory.removePreference(mDataDisabledIcon);
mIconsCategory.removePreference(mFourgIcon);
@@ -97,6 +127,22 @@ public class StatusBar extends SettingsPreferenceFragment implements
int value = Integer.parseInt((String) newValue);
updateQuickPulldownSummary(value);
return true;
} else if (preference == mBatteryStyle) {
int value = Integer.parseInt((String) newValue);
int batterypercent = Settings.System.getIntForUser(resolver,
Settings.System.STATUS_BAR_SHOW_BATTERY_PERCENT, 0, UserHandle.USER_CURRENT);
mBatteryPercent.setEnabled(
value != BATTERY_STYLE_TEXT && value != BATTERY_STYLE_HIDDEN);
mBatteryTextCharging.setEnabled(value == BATTERY_STYLE_HIDDEN ||
(value != BATTERY_STYLE_TEXT && batterypercent != 2));
return true;
} else if (preference == mBatteryPercent) {
int value = Integer.parseInt((String) newValue);
int batterystyle = Settings.System.getIntForUser(resolver,
Settings.System.STATUS_BAR_BATTERY_STYLE, BATTERY_STYLE_PORTRAIT, UserHandle.USER_CURRENT);
mBatteryTextCharging.setEnabled(batterystyle == BATTERY_STYLE_HIDDEN ||
(batterystyle != BATTERY_STYLE_TEXT && value != 2));
return true;
}
return false;
}