Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 71ce96fc authored by Mangesh Ghiware's avatar Mangesh Ghiware
Browse files

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
parent 3a1279f1
Loading
Loading
Loading
Loading
+16 −25
Original line number Diff line number Diff line
@@ -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);
        MenuItem item = menu.findItem(R.id.action_share_panorama);
        if (item != null) {
            mSharePanoramaActionProvider = (ShareActionProvider)
            mSharePanoramaMenuItem.getActionProvider();
        mSharePanoramaActionProvider.setShareHistoryFileName("panorama_share_history.xml");
                item.getActionProvider();
            mSharePanoramaActionProvider
                .setShareHistoryFileName("panorama_share_history.xml");
        }

        mShareMenuItem = menu.findItem(R.id.action_share);
        item = menu.findItem(R.id.action_share);
        if (item != null) {
            mShareActionProvider = (ShareActionProvider)
            mShareMenuItem.getActionProvider();
        mShareActionProvider.setShareHistoryFileName("share_history.xml");
                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);
        }
    }
+12 −0
Original line number Diff line number Diff line
@@ -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() {