From 2269ac4717d03abdf2e0d8a345204bbd8f1a1993 Mon Sep 17 00:00:00 2001 From: sspanak Date: Sat, 11 Jan 2025 15:42:47 +0200 Subject: [PATCH] disabled the Settings Font Size option on Android 12 or higher --- .../preferences/screens/BaseScreenFragment.java | 9 ++++++++- .../appearance/ItemSelectSettingsFontSize.java | 15 +++++++++++---- 2 files changed, 19 insertions(+), 5 deletions(-) diff --git a/app/src/main/java/io/github/sspanak/tt9/preferences/screens/BaseScreenFragment.java b/app/src/main/java/io/github/sspanak/tt9/preferences/screens/BaseScreenFragment.java index 4afb89a1..e32c4a83 100644 --- a/app/src/main/java/io/github/sspanak/tt9/preferences/screens/BaseScreenFragment.java +++ b/app/src/main/java/io/github/sspanak/tt9/preferences/screens/BaseScreenFragment.java @@ -1,5 +1,6 @@ package io.github.sspanak.tt9.preferences.screens; +import android.os.Build; import android.os.Bundle; import android.view.MenuItem; @@ -8,6 +9,7 @@ import androidx.preference.PreferenceFragmentCompat; import io.github.sspanak.tt9.preferences.PreferencesActivity; import io.github.sspanak.tt9.preferences.custom.ScreenPreferencesList; +import io.github.sspanak.tt9.preferences.settings.SettingsUI; import io.github.sspanak.tt9.util.Logger; abstract public class BaseScreenFragment extends PreferenceFragmentCompat { @@ -87,7 +89,12 @@ abstract public class BaseScreenFragment extends PreferenceFragmentCompat { public void resetFontSize(boolean reloadList) { initPreferencesList(); preferencesList.getAll(reloadList, true); - preferencesList.setFontSize(activity.getSettings().getSettingsFontSize()); + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.S) { + preferencesList.setFontSize(SettingsUI.FONT_SIZE_DEFAULT); + } else { + preferencesList.setFontSize(activity.getSettings().getSettingsFontSize()); + } + } diff --git a/app/src/main/java/io/github/sspanak/tt9/preferences/screens/appearance/ItemSelectSettingsFontSize.java b/app/src/main/java/io/github/sspanak/tt9/preferences/screens/appearance/ItemSelectSettingsFontSize.java index 66d50d13..4f9fea29 100644 --- a/app/src/main/java/io/github/sspanak/tt9/preferences/screens/appearance/ItemSelectSettingsFontSize.java +++ b/app/src/main/java/io/github/sspanak/tt9/preferences/screens/appearance/ItemSelectSettingsFontSize.java @@ -1,5 +1,7 @@ package io.github.sspanak.tt9.preferences.screens.appearance; +import android.os.Build; + import androidx.preference.DropDownPreference; import androidx.preference.Preference; @@ -19,11 +21,16 @@ public class ItemSelectSettingsFontSize extends ItemDropDown { } public ItemDropDown populate() { - LinkedHashMap themes = new LinkedHashMap<>(); - themes.put(SettingsStore.FONT_SIZE_DEFAULT, screen.getString(R.string.pref_font_size_default)); - themes.put(SettingsStore.FONT_SIZE_LARGE, screen.getString(R.string.pref_font_size_large)); + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.S) { + if (item != null) item.setVisible(false); + return this; + } - super.populateIntegers(themes); + LinkedHashMap sizes = new LinkedHashMap<>(); + sizes.put(SettingsStore.FONT_SIZE_DEFAULT, screen.getString(R.string.pref_font_size_default)); + sizes.put(SettingsStore.FONT_SIZE_LARGE, screen.getString(R.string.pref_font_size_large)); + + super.populateIntegers(sizes); setValue(String.valueOf(new SettingsStore(screen.getContext()).getSettingsFontSize())); return this;