From 86294c676aeaa504f63e02fdbec181208e04f961 Mon Sep 17 00:00:00 2001 From: Andrew Pareles Date: Wed, 4 Dec 2024 23:48:37 -0800 Subject: [PATCH] fix copy --- .../react/src/markdown/MarkdownRender.tsx | 16 +++++++--------- .../browser/react/src/sidebar-tsx/Sidebar.tsx | 2 +- .../contrib/void/browser/registerSidebar.ts | 4 ++++ 3 files changed, 12 insertions(+), 10 deletions(-) diff --git a/src/vs/workbench/contrib/void/browser/react/src/markdown/MarkdownRender.tsx b/src/vs/workbench/contrib/void/browser/react/src/markdown/MarkdownRender.tsx index e17beb37..428fa5b5 100644 --- a/src/vs/workbench/contrib/void/browser/react/src/markdown/MarkdownRender.tsx +++ b/src/vs/workbench/contrib/void/browser/react/src/markdown/MarkdownRender.tsx @@ -16,6 +16,9 @@ const CodeButtonsOnHover = ({ diffRepr: text }: { diffRepr: string }) => { const [copyButtonState, setCopyButtonState] = useState(CopyButtonState.Copy) const inlineDiffService = useService('inlineDiffService') + const clipboardService = useService('clipboardService') + + useEffect(() => { if (copyButtonState !== CopyButtonState.Copy) { setTimeout(() => { @@ -25,15 +28,10 @@ const CodeButtonsOnHover = ({ diffRepr: text }: { diffRepr: string }) => { }, [copyButtonState]) const onCopy = useCallback(() => { - navigator.clipboard.writeText(text).then( - () => { - setCopyButtonState(CopyButtonState.Copied) - }, - () => { - setCopyButtonState(CopyButtonState.Error) - } - ) - }, [text]) + clipboardService.writeText(text) + .then(() => { setCopyButtonState(CopyButtonState.Copied) }) + .catch(() => { setCopyButtonState(CopyButtonState.Error) }) + }, [text, clipboardService]) return <>