diff options
-rw-r--r-- | src/com/android/camera/SettingsManager.java | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/src/com/android/camera/SettingsManager.java b/src/com/android/camera/SettingsManager.java index 41ce09379..3d93a3ee8 100644 --- a/src/com/android/camera/SettingsManager.java +++ b/src/com/android/camera/SettingsManager.java @@ -437,11 +437,18 @@ public class SettingsManager implements ListMenu.SettingsListener { return values.overriddenValue != null; } - public void setValue(String key, String value) { + public boolean setValue(String key, String value) { ListPreference pref = mPreferenceGroup.findPreference(key); if (pref != null) { - pref.setValue(value); - updateMapAndNotify(pref); + if (pref.findIndexOfValue(value) < 0) { + return false; + } else { + pref.setValue(value); + updateMapAndNotify(pref); + return true; + } + } else { + return false; } } |