summaryrefslogtreecommitdiffstats
path: root/src/com
diff options
context:
space:
mode:
authorMangesh Ghiware <mghiware@google.com>2012-10-08 23:55:38 -0700
committerMangesh Ghiware <mghiware@google.com>2012-10-09 07:45:22 -0700
commit91af43b868a77560bbb43d2714d5685caa179fc7 (patch)
tree2fcb34951660a7416d8e122b637c0058c5312ffb /src/com
parent0f9ebfc80f2db3bcb0ecee9b77418d7d81c5956e (diff)
downloadandroid_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.java41
-rw-r--r--src/com/android/gallery3d/app/PhotoPage.java12
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() {