summaryrefslogtreecommitdiffstats
path: root/src/com/android/camera/PhotoMenu.java
diff options
context:
space:
mode:
authorDimitar Borisov <dboris@codeaurora.org>2014-09-24 17:32:06 +0300
committerDimitar Borisov <dboris@codeaurora.org>2014-09-30 19:32:14 +0300
commit19656479581c4cdda53e6af6acfcb3346b97164a (patch)
tree68fbc150991ca34e6ab77ced2e603c4c0e925fb3 /src/com/android/camera/PhotoMenu.java
parent81b91551dfd0f35380094e3434e5358e8d63f0ba (diff)
downloadandroid_packages_apps_Snap-19656479581c4cdda53e6af6acfcb3346b97164a.tar.gz
android_packages_apps_Snap-19656479581c4cdda53e6af6acfcb3346b97164a.tar.bz2
android_packages_apps_Snap-19656479581c4cdda53e6af6acfcb3346b97164a.zip
SnapdragonCamera: Add support for CDS and TNR settings
Add support for CDS and TNR settings - CDS and TNR can be controlled in photo mode and video mode. - CDS is set to off and cannot be set to other value when TNR is enabled - CDS value is restored when TNR is disabled again CRs-Fixed: 715042 Change-Id: Idf08403e38d0e3e634b047a955f2328b4237e691
Diffstat (limited to 'src/com/android/camera/PhotoMenu.java')
-rw-r--r--src/com/android/camera/PhotoMenu.java44
1 files changed, 41 insertions, 3 deletions
diff --git a/src/com/android/camera/PhotoMenu.java b/src/com/android/camera/PhotoMenu.java
index 78ab98c5d..c4e8f8350 100644
--- a/src/com/android/camera/PhotoMenu.java
+++ b/src/com/android/camera/PhotoMenu.java
@@ -60,6 +60,9 @@ public class PhotoMenu extends PieController
private int popupNum = 0;
private PieItem mHdrItem = null;
private PieItem mHdrPlusItem = null;
+ private String mPrevSavedCDS;
+ private boolean mIsTNREnabled = false;
+ private boolean mIsCDSUpdated = false;
public PhotoMenu(CameraActivity activity, PhotoUI ui, PieRenderer pie) {
super(activity, pie);
@@ -106,7 +109,9 @@ public class PhotoMenu extends PieController
CameraSettings.KEY_LONGSHOT,
CameraSettings.KEY_AUTO_HDR,
CameraSettings.KEY_HDR_MODE,
- CameraSettings.KEY_HDR_NEED_1X
+ CameraSettings.KEY_HDR_NEED_1X,
+ CameraSettings.KEY_CDS_MODE,
+ CameraSettings.KEY_TNR_MODE
};
mOtherKeys2 = new String[] {
@@ -213,10 +218,43 @@ public class PhotoMenu extends PieController
onSettingChanged(pref);
}
- @Override
+ @Override
public void overrideSettings(final String ... keyvalues) {
+ if (mPopup1 != null) {
+ ListPreference pref_tnr = mPreferenceGroup.findPreference(CameraSettings.KEY_TNR_MODE);
+ ListPreference pref_cds = mPreferenceGroup.findPreference(CameraSettings.KEY_CDS_MODE);
+
+ String tnr = (pref_tnr != null) ? pref_tnr.getValue() : null;
+ String cds = (pref_cds != null) ? pref_cds.getValue() : null;
+
+ if (mPrevSavedCDS == null && cds != null) {
+ mPrevSavedCDS = cds;
+ }
+
+ if ((tnr != null) && !mActivity.getString(R.string.
+ pref_camera_tnr_default).equals(tnr)) {
+ mPopup1.setPreferenceEnabled(CameraSettings.KEY_CDS_MODE, false);
+ mPopup1.overrideSettings(CameraSettings.KEY_CDS_MODE,
+ mActivity.getString(R.string.pref_camera_cds_value_off));
+ mIsTNREnabled = true;
+ if (!mIsCDSUpdated) {
+ if (cds != null) {
+ mPrevSavedCDS = cds;
+ }
+ mIsCDSUpdated = true;
+ }
+ } else if (tnr != null) {
+ mPopup1.setPreferenceEnabled(CameraSettings.KEY_CDS_MODE, true);
+ if (mIsTNREnabled && mPrevSavedCDS != cds) {
+ mPopup1.overrideSettings(CameraSettings.KEY_CDS_MODE, mPrevSavedCDS);
+ mIsTNREnabled = false;
+ mIsCDSUpdated = false;
+ }
+ }
+ }
+
super.overrideSettings(keyvalues);
- if ((mPopup1 == null) && (mPopup2 == null) && (mPopup3 == null)) initializePopup();
+ if ((mPopup1 == null) && (mPopup2 == null) && (mPopup3 == null)) initializePopup();
mPopup1.overrideSettings(keyvalues);
mPopup2.overrideSettings(keyvalues);
mPopup3.overrideSettings(keyvalues);