diff --git a/shell/modules/ScreenCapture.qml b/shell/modules/ScreenCapture.qml index 7c0c677..c45e68e 100644 --- a/shell/modules/ScreenCapture.qml +++ b/shell/modules/ScreenCapture.qml @@ -23,22 +23,27 @@ PanelWindow { id: _capture anchors.fill: parent captureSource: root.screen + visible: false } Connections { target: S.ScreenshotService function onCaptureRequested() { _capture.captureFrame(); + _grabTimer.start(); } } - Connections { - target: _capture - function onHasContentChanged() { - if (_capture.hasContent) - _capture.grabToImage(result => { - S.ScreenshotService.store(root.screen.name, result); - }); + // Brief delay for the frame to arrive, then grab + Timer { + id: _grabTimer + interval: 50 + onTriggered: { + _capture.visible = true; + _capture.grabToImage(result => { + _capture.visible = false; + S.ScreenshotService.store(root.screen.name, result); + }); } } }