diff options
author | Mangesh Ghiware <mghiware@google.com> | 2012-10-08 23:55:38 -0700 |
---|---|---|
committer | Mangesh Ghiware <mghiware@google.com> | 2012-10-09 07:45:22 -0700 |
commit | 91af43b868a77560bbb43d2714d5685caa179fc7 (patch) | |
tree | 2fcb34951660a7416d8e122b637c0058c5312ffb /src/com | |
parent | 0f9ebfc80f2db3bcb0ecee9b77418d7d81c5956e (diff) | |
download | android_packages_apps_Snap-91af43b868a77560bbb43d2714d5685caa179fc7.tar.gz android_packages_apps_Snap-91af43b868a77560bbb43d2714d5685caa179fc7.tar.bz2 android_packages_apps_Snap-91af43b868a77560bbb43d2714d5685caa179fc7.zip |
Fix sharing as photo option for 360 degree panorama
Bug: 7310190
Bug: 7302023
Also, fix disappearing sharing menu item in action bar.
Change-Id: Id555426cce5f25d21405c885b6f7331d238cdd07
Diffstat (limited to 'src/com')
-rw-r--r-- | src/com/android/gallery3d/app/GalleryActionBar.java | 41 | ||||
-rw-r--r-- | src/com/android/gallery3d/app/PhotoPage.java | 12 |
2 files changed, 28 insertions, 25 deletions
diff --git a/src/com/android/gallery3d/app/GalleryActionBar.java b/src/com/android/gallery3d/app/GalleryActionBar.java index 620add631..4b9ef53ce 100644 --- a/src/com/android/gallery3d/app/GalleryActionBar.java +++ b/src/com/android/gallery3d/app/GalleryActionBar.java @@ -380,8 +380,6 @@ public class GalleryActionBar implements OnNavigationListener { } private Menu mActionBarMenu; - private MenuItem mSharePanoramaMenuItem; - private MenuItem mShareMenuItem; private ShareActionProvider mSharePanoramaActionProvider; private ShareActionProvider mShareActionProvider; @@ -389,15 +387,21 @@ public class GalleryActionBar implements OnNavigationListener { mActivity.getMenuInflater().inflate(menuRes, menu); mActionBarMenu = menu; - mSharePanoramaMenuItem = menu.findItem(R.id.action_share_panorama); - mSharePanoramaActionProvider = (ShareActionProvider) - mSharePanoramaMenuItem.getActionProvider(); - mSharePanoramaActionProvider.setShareHistoryFileName("panorama_share_history.xml"); + MenuItem item = menu.findItem(R.id.action_share_panorama); + if (item != null) { + mSharePanoramaActionProvider = (ShareActionProvider) + item.getActionProvider(); + mSharePanoramaActionProvider + .setShareHistoryFileName("panorama_share_history.xml"); + } - mShareMenuItem = menu.findItem(R.id.action_share); - mShareActionProvider = (ShareActionProvider) - mShareMenuItem.getActionProvider(); - mShareActionProvider.setShareHistoryFileName("share_history.xml"); + item = menu.findItem(R.id.action_share); + if (item != null) { + mShareActionProvider = (ShareActionProvider) + item.getActionProvider(); + mShareActionProvider + .setShareHistoryFileName("share_history.xml"); + } } public Menu getMenu() { @@ -405,23 +409,10 @@ public class GalleryActionBar implements OnNavigationListener { } public void setShareIntents(Intent sharePanoramaIntent, Intent shareIntent) { - // if panorama sharing is enabled, rename share to share as photo, - // and move it to overflow - if (mSharePanoramaMenuItem != null) { - if (sharePanoramaIntent != null) { - mActivity.invalidateOptionsMenu(); - mShareMenuItem.setShowAsAction(MenuItem.SHOW_AS_ACTION_NEVER); - mShareMenuItem.setTitle( - mContext.getResources().getString(R.string.share_as_photo)); - } else { - mSharePanoramaMenuItem.setVisible(false); - mShareMenuItem.setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM); - mShareMenuItem.setTitle( - mContext.getResources().getString(R.string.share)); - } + if (mSharePanoramaActionProvider != null) { mSharePanoramaActionProvider.setShareIntent(sharePanoramaIntent); } - if (mShareMenuItem != null) { + if (mShareActionProvider != null) { mShareActionProvider.setShareIntent(shareIntent); } } diff --git a/src/com/android/gallery3d/app/PhotoPage.java b/src/com/android/gallery3d/app/PhotoPage.java index 5c9c598ae..4537eafb3 100644 --- a/src/com/android/gallery3d/app/PhotoPage.java +++ b/src/com/android/gallery3d/app/PhotoPage.java @@ -645,6 +645,18 @@ public class PhotoPage extends ActivityState implements supportedOperations &= ~MediaObject.SUPPORT_EDIT; } MenuExecutor.updateMenuOperation(menu, supportedOperations); + if ((supportedOperations & MediaObject.SUPPORT_PANORAMA360) != 0) { + mActivity.invalidateOptionsMenu(); + item = menu.findItem(R.id.action_share); + item.setShowAsAction(MenuItem.SHOW_AS_ACTION_NEVER); + item.setTitle( + mActivity.getResources().getString(R.string.share_as_photo)); + } else if ((supportedOperations & MediaObject.SUPPORT_SHARE) != 0) { + item = menu.findItem(R.id.action_share); + item.setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM); + item.setTitle( + mActivity.getResources().getString(R.string.share)); + } } private boolean canDoSlideShow() { |