diff --git a/app/soapbox/components/emoji-button-wrapper.tsx b/app/soapbox/components/emoji-button-wrapper.tsx index 0afdba85f..d85d22627 100644 --- a/app/soapbox/components/emoji-button-wrapper.tsx +++ b/app/soapbox/components/emoji-button-wrapper.tsx @@ -83,10 +83,7 @@ const EmojiButtonWrapper: React.FC = ({ statusId, children if (ownAccount) { dispatch(simpleEmojiReact(status, emoji)); } else { - dispatch(openModal('UNAUTHORIZED', { - action: 'FAVOURITE', - ap_id: status.url, - })); + handleUnauthorized(); } setVisible(false); @@ -96,10 +93,14 @@ const EmojiButtonWrapper: React.FC = ({ statusId, children const meEmojiReact = getReactForStatus(status, soapboxConfig.allowedEmoji) || '👍'; if (isUserTouching()) { - if (visible) { - handleReact(meEmojiReact); + if (ownAccount) { + if (visible) { + handleReact(meEmojiReact); + } else { + setVisible(true); + } } else { - setVisible(true); + handleUnauthorized(); } } else { handleReact(meEmojiReact); @@ -109,6 +110,13 @@ const EmojiButtonWrapper: React.FC = ({ statusId, children e.stopPropagation(); }; + const handleUnauthorized = () => { + dispatch(openModal('UNAUTHORIZED', { + action: 'FAVOURITE', + ap_id: status.url, + })); + }; + // const handleUnfocus: React.EventHandler = () => { // setFocused(false); // };