diff --git a/apps/mobile/src/modules/entry-content/EntryContentHeaderRightActions.tsx b/apps/mobile/src/modules/entry-content/EntryContentHeaderRightActions.tsx index 056e287b3..7fe279fd0 100644 --- a/apps/mobile/src/modules/entry-content/EntryContentHeaderRightActions.tsx +++ b/apps/mobile/src/modules/entry-content/EntryContentHeaderRightActions.tsx @@ -40,6 +40,7 @@ type ActionItem = { active?: boolean iconColor?: string isCheckbox?: boolean + inMenu?: boolean } export function EntryContentHeaderRightActions(props: HeaderRightActionsProps) { @@ -170,6 +171,7 @@ const HeaderRightActionsImpl = ({ onPress: toggleReadability, active: showReadability, isCheckbox: true, + inMenu: true, }, !showAISummarySetting && { key: "GenerateSummary", @@ -179,6 +181,7 @@ const HeaderRightActionsImpl = ({ onPress: toggleAISummary, active: showAISummary, isCheckbox: true, + inMenu: true, }, !showAITranslationSetting && { key: "ShowTranslation", @@ -188,6 +191,7 @@ const HeaderRightActionsImpl = ({ onPress: toggleAITranslation, active: showTranslation, isCheckbox: true, + inMenu: true, }, { key: "Share", @@ -196,6 +200,20 @@ const HeaderRightActionsImpl = ({ iconIOS: { name: "square.and.arrow.up" }, onPress: handleShare, }, + { + key: "CopyLink", + title: t("operation.copy_link"), + iconIOS: { name: "link" }, + onPress: handleCopyLink, + inMenu: true, + }, + { + key: "OpenInBrowser", + title: "Open in Browser", + iconIOS: { name: "safari" }, + onPress: handleOpenInBrowser, + inMenu: true, + }, ].filter(Boolean) as ActionItem[] return ( @@ -211,20 +229,22 @@ const HeaderRightActionsImpl = ({ }))} className="absolute right-[32px] z-10 flex-row gap-2" > - {actionItems.map( - (item) => - item && ( - - {item.icon} - - ), - )} + {actionItems + .filter((item) => !item.inMenu) + .map( + (item) => + item && ( + + {item.icon} + + ), + )} @@ -258,14 +278,27 @@ const HeaderRightActionsImpl = ({ )} )} - - {t("operation.copy_link")} - - - - Open in Browser - - + {actionItems + .filter((item) => item?.inMenu) + .map( + (item) => + item && + (item.isCheckbox ? ( + + {item.title} + + + ) : ( + + {item.title} + + + )), + )}