Various small improvements

This commit is contained in:
topjohnwu
2016-12-11 20:38:15 +08:00
parent c9217a419a
commit 3c33f7d294
12 changed files with 61 additions and 73 deletions

View File

@@ -69,23 +69,24 @@ public class SettingsActivity extends AppCompatActivity {
}
}
public static class SettingsFragment extends PreferenceFragment implements SharedPreferences.OnSharedPreferenceChangeListener {
public static class SettingsFragment extends PreferenceFragment
implements SharedPreferences.OnSharedPreferenceChangeListener {
private ListPreference themePreference;
private SharedPreferences prefs;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
addPreferencesFromResource(R.xml.app_settings);
PreferenceManager.setDefaultValues(getActivity(), R.xml.app_settings, false);
prefs = PreferenceManager.getDefaultSharedPreferences(getActivity());
themePreference = (ListPreference) findPreference("theme");
CheckBoxPreference busyboxPreference = (CheckBoxPreference) findPreference("busybox");
CheckBoxPreference magiskhidePreference = (CheckBoxPreference) findPreference("magiskhide");
CheckBoxPreference hostsPreference = (CheckBoxPreference) findPreference("hosts");
PreferenceManager.getDefaultSharedPreferences(getActivity()).registerOnSharedPreferenceChangeListener(this);
themePreference.setSummary(themePreference.getValue());
if (MagiskFragment.magiskVersion < 9) {
@@ -103,23 +104,23 @@ public class SettingsActivity extends AppCompatActivity {
@Override
public void onResume() {
super.onResume();
PreferenceManager.getDefaultSharedPreferences(getActivity()).registerOnSharedPreferenceChangeListener(this);
prefs.registerOnSharedPreferenceChangeListener(this);
}
@Override
public void onDestroy() {
super.onDestroy();
PreferenceManager.getDefaultSharedPreferences(getActivity()).unregisterOnSharedPreferenceChangeListener(this);
prefs.unregisterOnSharedPreferenceChangeListener(this);
}
@Override
public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, String key) {
public void onSharedPreferenceChanged(SharedPreferences prefs, String key) {
Logger.dev("Settings: Prefs change " + key);
boolean checked;
switch (key) {
case "theme":
String theme = sharedPreferences.getString(key, "");
String theme = prefs.getString(key, "");
themePreference.setSummary(theme);
if (theme.equals("Dark")) {
@@ -133,7 +134,7 @@ public class SettingsActivity extends AppCompatActivity {
startActivity(intent);
break;
case "magiskhide":
checked = sharedPreferences.getBoolean("magiskhide", false);
checked = prefs.getBoolean("magiskhide", false);
if (checked) {
new Async.RootTask<Void, Void, Void>() {
@Override
@@ -151,9 +152,10 @@ public class SettingsActivity extends AppCompatActivity {
}
}.exec();
}
Toast.makeText(getActivity(), R.string.settings_reboot_toast, Toast.LENGTH_LONG).show();
break;
case "busybox":
checked = sharedPreferences.getBoolean("busybox", false);
checked = prefs.getBoolean("busybox", false);
if (checked) {
new Async.RootTask<Void, Void, Void>() {
@Override
@@ -174,7 +176,7 @@ public class SettingsActivity extends AppCompatActivity {
Toast.makeText(getActivity(), R.string.settings_reboot_toast, Toast.LENGTH_LONG).show();
break;
case "hosts":
checked = sharedPreferences.getBoolean("hosts", false);
checked = prefs.getBoolean("hosts", false);
if (checked) {
new Async.RootTask<Void, Void, Void>() {
@Override
@@ -195,10 +197,10 @@ public class SettingsActivity extends AppCompatActivity {
Toast.makeText(getActivity(), R.string.settings_reboot_toast, Toast.LENGTH_LONG).show();
break;
case "developer_logging":
Logger.devLog = sharedPreferences.getBoolean("developer_logging", false);
Logger.devLog = prefs.getBoolean("developer_logging", false);
break;
case "shell_logging":
Logger.logShell = sharedPreferences.getBoolean("shell_logging", false);
Logger.logShell = prefs.getBoolean("shell_logging", false);
break;
}