diff options
-rw-r--r-- | src/com/android/gallery3d/app/PhotoPage.java | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/src/com/android/gallery3d/app/PhotoPage.java b/src/com/android/gallery3d/app/PhotoPage.java index 760c96d58..86e62a318 100644 --- a/src/com/android/gallery3d/app/PhotoPage.java +++ b/src/com/android/gallery3d/app/PhotoPage.java @@ -141,6 +141,7 @@ public class PhotoPage extends ActivityState implements private volatile boolean mActionBarAllowed = true; private GalleryActionBar mActionBar; private boolean mIsMenuVisible; + private boolean mHaveImageEditor; private PhotoPageBottomControls mBottomControls; private MediaItem mCurrentPhoto = null; private MenuExecutor mMenuExecutor; @@ -558,7 +559,7 @@ public class PhotoPage extends ActivityState implements int supportedOperations = mCurrentPhoto.getSupportedOperations(); if (mSecureAlbum != null) { supportedOperations &= MediaObject.SUPPORT_DELETE; - } else if (!GalleryUtils.isEditorAvailable(mActivity, "image/*")) { + } else if (!mHaveImageEditor) { supportedOperations &= ~MediaObject.SUPPORT_EDIT; } MenuExecutor.updateMenuOperation(menu, supportedOperations); @@ -726,6 +727,7 @@ public class PhotoPage extends ActivityState implements @Override protected boolean onCreateActionBar(Menu menu) { mActionBar.createActionBarMenu(R.menu.photo, menu); + mHaveImageEditor = GalleryUtils.isEditorAvailable(mActivity, "image/*"); updateMenuOperations(); updateTitle(); return true; @@ -1199,6 +1201,11 @@ public class PhotoPage extends ActivityState implements mActionBar.hide(); mActivity.getGLRoot().setLightsOutMode(true); } + boolean haveImageEditor = GalleryUtils.isEditorAvailable(mActivity, "image/*"); + if (haveImageEditor != mHaveImageEditor) { + mHaveImageEditor = haveImageEditor; + updateMenuOperations(); + } mHasActivityResult = false; mHandler.sendEmptyMessageDelayed(MSG_UNFREEZE_GLROOT, UNFREEZE_GLROOT_TIMEOUT); |