From 92ea0735ed488f356fd9ae077df2629cc6f53e97 Mon Sep 17 00:00:00 2001 From: weijiew Date: Wed, 23 Nov 2016 17:13:10 +0800 Subject: SnapdragonCamera: Disable color effects when scene mode is non-automatic SceneMode and color effect filter can't be open at the same time. Color effect filter should be disabled when scene mode was non-automatic CRs-Fixed: 1080667 Change-Id: Icabfe937c438f38047d073af61b9ae4e1e0dcbbc --- src/com/android/camera/CaptureUI.java | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'src') diff --git a/src/com/android/camera/CaptureUI.java b/src/com/android/camera/CaptureUI.java index 88460b865..263b1834a 100644 --- a/src/com/android/camera/CaptureUI.java +++ b/src/com/android/camera/CaptureUI.java @@ -77,6 +77,7 @@ import org.codeaurora.snapcam.R; import java.util.List; import java.util.Locale; +import java.util.Map; public class CaptureUI implements FocusOverlayManager.FocusUI, PreviewGestures.SingleTapListener, @@ -538,6 +539,8 @@ public class CaptureUI implements FocusOverlayManager.FocusUI, String value = mSettingsManager.getValue(SettingsManager.KEY_COLOR_EFFECT); if (value == null) return; + enableView(mFilterModeSwitcher, SettingsManager.KEY_COLOR_EFFECT); + mFilterModeSwitcher.setVisibility(View.VISIBLE); mFilterModeSwitcher.setOnClickListener(new View.OnClickListener() { @Override @@ -548,6 +551,13 @@ public class CaptureUI implements FocusOverlayManager.FocusUI, }); } + private void enableView(View view, String key) { + Map map = mSettingsManager.getValuesMap(); + SettingsManager.Values values = map.get(key); + boolean enabled = values.overriddenValue == null; + view.setEnabled(enabled); + } + public void showTimeLapseUI(boolean enable) { if (mTimeLapseLabel != null) { mTimeLapseLabel.setVisibility(enable ? View.VISIBLE : View.GONE); @@ -1282,6 +1292,12 @@ public class CaptureUI implements FocusOverlayManager.FocusUI, @Override public void onSettingsChanged(List settings) { + for( SettingsManager.SettingState state : settings) { + if( state.key.equals(SettingsManager.KEY_COLOR_EFFECT) ) { + enableView(mFilterModeSwitcher, SettingsManager.KEY_COLOR_EFFECT); + break; + } + } } public void startSelfieFlash() { -- cgit v1.2.3