summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--res/drawable-hdpi/ic_scene_mode_hdr.pngbin0 -> 3144 bytes
-rw-r--r--res/drawable-mdpi/ic_scene_mode_hdr.pngbin0 -> 2349 bytes
-rw-r--r--res/drawable-xhdpi/ic_scene_mode_hdr.pngbin0 -> 3967 bytes
-rw-r--r--res/values/arrays.xml4
-rw-r--r--src/com/android/camera/PhotoMenu.java43
5 files changed, 32 insertions, 15 deletions
diff --git a/res/drawable-hdpi/ic_scene_mode_hdr.png b/res/drawable-hdpi/ic_scene_mode_hdr.png
new file mode 100644
index 000000000..d6b10af27
--- /dev/null
+++ b/res/drawable-hdpi/ic_scene_mode_hdr.png
Binary files differ
diff --git a/res/drawable-mdpi/ic_scene_mode_hdr.png b/res/drawable-mdpi/ic_scene_mode_hdr.png
new file mode 100644
index 000000000..caf4601ef
--- /dev/null
+++ b/res/drawable-mdpi/ic_scene_mode_hdr.png
Binary files differ
diff --git a/res/drawable-xhdpi/ic_scene_mode_hdr.png b/res/drawable-xhdpi/ic_scene_mode_hdr.png
new file mode 100644
index 000000000..d24107512
--- /dev/null
+++ b/res/drawable-xhdpi/ic_scene_mode_hdr.png
Binary files differ
diff --git a/res/values/arrays.xml b/res/values/arrays.xml
index 5ee0c7720..208c3257d 100644
--- a/res/values/arrays.xml
+++ b/res/values/arrays.xml
@@ -397,6 +397,7 @@
<!-- Camera Preferences Scene Mode dialog box entries -->
<string-array name="pref_camera_scenemode_entries" translatable="false">
<item>@string/pref_camera_scenemode_entry_auto</item>
+ <item>@string/pref_camera_scenemode_entry_hdr</item>
<item>@string/pref_camera_scenemode_entry_refocus</item>
<item>@string/pref_camera_scenemode_entry_portrait</item>
<item>@string/pref_camera_scenemode_entry_landscape</item>
@@ -412,6 +413,7 @@
<array name="scenemode_thumbnails" translatable="false">
<item>@drawable/ic_scene_mode_auto</item>
+ <item>@drawable/ic_scene_mode_hdr</item>
<item>@drawable/ic_scene_mode_refocus</item>
<item>@drawable/ic_scene_mode_portrait</item>
<item>@drawable/ic_scene_mode_landscape</item>
@@ -443,7 +445,7 @@
<string-array name="pref_camera_scenemode_entryvalues" translatable="false">
<item>auto</item>
-
+ <item>hdr</item>
<item>@string/pref_camera_advanced_feature_value_refocus_on</item>
<item>portrait</item>
<item>landscape</item>
diff --git a/src/com/android/camera/PhotoMenu.java b/src/com/android/camera/PhotoMenu.java
index be3a02c1f..309223213 100644
--- a/src/com/android/camera/PhotoMenu.java
+++ b/src/com/android/camera/PhotoMenu.java
@@ -63,6 +63,7 @@ public class PhotoMenu extends MenuController
private static String TAG = "PhotoMenu";
private final String mSettingOff;
+ private final String mSettingOn;
private String[] mOtherKeys1;
private String[] mOtherKeys2;
@@ -101,6 +102,7 @@ public class PhotoMenu extends MenuController
super(activity);
mUI = ui;
mSettingOff = activity.getString(R.string.setting_off_value);
+ mSettingOn = activity.getString(R.string.setting_on_value);
mActivity = activity;
mFrontBackSwitcher = ui.getRootView().findViewById(R.id.front_back_switcher);
mHdrSwitcher = ui.getRootView().findViewById(R.id.hdr_switcher);
@@ -1053,6 +1055,11 @@ public class PhotoMenu extends MenuController
return (key.equals(pref.getKey()) && !value.equals(pref.getValue()));
}
+ // Return true if the preference has the specified key and the value.
+ private static boolean same(ListPreference pref, String key, String value) {
+ return (key.equals(pref.getKey()) && value.equals(pref.getValue()));
+ }
+
public void setPreference(String key, String value) {
ListPreference pref = mPreferenceGroup.findPreference(key);
if (pref != null && !value.equals(pref.getValue())) {
@@ -1065,25 +1072,33 @@ public class PhotoMenu extends MenuController
public void onSettingChanged(ListPreference pref) {
// Reset the scene mode if HDR is set to on. Reset HDR if scene mode is
// set to non-auto.
- if (notSame(pref, CameraSettings.KEY_CAMERA_HDR, mSettingOff)) {
- ListPreference scenePref =
- mPreferenceGroup.findPreference(CameraSettings.KEY_SCENE_MODE);
- if (scenePref != null && notSame(scenePref, CameraSettings.KEY_SCENE_MODE,
- Parameters.SCENE_MODE_AUTO)) {
- RotateTextToast.makeText(mActivity, R.string.hdr_enable_message,
- Toast.LENGTH_LONG).show();
+ if (same(pref, CameraSettings.KEY_SCENE_MODE, Parameters.SCENE_MODE_HDR)) {
+ ListPreference hdrPref =
+ mPreferenceGroup.findPreference(CameraSettings.KEY_CAMERA_HDR);
+ if (hdrPref != null && same(hdrPref, CameraSettings.KEY_CAMERA_HDR, mSettingOff)) {
+ setPreference(CameraSettings.KEY_CAMERA_HDR, mSettingOn);
}
- setPreference(CameraSettings.KEY_SCENE_MODE, Parameters.SCENE_MODE_AUTO);
- updateSceneModeIcon((IconListPreference) scenePref);
- } else if (notSame(pref, CameraSettings.KEY_SCENE_MODE, Parameters.SCENE_MODE_AUTO)) {
+ } else if (notSame(pref, CameraSettings.KEY_SCENE_MODE, Parameters.SCENE_MODE_HDR)) {
ListPreference hdrPref =
mPreferenceGroup.findPreference(CameraSettings.KEY_CAMERA_HDR);
if (hdrPref != null && notSame(hdrPref, CameraSettings.KEY_CAMERA_HDR, mSettingOff)) {
- RotateTextToast.makeText(mActivity, R.string.scene_enable_message,
- Toast.LENGTH_LONG).show();
+ setPreference(CameraSettings.KEY_CAMERA_HDR, mSettingOff);
}
- setPreference(CameraSettings.KEY_CAMERA_HDR, mSettingOff);
- } else if (notSame(pref,CameraSettings.KEY_AE_BRACKET_HDR,"Off")) {
+ } else if (same(pref, CameraSettings.KEY_CAMERA_HDR, mSettingOff)) {
+ ListPreference scenePref =
+ mPreferenceGroup.findPreference(CameraSettings.KEY_SCENE_MODE);
+ if (scenePref != null && notSame(scenePref, CameraSettings.KEY_SCENE_MODE, Parameters.SCENE_MODE_AUTO)) {
+ setPreference(CameraSettings.KEY_SCENE_MODE, Parameters.SCENE_MODE_AUTO);
+ }
+ updateSceneModeIcon((IconListPreference) scenePref);
+ } else if (same(pref, CameraSettings.KEY_CAMERA_HDR, mSettingOn)) {
+ ListPreference scenePref =
+ mPreferenceGroup.findPreference(CameraSettings.KEY_SCENE_MODE);
+ if (scenePref != null && notSame(scenePref, CameraSettings.KEY_SCENE_MODE, Parameters.SCENE_MODE_HDR)) {
+ setPreference(CameraSettings.KEY_SCENE_MODE, Parameters.SCENE_MODE_HDR);
+ }
+ updateSceneModeIcon((IconListPreference) scenePref);
+ } else if (notSame(pref,CameraSettings.KEY_AE_BRACKET_HDR,"Off")) {
RotateTextToast.makeText(mActivity,
R.string.flash_aebracket_message,Toast.LENGTH_SHORT).show();
setPreference(CameraSettings.KEY_FLASH_MODE,Parameters.FLASH_MODE_OFF);