diff --git a/pages/info/debug.tsx b/pages/info/debug.tsx index d451a1507..d2fe4b502 100644 --- a/pages/info/debug.tsx +++ b/pages/info/debug.tsx @@ -89,7 +89,7 @@ function AppDebug() { Is, BrowserLang, isPWA: isPwa(), - supportsClipboardPaste: supportsClipboardRead, + supportsClipboardPaste: supportsClipboardRead(), supportsScreenCapture, }; const cProduct = { diff --git a/src/apps/chat/components/composer/Composer.tsx b/src/apps/chat/components/composer/Composer.tsx index 9087ec7bf..cbb038ccb 100644 --- a/src/apps/chat/components/composer/Composer.tsx +++ b/src/apps/chat/components/composer/Composer.tsx @@ -609,7 +609,7 @@ export function Composer(props: { const composerShortcuts: ShortcutObject[] = []; if (showChatAttachments) { composerShortcuts.push({ key: 'f', ctrl: true, shift: true, action: () => openFileForAttaching(true, handleAttachFiles), description: 'Attach File' }); - if (supportsClipboardRead) + if (supportsClipboardRead()) composerShortcuts.push({ key: 'v', ctrl: true, shift: true, action: attachAppendClipboardItems, description: 'Attach Clipboard' }); } if (recognitionState.isActive) { @@ -743,7 +743,7 @@ export function Composer(props: { {/* Responsive Paste button */} - {supportsClipboardRead && + {supportsClipboardRead() && } @@ -769,7 +769,7 @@ export function Composer(props: { {/* Responsive Paste button */} - {supportsClipboardRead && } + {supportsClipboardRead() && } {/* Responsive Screen Capture button */} {labsAttachScreenCapture && supportsScreenCapture && } diff --git a/src/common/util/clipboardUtils.ts b/src/common/util/clipboardUtils.ts index 77015feab..6ad857bf4 100644 --- a/src/common/util/clipboardUtils.ts +++ b/src/common/util/clipboardUtils.ts @@ -54,8 +54,9 @@ export function copyBlobPromiseToClipboard(mimeType: string, blobPromise: Promis }); } -// NOTE: this could be implemented in a platform-agnostic manner with !!.read, but we call it out here for clarity -export const supportsClipboardRead = !Is.Browser.Firefox; +export function supportsClipboardRead() { + return !Is.Browser.Firefox; +} export async function getClipboardItems(): Promise { if (!isBrowser || !window.navigator.clipboard?.read)