summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/com/android/camera/SettingsManager.java13
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;
}
}