Cherish: Extend Pulse to Ambient Screen [2/2]

Signed-off-by: Hưng Phan <phandinhhungvp2001@gmail.com>
This commit is contained in:
spezi77
2020-08-02 17:13:33 +02:00
committed by Hưng Phan
parent b6685242ef
commit 9b598c7552
3 changed files with 60 additions and 4 deletions

View File

@@ -1276,4 +1276,38 @@
<!-- Accent Picker -->
<string name="accent_color_summary">Choose your desired accent</string>
<!-- Pulse -->
<string name="pulse_help_policy_notice_summary">Pulse is a brilliant audio graphic equalizer when music plays on the device</string>
<string name="pulse_settings">Pulse</string>
<string name="pulse_settings_summary">Audio graphic equalizer for navigation bar and lockscreen</string>
<string name="show_navbar_pulse_title">Navbar Pulse</string>
<string name="show_navbar_pulse_summary">Audio graphic equalizer on the navigation bar</string>
<string name="show_lockscreen_pulse_title">Lockscreen Pulse</string>
<string name="show_lockscreen_pulse_summary">Audio graphic equalizer on the lockscreen</string>
<string name="show_ambient_pulse_title">Ambient Pulse</string>
<string name="show_ambient_pulse_summary">Audio graphic equalizer on the ambient screen</string>
<string name="pulse_render_mode_title">Render mode</string>
<string name="pulse_render_mode_fading_bars">Fading blocks</string>
<string name="pulse_render_mode_solid_lines">Solid lines</string>
<string name="pulse_color">Color</string>
<string name="pulse_color_mode">Color mode</string>
<string name="pulse_color_accent">Accent</string>
<string name="pulse_color_custom">Custom</string>
<string name="pulse_color_lava_lamp">Lava lamp</string>
<string name="pulse_color_auto">Album art</string>
<string name="pulse_color_chooser">Choose color</string>
<string name="smoothing_enabled_title">Turn on smoothing</string>
<string name="smoothing_enabled_summary">Each bar is animated more smoothly</string>
<string name="pulse_advanced_category">Advanced</string>
<string name="pulse_legacy_mode_advanced_category">Fading blocks mode settings</string>
<string name="pulse_custom_fudge_factor">Sanity level</string>
<string name="lavamp_speed_title">Lava lamp speed</string>
<string name="pulse_solid_units_count">Solid lines count</string>
<string name="pulse_solid_units_opacity">Solid lines opacity</string>
<string name="pulse_solid_dimen_category">Solid lines mode settings</string>
<string name="pulse_custom_dimen">Bar width</string>
<string name="pulse_custom_div">Bar spacing</string>
<string name="pulse_filled_block_size">Block size</string>
<string name="pulse_empty_block_size">Block spacing</string>
</resources>

View File

@@ -27,6 +27,11 @@
android:key="lockscreen_pulse_enabled"
android:title="@string/show_lockscreen_pulse_title"
android:summary="@string/show_lockscreen_pulse_summary"/>
<SwitchPreference
android:key="ambient_pulse_enabled"
android:title="@string/show_ambient_pulse_title"
android:summary="@string/show_ambient_pulse_summary"/>
<com.cherish.settings.preferences.SecureSettingListPreference
android:key="pulse_render_style"

View File

@@ -51,6 +51,7 @@ public class PulseSettings extends SettingsPreferenceFragment implements
private static final String NAVBAR_PULSE_ENABLED_KEY = "navbar_pulse_enabled";
private static final String LOCKSCREEN_PULSE_ENABLED_KEY = "lockscreen_pulse_enabled";
private static final String AMBIENT_PULSE_ENABLED_KEY = "ambient_pulse_enabled";
private static final String PULSE_SMOOTHING_KEY = "pulse_smoothing_enabled";
private static final String PULSE_COLOR_MODE_KEY = "pulse_color_mode";
private static final String PULSE_COLOR_MODE_CHOOSER_KEY = "pulse_color_user";
@@ -67,6 +68,7 @@ public class PulseSettings extends SettingsPreferenceFragment implements
private SwitchPreference mNavbarPulse;
private SwitchPreference mLockscreenPulse;
private SwitchPreference mAmbientPulse;
private SwitchPreference mPulseSmoothing;
private Preference mRenderMode;
private ListPreference mColorModePref;
@@ -95,6 +97,12 @@ public class PulseSettings extends SettingsPreferenceFragment implements
mLockscreenPulse.setChecked(lockscreenPulse);
mLockscreenPulse.setOnPreferenceChangeListener(this);
mAmbientPulse = (SwitchPreference) findPreference(AMBIENT_PULSE_ENABLED_KEY);
boolean ambientPulse = Settings.Secure.getIntForUser(resolver,
Settings.Secure.AMBIENT_PULSE_ENABLED, 0, UserHandle.USER_CURRENT) != 0;
mAmbientPulse.setChecked(ambientPulse);
mAmbientPulse.setOnPreferenceChangeListener(this);
mColorModePref = (ListPreference) findPreference(PULSE_COLOR_MODE_KEY);
mColorPickerPref = (ColorPickerPreference) findPreference(PULSE_COLOR_MODE_CHOOSER_KEY);
int userColor = Settings.Secure.getInt(getContentResolver(),
@@ -131,6 +139,12 @@ public class PulseSettings extends SettingsPreferenceFragment implements
Settings.Secure.LOCKSCREEN_PULSE_ENABLED, val ? 1 : 0, UserHandle.USER_CURRENT);
updateAllPrefs();
return true;
} else if (preference == mAmbientPulse) {
boolean val = (Boolean) newValue;
Settings.Secure.putIntForUser(resolver,
Settings.Secure.AMBIENT_PULSE_ENABLED, val ? 1 : 0, UserHandle.USER_CURRENT);
updateAllPrefs();
return true;
} else if (preference == mColorPickerPref) {
int value = (Integer) newValue;
Settings.Secure.putInt(resolver,
@@ -154,9 +168,12 @@ public class PulseSettings extends SettingsPreferenceFragment implements
boolean lockscreenPulse = Settings.Secure.getIntForUser(resolver,
Settings.Secure.LOCKSCREEN_PULSE_ENABLED, 1, UserHandle.USER_CURRENT) != 0;
mPulseSmoothing.setEnabled(navbarPulse || lockscreenPulse);
boolean ambientPulse = Settings.Secure.getIntForUser(resolver,
Settings.Secure.AMBIENT_PULSE_ENABLED, 1, UserHandle.USER_CURRENT) != 0;
mColorModePref.setEnabled(navbarPulse || lockscreenPulse);
mPulseSmoothing.setEnabled(navbarPulse || lockscreenPulse || ambientPulse);
mColorModePref.setEnabled(navbarPulse || lockscreenPulse || ambientPulse);
if (navbarPulse || lockscreenPulse) {
int colorMode = Settings.Secure.getIntForUser(resolver,
Settings.Secure.PULSE_COLOR_MODE, COLOR_TYPE_LAVALAMP, UserHandle.USER_CURRENT);
@@ -166,8 +183,8 @@ public class PulseSettings extends SettingsPreferenceFragment implements
mLavaSpeedPref.setEnabled(false);
}
mRenderMode.setEnabled(navbarPulse || lockscreenPulse);
if (navbarPulse || lockscreenPulse) {
mRenderMode.setEnabled(navbarPulse || lockscreenPulse || ambientPulse);
if (navbarPulse || lockscreenPulse || ambientPulse) {
int renderMode = Settings.Secure.getIntForUser(resolver,
Settings.Secure.PULSE_RENDER_STYLE, RENDER_STYLE_SOLID_LINES, UserHandle.USER_CURRENT);
updateRenderCategories(renderMode);