diff --git a/src/cloud/lib/hooks/sidebar/useCloudSidebarTree.tsx b/src/cloud/lib/hooks/sidebar/useCloudSidebarTree.tsx index aaee5fd9e3..9b6358891b 100644 --- a/src/cloud/lib/hooks/sidebar/useCloudSidebarTree.tsx +++ b/src/cloud/lib/hooks/sidebar/useCloudSidebarTree.tsx @@ -1,6 +1,7 @@ import React, { useCallback, useMemo } from 'react' import { mdiCog, + mdiContentCopy, mdiFileDocumentOutline, mdiTextBoxPlus, mdiFolderPlusOutline, @@ -13,6 +14,7 @@ import { mdiTrashCanOutline, mdiViewDashboard, } from '@mdi/js' +import copy from 'copy-to-clipboard' import { FoldingProps } from '../../../../design/components/atoms/FoldingWrapper' import { SidebarDragState } from '../../../../design/lib/dnd' import { @@ -481,6 +483,12 @@ export function useCloudSidebarTree() { clearDragTransferData(event) }, contextControls: [ + { + type: MenuTypes.Normal, + icon: mdiContentCopy, + label: translate(lngKeys.GeneralCopyTheLink), + onClick: () => copy(href), + }, { type: MenuTypes.Normal, icon: doc.bookmarked ? mdiStar : mdiStarOutline, @@ -515,6 +523,14 @@ export function useCloudSidebarTree() { toggleDocBookmark(doc.teamId, doc.id, doc.bookmarked), }, ], + contextControls: [ + { + type: MenuTypes.Normal, + icon: mdiContentCopy, + label: translate(lngKeys.GeneralCopyTheLink), + onClick: () => copy(href), + }, + ], } items.set(docId, { diff --git a/src/mobile/lib/sidebar/useNavigatorTree.tsx b/src/mobile/lib/sidebar/useNavigatorTree.tsx index 737201ca58..0ab61022ae 100644 --- a/src/mobile/lib/sidebar/useNavigatorTree.tsx +++ b/src/mobile/lib/sidebar/useNavigatorTree.tsx @@ -1,6 +1,7 @@ import React, { useCallback, useMemo, MouseEvent } from 'react' import { mdiCog, + mdiContentCopy, mdiFileDocumentOutline, mdiFilePlusOutline, mdiFolderPlusOutline, @@ -14,6 +15,7 @@ import { mdiWeb, mdiDotsHorizontal, } from '@mdi/js' +import copy from 'copy-to-clipboard' import { FoldingProps } from '../../../design/components/atoms/FoldingWrapper' import { SidebarTreeSortingOrder } from '../../../design/lib/sidebar' import { @@ -401,6 +403,12 @@ export function useNavigatorTree() { currentUserIsCoreMember ? { contextControls: [ + { + type: MenuTypes.Normal, + icon: mdiContentCopy, + label: 'Copy the link', + onClick: () => copy(href), + }, { type: MenuTypes.Normal, icon: doc.bookmarked ? mdiStar : mdiStarOutline, @@ -435,6 +443,14 @@ export function useNavigatorTree() { toggleDocBookmark(doc.teamId, doc.id, doc.bookmarked), }, ], + contextControls: [ + { + type: MenuTypes.Normal, + icon: mdiContentCopy, + label: 'Copy the link', + onClick: () => copy(href), + }, + ], } items.set(docId, {