diff --git a/packages/pl-fe/src/components/status-action-bar.tsx b/packages/pl-fe/src/components/status-action-bar.tsx index 5635c34fb..6aba10576 100644 --- a/packages/pl-fe/src/components/status-action-bar.tsx +++ b/packages/pl-fe/src/components/status-action-bar.tsx @@ -569,33 +569,6 @@ const EmojiPickerButton: React.FC ); }; -const ShareButton: React.FC> = ({ - status, - statusActionButtonTheme, -}) => { - const intl = useIntl(); - - const handleShareClick = () => { - navigator.share({ - text: status.search_index, - url: status.uri, - }).catch((e) => { - if (e.name !== 'AbortError') console.error(e); - }); - }; - - const canShare = ('share' in navigator) && (status.visibility === 'public' || status.visibility === 'group'); - - return canShare && ( - - ); -}; - interface IMenuButton extends IActionButton { expandable?: boolean; fromBookmarks?: boolean; @@ -779,6 +752,15 @@ const MenuButton: React.FC = ({ copy(uri); }; + const handleShare = () => { + navigator.share({ + text: status.search_index, + url: status.uri, + }).catch((e) => { + if (e.name !== 'AbortError') console.error(e); + }); + }; + const handleDeleteStatus: React.EventHandler = (e) => { dispatch(deleteStatusModal(intl, status.id)); }; @@ -848,11 +830,19 @@ const MenuButton: React.FC = ({ icon: require('@phosphor-icons/core/regular/clipboard.svg'), }); + if ('share' in navigator) { + menu.push({ + text: intl.formatMessage(messages.share), + action: handleShare, + icon: require('@phosphor-icons/core/regular/export.svg'), + }); + } + if (features.embeds && localAccount) { menu.push({ text: intl.formatMessage(messages.embed), action: handleEmbed, - icon: require('@phosphor-icons/core/regular/export.svg'), + icon: require('@phosphor-icons/core/regular/code-simple.svg'), }); } } @@ -1231,11 +1221,6 @@ const StatusActionBar: React.FC = ({ me={me} /> - -