diff --git a/surfsense_web/components/assistant-ui/thread.tsx b/surfsense_web/components/assistant-ui/thread.tsx index 6862662f2..e7ae2f471 100644 --- a/surfsense_web/components/assistant-ui/thread.tsx +++ b/surfsense_web/components/assistant-ui/thread.tsx @@ -12,11 +12,11 @@ import { AlertCircle, ArrowDownIcon, ArrowUpIcon, + Camera, ChevronDown, ChevronUp, Clipboard, Dot, - Camera, Globe, Plus, Settings2, @@ -803,9 +803,11 @@ const ComposerAction: FC = ({ isBlockedByOtherUser = false isComposerTextEmpty && mentionedDocuments.length === 0 && pendingScreenImages.length === 0; const handleScreenCapture = useCallback(async () => { - const url = await captureDisplayToPngDataUrl(); + const url = electronAPI?.captureFullScreen + ? await electronAPI.captureFullScreen() + : await captureDisplayToPngDataUrl(); if (url) setPendingScreenImages((prev) => [...prev, url]); - }, [setPendingScreenImages]); + }, [electronAPI, setPendingScreenImages]); const { data: userConfigs } = useAtomValue(newLLMConfigsAtom); const { data: globalConfigs } = useAtomValue(globalNewLLMConfigsAtom); @@ -1241,20 +1243,17 @@ const ComposerAction: FC = ({ isBlockedByOtherUser = false )}
- {/* Electron: native shortcut → pending images; skip in-webview getDisplayMedia. */} - {!electronAPI && ( - void handleScreenCapture()} - > - - - )} + void handleScreenCapture()} + > + + !thread.isRunning}>