diff options
-rw-r--r-- | res/drawable-hdpi/ic_settings_filter.png | bin | 3786 -> 2157 bytes | |||
-rw-r--r-- | res/drawable-hdpi/ic_settings_filter_on.png | bin | 0 -> 2311 bytes | |||
-rw-r--r-- | res/drawable-xhdpi/ic_settings_filter.png | bin | 4868 -> 2592 bytes | |||
-rw-r--r-- | res/drawable-xhdpi/ic_settings_filter_on.png | bin | 0 -> 2731 bytes | |||
-rw-r--r-- | res/drawable-xxhdpi/ic_settings_filter.png | bin | 7389 -> 3208 bytes | |||
-rw-r--r-- | res/drawable-xxhdpi/ic_settings_filter_on.png | bin | 0 -> 3301 bytes | |||
-rw-r--r-- | res/values/qcomarrays.xml | 14 | ||||
-rw-r--r-- | res/values/qcomstrings.xml | 5 | ||||
-rw-r--r-- | res/xml/camera_preferences.xml | 9 | ||||
-rw-r--r-- | res/xml/video_preferences.xml | 9 | ||||
-rw-r--r-- | src/com/android/camera/CameraSettings.java | 1 | ||||
-rw-r--r-- | src/com/android/camera/PhotoMenu.java | 27 | ||||
-rw-r--r-- | src/com/android/camera/VideoMenu.java | 29 |
13 files changed, 85 insertions, 9 deletions
diff --git a/res/drawable-hdpi/ic_settings_filter.png b/res/drawable-hdpi/ic_settings_filter.png Binary files differindex 30b9e0a0d..a50d758fb 100644 --- a/res/drawable-hdpi/ic_settings_filter.png +++ b/res/drawable-hdpi/ic_settings_filter.png diff --git a/res/drawable-hdpi/ic_settings_filter_on.png b/res/drawable-hdpi/ic_settings_filter_on.png Binary files differnew file mode 100644 index 000000000..32835f907 --- /dev/null +++ b/res/drawable-hdpi/ic_settings_filter_on.png diff --git a/res/drawable-xhdpi/ic_settings_filter.png b/res/drawable-xhdpi/ic_settings_filter.png Binary files differindex 6d274327c..1d8d4a55c 100644 --- a/res/drawable-xhdpi/ic_settings_filter.png +++ b/res/drawable-xhdpi/ic_settings_filter.png diff --git a/res/drawable-xhdpi/ic_settings_filter_on.png b/res/drawable-xhdpi/ic_settings_filter_on.png Binary files differnew file mode 100644 index 000000000..c1e518e33 --- /dev/null +++ b/res/drawable-xhdpi/ic_settings_filter_on.png diff --git a/res/drawable-xxhdpi/ic_settings_filter.png b/res/drawable-xxhdpi/ic_settings_filter.png Binary files differindex 06bdd140e..4ecb0550a 100644 --- a/res/drawable-xxhdpi/ic_settings_filter.png +++ b/res/drawable-xxhdpi/ic_settings_filter.png diff --git a/res/drawable-xxhdpi/ic_settings_filter_on.png b/res/drawable-xxhdpi/ic_settings_filter_on.png Binary files differnew file mode 100644 index 000000000..048c08772 --- /dev/null +++ b/res/drawable-xxhdpi/ic_settings_filter_on.png diff --git a/res/values/qcomarrays.xml b/res/values/qcomarrays.xml index f54c22971..5b99bdc28 100644 --- a/res/values/qcomarrays.xml +++ b/res/values/qcomarrays.xml @@ -788,6 +788,15 @@ <item>On</item> </string-array> + <string-array name="pref_camera_filter_mode_entries" translatable="false"> + <item>@string/pref_camera_filter_mode_entry_off</item> + <item>@string/pref_camera_filter_mode_entry_on</item> + </string-array> + <string-array name="pref_camera_filter_mode_entryvalues" translatable="false"> + <item>Off</item> + <item>On</item> + </string-array> + <!-- Camera Preferences Color effect dialog box entries --> <string-array name="pref_camera_tsmakeup_level_entries" translatable="false"> <item>@string/pref_camera_tsmakeup_entry_off</item> @@ -816,6 +825,9 @@ <item>@drawable/ic_ts_makeup_off</item> <item>@drawable/ic_ts_makeup_on</item> </string-array> - + <string-array name="pref_filter_mode_icons" translatable="false"> + <item>@drawable/ic_settings_filter</item> + <item>@drawable/ic_settings_filter_on</item> + </string-array> </resources> diff --git a/res/values/qcomstrings.xml b/res/values/qcomstrings.xml index 115a6ffa7..97576fbae 100644 --- a/res/values/qcomstrings.xml +++ b/res/values/qcomstrings.xml @@ -471,9 +471,12 @@ <!-- Default color effect setting. --> <string name="pref_camera_coloreffect_default" translatable="false">none</string> + <string name="pref_camera_filter_mode_entry_on">On</string> + <string name="pref_camera_filter_mode_entry_off">Off</string> <!-- Settings screen, Select Color effect title --> - <string name="pref_camera_coloreffect_title">Color effect</string> + <string name="pref_camera_coloreffect_title">Color effect Level</string> + <string name="pref_camera_filter_mode_title">Color effect Mode</string> <!-- Settings screen, Color effect dialog radio button choices --> <string name="pref_camera_coloreffect_entry_none">None</string> diff --git a/res/xml/camera_preferences.xml b/res/xml/camera_preferences.xml index c6e625835..8a0668fa0 100644 --- a/res/xml/camera_preferences.xml +++ b/res/xml/camera_preferences.xml @@ -149,6 +149,15 @@ camera:entries="@array/pref_camera_facerc_entries" camera:entryValues="@array/pref_camera_facerc_entryvalues" /> <IconListPreference + camera:key="pref_camera_filter_mode_key" + camera:defaultValue="@string/pref_camera_coloreffect_default" + camera:title="@string/pref_camera_filter_mode_title" + camera:entries="@array/pref_camera_filter_mode_entries" + camera:singleIcon="@drawable/ic_settings_filter" + camera:icons="@array/pref_filter_mode_icons" + camera:largeIcons="@array/pref_filter_mode_icons" + camera:entryValues="@array/pref_camera_filter_mode_entryvalues" /> + <IconListPreference camera:key="pref_camera_coloreffect_key" camera:defaultValue="@string/pref_camera_coloreffect_default" camera:title="@string/pref_camera_coloreffect_title" diff --git a/res/xml/video_preferences.xml b/res/xml/video_preferences.xml index f9949d4e1..0184bad1a 100644 --- a/res/xml/video_preferences.xml +++ b/res/xml/video_preferences.xml @@ -119,6 +119,15 @@ camera:singleIcon="@drawable/ic_eis_menu" camera:entryValues="@array/pref_camera_dis_entryvalues" /> <IconListPreference + camera:key="pref_camera_filter_mode_key" + camera:defaultValue="@string/pref_camera_coloreffect_default" + camera:title="@string/pref_camera_filter_mode_title" + camera:entries="@array/pref_camera_filter_mode_entries" + camera:singleIcon="@drawable/ic_settings_filter" + camera:icons="@array/pref_filter_mode_icons" + camera:largeIcons="@array/pref_filter_mode_icons" + camera:entryValues="@array/pref_camera_filter_mode_entryvalues" /> + <IconListPreference camera:key="pref_camera_coloreffect_key" camera:defaultValue="@string/pref_camera_coloreffect_default" camera:title="@string/pref_camera_coloreffect_title" diff --git a/src/com/android/camera/CameraSettings.java b/src/com/android/camera/CameraSettings.java index 407f879cf..180a46097 100644 --- a/src/com/android/camera/CameraSettings.java +++ b/src/com/android/camera/CameraSettings.java @@ -84,6 +84,7 @@ public class CameraSettings { public static final String KEY_PICTURE_FORMAT = "pref_camera_pictureformat_key"; public static final String KEY_ZSL = "pref_camera_zsl_key"; public static final String KEY_CAMERA_SAVEPATH = "pref_camera_savepath_key"; + public static final String KEY_FILTER_MODE = "pref_camera_filter_mode_key"; public static final String KEY_COLOR_EFFECT = "pref_camera_coloreffect_key"; public static final String KEY_FACE_DETECTION = "pref_camera_facedetection_key"; public static final String KEY_TOUCH_AF_AEC = "pref_camera_touchafaec_key"; diff --git a/src/com/android/camera/PhotoMenu.java b/src/com/android/camera/PhotoMenu.java index 83ceff0b6..2cb544e6e 100644 --- a/src/com/android/camera/PhotoMenu.java +++ b/src/com/android/camera/PhotoMenu.java @@ -1085,14 +1085,18 @@ public class PhotoMenu 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() { @@ -1188,6 +1192,7 @@ public class PhotoMenu extends MenuController } else if (event.getAction() == MotionEvent.ACTION_UP) { if (System.currentTimeMillis() - startTime < CLICK_THRESHOLD) { pref.setValueIndex(j); + changeFilterModeControlIcon(pref.getValue()); onSettingChanged(pref); for (View v1 : views) { v1.setBackground(null); @@ -1212,6 +1217,22 @@ public class PhotoMenu 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; 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); } |