Fix: Use PreferencesActivity resultCodes properly
This fixes useless restarts/reloads, and missing ones too.
This commit is contained in:
parent
c0fad0fe26
commit
9f4bfe015c
@ -85,8 +85,7 @@ public class PreferencesActivity extends PreferenceActivity implements
|
|||||||
pref.getText()));
|
pref.getText()));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
protected void updateSummary(String key, boolean changing) {
|
||||||
protected void updateSummary(String key) {
|
|
||||||
|
|
||||||
if (key.equals(Preferences.PREF_UPD_INTERVAL)) {
|
if (key.equals(Preferences.PREF_UPD_INTERVAL)) {
|
||||||
ListPreference pref = (ListPreference)findPreference(
|
ListPreference pref = (ListPreference)findPreference(
|
||||||
@ -122,20 +121,26 @@ public class PreferencesActivity extends PreferenceActivity implements
|
|||||||
|
|
||||||
} else if (key.equals(Preferences.PREF_THEME)) {
|
} else if (key.equals(Preferences.PREF_THEME)) {
|
||||||
entrySummary(key);
|
entrySummary(key);
|
||||||
result |= RESULT_RESTART;
|
if (changing) {
|
||||||
setResult(result);
|
result |= RESULT_RESTART;
|
||||||
|
setResult(result);
|
||||||
|
}
|
||||||
|
|
||||||
} else if (key.equals(Preferences.PREF_INCOMP_VER)) {
|
} else if (key.equals(Preferences.PREF_INCOMP_VER)) {
|
||||||
onoffSummary(key, R.string.show_incompat_versions_on,
|
onoffSummary(key, R.string.show_incompat_versions_on,
|
||||||
R.string.show_incompat_versions_off);
|
R.string.show_incompat_versions_off);
|
||||||
result ^= RESULT_RELOAD;
|
if (changing) {
|
||||||
setResult(result);
|
result ^= RESULT_RELOAD;
|
||||||
|
setResult(result);
|
||||||
|
}
|
||||||
|
|
||||||
} else if (key.equals(Preferences.PREF_ROOTED)) {
|
} else if (key.equals(Preferences.PREF_ROOTED)) {
|
||||||
onoffSummary(key, R.string.rooted_on,
|
onoffSummary(key, R.string.rooted_on,
|
||||||
R.string.rooted_off);
|
R.string.rooted_off);
|
||||||
result ^= RESULT_REFILTER;
|
if (changing) {
|
||||||
setResult(result);
|
result ^= RESULT_REFILTER;
|
||||||
|
setResult(result);
|
||||||
|
}
|
||||||
|
|
||||||
} else if (key.equals(Preferences.PREF_IGN_TOUCH)) {
|
} else if (key.equals(Preferences.PREF_IGN_TOUCH)) {
|
||||||
onoffSummary(key, R.string.ignoreTouch_on,
|
onoffSummary(key, R.string.ignoreTouch_on,
|
||||||
@ -163,7 +168,7 @@ public class PreferencesActivity extends PreferenceActivity implements
|
|||||||
(OnSharedPreferenceChangeListener)this);
|
(OnSharedPreferenceChangeListener)this);
|
||||||
|
|
||||||
for (String key : summariesToUpdate) {
|
for (String key : summariesToUpdate) {
|
||||||
updateSummary(key);
|
updateSummary(key, false);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -188,7 +193,7 @@ public class PreferencesActivity extends PreferenceActivity implements
|
|||||||
public void onSharedPreferenceChanged(
|
public void onSharedPreferenceChanged(
|
||||||
SharedPreferences sharedPreferences, String key) {
|
SharedPreferences sharedPreferences, String key) {
|
||||||
|
|
||||||
updateSummary(key);
|
updateSummary(key, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user