From 5cca0e8991ee9fa3f30805944390055d410fefd3 Mon Sep 17 00:00:00 2001 From: Jack Yoo Date: Thu, 17 Dec 2015 16:53:36 -0800 Subject: SnapdragonCamera: Color Effect shows the current status Let the icon shows the current status of the color effect on/off Change-Id: I1c3719db15d4dd920b89591064cda372c7ab89be CRs-Fixed: 951550 --- src/com/android/camera/VideoMenu.java | 29 +++++++++++++++++++++++++---- 1 file changed, 25 insertions(+), 4 deletions(-) (limited to 'src/com/android/camera/VideoMenu.java') diff --git a/src/com/android/camera/VideoMenu.java b/src/com/android/camera/VideoMenu.java index 6998cbf0e..dcca97d68 100644 --- a/src/com/android/camera/VideoMenu.java +++ b/src/com/android/camera/VideoMenu.java @@ -502,14 +502,18 @@ public class VideoMenu extends MenuController public void initFilterModeButton(View button) { button.setVisibility(View.INVISIBLE); final IconListPreference pref = (IconListPreference) mPreferenceGroup - .findPreference(CameraSettings.KEY_COLOR_EFFECT); + .findPreference(CameraSettings.KEY_FILTER_MODE); if (pref == null) return; int[] iconIds = pref.getLargeIconIds(); + int index = pref.findIndexOfValue(pref.getValue()); int resid = -1; - // The preference only has a single icon to represent it. - resid = pref.getSingleIcon(); + if (!pref.getUseSingleIcon() && iconIds != null) { + resid = iconIds[index]; + } else { + resid = pref.getSingleIcon(); + } ((ImageView) button).setImageResource(resid); button.setVisibility(View.VISIBLE); button.setOnClickListener(new OnClickListener() { @@ -611,6 +615,7 @@ public class VideoMenu extends MenuController } else if (event.getAction() == MotionEvent.ACTION_UP) { if (System.currentTimeMillis() - startTime < CLICK_THRESHOLD) { pref.setValueIndex(j); + changeFilterModeControlIcon(pref.getValue()); for (View v1 : views) { v1.setBackground(null); } @@ -636,6 +641,22 @@ public class VideoMenu extends MenuController mPreviewMenu = basic; } + private void changeFilterModeControlIcon(String value) { + if(!value.equals("")) { + if(value.equalsIgnoreCase(mActivity.getString(R.string.pref_camera_coloreffect_entry_none))) { + value = mActivity.getString(R.string.pref_camera_filter_mode_entry_off); + } else { + value = mActivity.getString(R.string.pref_camera_filter_mode_entry_on); + } + final IconListPreference pref = (IconListPreference) mPreferenceGroup + .findPreference(CameraSettings.KEY_FILTER_MODE); + pref.setValue(value); + int index = pref.getCurrentIndex(); + ImageView iv = (ImageView) mFilterModeSwitcher; + iv.setImageResource(((IconListPreference) pref).getLargeIconIds()[index]); + } + } + public void openFirstLevel() { if (isMenuBeingShown() || CameraControls.isAnimating()) return; @@ -787,7 +808,7 @@ public class VideoMenu extends MenuController public void showUI() { mFrontBackSwitcher.setVisibility(View.VISIBLE); final IconListPreference pref = (IconListPreference) mPreferenceGroup - .findPreference(CameraSettings.KEY_COLOR_EFFECT); + .findPreference(CameraSettings.KEY_FILTER_MODE); if (pref != null) { mFilterModeSwitcher.setVisibility(View.VISIBLE); } -- cgit v1.2.3