Commit 23aec94d authored by Thomas's avatar Thomas
Browse files

Merge pull request 'accent_color_corrections' (#934) from...

Merge pull request 'accent_color_corrections' (#934) from Zekovski/Fedilab:accent_color_corrections into develop

Reviewed-on: https://codeberg.org/tom79/Fedilab/pulls/934
parents 50e88b3f ed9563d3
Loading
Loading
Loading
Loading
+14 −13
Original line number Diff line number Diff line
@@ -31,6 +31,7 @@ import androidx.preference.PreferenceFragmentCompat;
import androidx.preference.PreferenceManager;
import androidx.preference.SwitchPreferenceCompat;

import com.google.android.material.color.DynamicColors;
import com.google.android.material.dialog.MaterialAlertDialogBuilder;
import com.jaredrummler.android.colorpicker.ColorPreferenceCompat;

@@ -118,31 +119,31 @@ public class FragmentThemingSettings extends PreferenceFragmentCompat implements
        SwitchPreferenceCompat SET_CUSTOM_ACCENT = findPreference(getString(R.string.SET_CUSTOM_ACCENT));
        ColorPreferenceCompat SET_CUSTOM_ACCENT_DARK_VALUE = findPreference(getString(R.string.SET_CUSTOM_ACCENT_DARK_VALUE));
        ColorPreferenceCompat SET_CUSTOM_ACCENT_LIGHT_VALUE = findPreference(getString(R.string.SET_CUSTOM_ACCENT_LIGHT_VALUE));
        if (android.os.Build.VERSION.SDK_INT < Build.VERSION_CODES.S) {
            if (SET_DYNAMIC_COLOR != null) {
                getPreferenceScreen().removePreference(SET_DYNAMIC_COLOR);
            }
        if (DynamicColors.isDynamicColorAvailable()) {
            if (SET_CUSTOM_ACCENT != null) {
                getPreferenceScreen().removePreference(SET_CUSTOM_ACCENT);
                boolean customAccentEnabled = sharedpreferences.getBoolean(getString(R.string.SET_CUSTOM_ACCENT) + currentUserID + currentInstance, false);
                SET_CUSTOM_ACCENT.setChecked(customAccentEnabled);
            }
            if (SET_CUSTOM_ACCENT_DARK_VALUE != null) {
                getPreferenceScreen().removePreference(SET_CUSTOM_ACCENT_DARK_VALUE);
                int darkValue = sharedpreferences.getInt(getString(R.string.SET_CUSTOM_ACCENT_DARK_VALUE) + currentUserID + currentInstance, -1);
                SET_CUSTOM_ACCENT_DARK_VALUE.setColor(darkValue);
            }
            if (SET_CUSTOM_ACCENT_LIGHT_VALUE != null) {
                getPreferenceScreen().removePreference(SET_CUSTOM_ACCENT_LIGHT_VALUE);
                int lightValue = sharedpreferences.getInt(getString(R.string.SET_CUSTOM_ACCENT_LIGHT_VALUE) + currentUserID + currentInstance, -1);
                SET_CUSTOM_ACCENT_LIGHT_VALUE.setColor(lightValue);
            }
        } else {
            if (SET_DYNAMIC_COLOR != null) {
                getPreferenceScreen().removePreference(SET_DYNAMIC_COLOR);
            }
            if (SET_CUSTOM_ACCENT != null) {
                boolean customAccentEnabled = sharedpreferences.getBoolean(getString(R.string.SET_CUSTOM_ACCENT) + currentUserID + currentInstance, false);
                SET_CUSTOM_ACCENT.setChecked(customAccentEnabled);
                getPreferenceScreen().removePreference(SET_CUSTOM_ACCENT);
            }
            if (SET_CUSTOM_ACCENT_DARK_VALUE != null) {
                int darkValue = sharedpreferences.getInt(getString(R.string.SET_CUSTOM_ACCENT_DARK_VALUE) + currentUserID + currentInstance, -1);
                SET_CUSTOM_ACCENT_DARK_VALUE.setColor(darkValue);
                getPreferenceScreen().removePreference(SET_CUSTOM_ACCENT_DARK_VALUE);
            }
            if (SET_CUSTOM_ACCENT_LIGHT_VALUE != null) {
                int darkValue = sharedpreferences.getInt(getString(R.string.SET_CUSTOM_ACCENT_LIGHT_VALUE) + currentUserID + currentInstance, -1);
                SET_CUSTOM_ACCENT_LIGHT_VALUE.setColor(darkValue);
                getPreferenceScreen().removePreference(SET_CUSTOM_ACCENT_LIGHT_VALUE);
            }
        }