diff options
author | Jing (Mia) Wang <kaiyiz@codeaurora.org> | 2014-12-20 15:17:59 +0800 |
---|---|---|
committer | Jing (Mia) Wang <kaiyiz@codeaurora.org> | 2014-12-20 15:17:59 +0800 |
commit | 03e1f97889d183f547deef8bbcd362d40a7c23f2 (patch) | |
tree | fd3bf7e4ac3d669f856b2f62ea3c1950dbe06ebd /src | |
parent | 5c3a14e425dabf710b58c87c44a368469cbb5baf (diff) | |
download | android_packages_apps_Snap-03e1f97889d183f547deef8bbcd362d40a7c23f2.tar.gz android_packages_apps_Snap-03e1f97889d183f547deef8bbcd362d40a7c23f2.tar.bz2 android_packages_apps_Snap-03e1f97889d183f547deef8bbcd362d40a7c23f2.zip |
SnapdragonCamera: Fix app crash when camera not support scenemode
The front camera is not support set scenemode, the layout for show
scenemode isn't initialize and NPE happened, which lead to app crash.
The scene mode button shouldn't display when scene mode is not support.
CRs-Fixed: 773391
Change-Id: I9c65fb5b65ecb276660b3281a5a591f7a3f2a134
Diffstat (limited to 'src')
-rw-r--r-- | src/com/android/camera/PhotoMenu.java | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/src/com/android/camera/PhotoMenu.java b/src/com/android/camera/PhotoMenu.java index c8522ee94..1568c32c0 100644 --- a/src/com/android/camera/PhotoMenu.java +++ b/src/com/android/camera/PhotoMenu.java @@ -671,7 +671,11 @@ public class PhotoMenu extends MenuController public void initSceneModeButton(View button) { button.setVisibility(View.INVISIBLE); - updateSceneModeIcon(); + final IconListPreference pref = (IconListPreference) mPreferenceGroup + .findPreference(CameraSettings.KEY_SCENE_MODE); + if (pref == null) + return; + updateSceneModeIcon(pref); button.setVisibility(View.VISIBLE); button.setOnClickListener(new OnClickListener() { @Override @@ -774,7 +778,7 @@ public class PhotoMenu extends MenuController if (System.currentTimeMillis() - startTime < CLICK_THRESHOLD) { pref.setValueIndex(j); onSettingChanged(pref); - updateSceneModeIcon(); + updateSceneModeIcon(pref); for (View v1 : views) { v1.setBackgroundResource(R.drawable.scene_mode_view_border); } @@ -799,11 +803,7 @@ public class PhotoMenu extends MenuController mPreviewMenu = basic; } - public void updateSceneModeIcon() { - final IconListPreference pref = (IconListPreference) mPreferenceGroup - .findPreference(CameraSettings.KEY_SCENE_MODE); - if (pref == null) - return; + public void updateSceneModeIcon(IconListPreference pref) { ImageView iv = (ImageView) ((FrameLayout) mSceneModeSwitcher).getChildAt(0); int[] thumbnails = pref.getThumbnailIds(); int ind = pref.getCurrentIndex(); |