Preference optimizations
This commit is contained in:
@@ -15,6 +15,7 @@ import de.sebse.fuplanner.services.fulogin.AccountGeneral;
|
||||
import de.sebse.fuplanner.services.kvv.sync.KVVContentProvider;
|
||||
import de.sebse.fuplanner.tools.CustomAccountManager;
|
||||
import de.sebse.fuplanner.tools.Preferences;
|
||||
import de.sebse.fuplanner.tools.logging.Logger;
|
||||
|
||||
public class PrefsFragment extends PreferenceFragmentCompat implements SharedPreferences.OnSharedPreferenceChangeListener {
|
||||
|
||||
@@ -52,26 +53,36 @@ public class PrefsFragment extends PreferenceFragmentCompat implements SharedPre
|
||||
if (preference instanceof ListPreference)
|
||||
preference.setSummary(((ListPreference) preference).getEntry());
|
||||
|
||||
if (getActivity() != null && getActivity() instanceof MainActivity) {
|
||||
CustomAccountManager accountManager = ((MainActivity) getActivity()).getAccountManager();
|
||||
if (accountManager != null) {
|
||||
Account accountByType = accountManager.getAccountByType(AccountGeneral.ACCOUNT_TYPE);
|
||||
if (accountByType != null) {
|
||||
ContentResolver.setSyncAutomatically(accountByType, KVVContentProvider.PROVIDER_NAME, true);
|
||||
ContentResolver.addPeriodicSync(
|
||||
accountByType,
|
||||
KVVContentProvider.PROVIDER_NAME,
|
||||
Bundle.EMPTY,
|
||||
Long.parseLong(Preferences.getStringArray(getActivity(), R.array.pref_sync_frequency)));
|
||||
if (s.equals(requireContext().getString(R.string.pref_sync_frequency))) {
|
||||
if (getActivity() != null && getActivity() instanceof MainActivity) {
|
||||
CustomAccountManager accountManager = ((MainActivity) getActivity()).getAccountManager();
|
||||
if (accountManager != null) {
|
||||
Account accountByType = accountManager.getAccountByType(AccountGeneral.ACCOUNT_TYPE);
|
||||
if (accountByType != null) {
|
||||
ContentResolver.setSyncAutomatically(accountByType, KVVContentProvider.PROVIDER_NAME, true);
|
||||
ContentResolver.addPeriodicSync(
|
||||
accountByType,
|
||||
KVVContentProvider.PROVIDER_NAME,
|
||||
Bundle.EMPTY,
|
||||
Long.parseLong(Preferences.getStringArray(getActivity(), R.array.pref_sync_frequency)));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
String nightMode = Preferences.getStringArray(requireContext(), R.array.pref_night_mode);
|
||||
switch (nightMode) {
|
||||
case "night": AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_YES); break;
|
||||
case "day": AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_NO); break;
|
||||
default: AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_FOLLOW_SYSTEM); break;
|
||||
if (s.equals(requireContext().getString(R.string.pref_night_mode))) {
|
||||
String nightMode = Preferences.getStringArray(requireContext(), R.array.pref_night_mode);
|
||||
switch (nightMode) {
|
||||
case "night":
|
||||
AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_YES);
|
||||
break;
|
||||
case "day":
|
||||
AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_NO);
|
||||
break;
|
||||
default:
|
||||
AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_FOLLOW_SYSTEM);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -6,7 +6,7 @@
|
||||
<item>Angestellter</item>
|
||||
<item>Andere</item>
|
||||
</string-array>
|
||||
|
||||
|
||||
<string-array name="pref_sync_frequency_entries">
|
||||
<item>Jede Stunde</item>
|
||||
<item>Alle 2 Stunden</item>
|
||||
@@ -1,54 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<string-array name="pref_price_group_entries">
|
||||
<item>All</item>
|
||||
<item>Student</item>
|
||||
<item>Employee</item>
|
||||
<item>Other</item>
|
||||
</string-array>
|
||||
<string-array name="pref_price_group_values" translatable="false">
|
||||
<item>all</item>
|
||||
<item>student</item>
|
||||
<item>employee</item>
|
||||
<item>other</item>
|
||||
</string-array>
|
||||
|
||||
<string-array name="pref_sync_frequency_entries">
|
||||
<item>Every hour</item>
|
||||
<item>Every 2 hours</item>
|
||||
<item>Every 4 hours</item>
|
||||
<item>Every 6 hours</item>
|
||||
<item>Every 12 hours</item>
|
||||
<item>Every 24 hours</item>
|
||||
</string-array>
|
||||
<string-array name="pref_sync_frequency_values" translatable="false">
|
||||
<item>1</item>
|
||||
<item>2</item>
|
||||
<item>4</item>
|
||||
<item>6</item>
|
||||
<item>12</item>
|
||||
<item>24</item>
|
||||
</string-array>
|
||||
|
||||
<string-array name="pref_food_level_entries">
|
||||
<item>Show every meal</item>
|
||||
<item>Show only vegetarian meals</item>
|
||||
<item>Show only vegan meals</item>
|
||||
</string-array>
|
||||
<string-array name="pref_food_level_values" translatable="false">
|
||||
<item>all</item>
|
||||
<item>vegetarian</item>
|
||||
<item>vegan</item>
|
||||
</string-array>
|
||||
|
||||
<string-array name="pref_night_mode_entries">
|
||||
<item>Follow system default</item>
|
||||
<item>Always day mode</item>
|
||||
<item>Always night mode</item>
|
||||
</string-array>
|
||||
<string-array name="pref_night_mode_values" translatable="false">
|
||||
<item>auto</item>
|
||||
<item>day</item>
|
||||
<item>night</item>
|
||||
</string-array>
|
||||
</resources>
|
||||
@@ -1,6 +1,18 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<!-- Select an item -->
|
||||
<string-array name="pref_price_group_entries">
|
||||
<item>All</item>
|
||||
<item>Student</item>
|
||||
<item>Employee</item>
|
||||
<item>Other</item>
|
||||
</string-array>
|
||||
<string-array name="pref_price_group_values" translatable="false">
|
||||
<item>all</item>
|
||||
<item>student</item>
|
||||
<item>employee</item>
|
||||
<item>other</item>
|
||||
</string-array>
|
||||
<string-array name="pref_price_group" translatable="false">
|
||||
<item>@string/pref_price_group</item>
|
||||
<item>@string/pref_price_group_default</item>
|
||||
@@ -8,6 +20,22 @@
|
||||
<string name="pref_price_group" translatable="false">pref_price_group</string>
|
||||
<string name="pref_price_group_default" translatable="false">all</string>
|
||||
|
||||
<string-array name="pref_sync_frequency_entries">
|
||||
<item>Every hour</item>
|
||||
<item>Every 2 hours</item>
|
||||
<item>Every 4 hours</item>
|
||||
<item>Every 6 hours</item>
|
||||
<item>Every 12 hours</item>
|
||||
<item>Every 24 hours</item>
|
||||
</string-array>
|
||||
<string-array name="pref_sync_frequency_values" translatable="false">
|
||||
<item>1</item>
|
||||
<item>2</item>
|
||||
<item>4</item>
|
||||
<item>6</item>
|
||||
<item>12</item>
|
||||
<item>24</item>
|
||||
</string-array>
|
||||
<string-array name="pref_sync_frequency" translatable="false">
|
||||
<item>@string/pref_sync_frequency</item>
|
||||
<item>@string/pref_sync_frequency_default</item>
|
||||
@@ -15,6 +43,16 @@
|
||||
<string name="pref_sync_frequency" translatable="false">pref_sync_frequency</string>
|
||||
<string name="pref_sync_frequency_default" translatable="false">6</string>
|
||||
|
||||
<string-array name="pref_food_level_entries">
|
||||
<item>Show every meal</item>
|
||||
<item>Show only vegetarian meals</item>
|
||||
<item>Show only vegan meals</item>
|
||||
</string-array>
|
||||
<string-array name="pref_food_level_values" translatable="false">
|
||||
<item>all</item>
|
||||
<item>vegetarian</item>
|
||||
<item>vegan</item>
|
||||
</string-array>
|
||||
<string-array name="pref_food_level" translatable="false">
|
||||
<item>@string/pref_food_level</item>
|
||||
<item>@string/pref_food_level_default</item>
|
||||
@@ -22,6 +60,16 @@
|
||||
<string name="pref_food_level" translatable="false">pref_food_level</string>
|
||||
<string name="pref_food_level_default" translatable="false">all</string>
|
||||
|
||||
<string-array name="pref_night_mode_entries">
|
||||
<item>Follow system default</item>
|
||||
<item>Always day mode</item>
|
||||
<item>Always night mode</item>
|
||||
</string-array>
|
||||
<string-array name="pref_night_mode_values" translatable="false">
|
||||
<item>auto</item>
|
||||
<item>day</item>
|
||||
<item>night</item>
|
||||
</string-array>
|
||||
<string-array name="pref_night_mode" translatable="false">
|
||||
<item>@string/pref_night_mode</item>
|
||||
<item>@string/pref_night_mode_default</item>
|
||||
|
||||
Reference in New Issue
Block a user