Skip to content

capscr v0.5.45

Choose a tag to compare

@github-actions github-actions released this 18 Jul 15:35

added

  • Linux support. capscr now runs on Linux (X11 and Wayland), shipped as deb, rpm, and AppImage packages, with the auto-updater tracking the AppImage and walking deb/rpm installs through their native update. what carries over:

    • the whole still-capture pipeline: the freeze-frame selector (region drag, window pick, alt+click color picker, shift aspect snap, ctrl fine-tune, loupe) across every monitor, all capture modes, history, uploads, the editor, and pinning. on X11, KDE, and wlroots the selector picks windows itself; GNOME routes window mode through the portal's own picker
    • region GIF and MP4 recording on X11 and Wayland with the same wall-clock playback guarantees as Windows, and system audio off the PulseAudio/PipeWire monitor of the default output
    • global hotkeys everywhere: X11 grabs, the GlobalShortcuts portal on Wayland, and an opt-in evdev fallback for sessions with neither; the tray menu and capscr --jump work regardless
    • Wayland pixels come from the best source the compositor offers (KWin ScreenShot2, ext-image-copy-capture, wlr-screencopy, or the screenshot portal), including sessions running without XWayland; the recording bar and pins stay above other windows via layer-shell or plasma-shell
    • upload credentials live in the system keyring (freedesktop Secret Service) instead of on disk; OCR runs through tesseract; copying a capture as a file uses text/uri-list; capture and upload cues play through the system audio stack; the one-click ffmpeg download fetches a static build verified against a pinned sha256
    • the few remaining platform boundaries (HDR capture, GNOME keep-above and tray) are listed in docs/platform-limits.md, with capscr --wayland-diag reporting which apply to a given session
  • linux CI: the test suite and clippy now run on ubuntu alongside the windows suite, with the capture path exercised against a real X server

  • a copy detected text (OCR) post-action: bind it to a still-capture task and capscr runs OCR on the shot (the built-in Windows engine, tesseract on Linux) and drops the recognized text straight onto your clipboard — no file saved, no editor round-trip. (OCR was already reachable from the history grid; this makes it a one-step capture action.)

  • an optional per-task pre-capture delay: each still-capture task can set its own delay (blank uses the global one), so a timed task for catching a menu or tooltip can sit alongside your instant hotkeys instead of the delay being all-or-nothing.

  • HDR capture on GNOME 50+: fullscreen captures of a monitor running HDR now pull a 10-bit PQ frame off the screencast portal and go through the same tonemap (and optional HDR-preserved PNG) pipeline as Windows, instead of settling for the compositor's 8-bit screenshot; the hdr settings pane and history filter appear on sessions that support it

  • a GNOME companion extension (installable from Settings → general on a GNOME session) that closes the three GNOME gaps at once: window-mode capture picks windows in capscr's own overlay instead of GNOME's portal dialog, the recording bar and pinned screenshots stay above fullscreen windows and land where they should, and a top-bar capture menu stands in for the missing system tray

  • linux recordings show the same blinking red frame around the recorded region as Windows, sitting just outside the captured pixels and passing clicks through; it appears on X11, KDE, wlroots compositors, and GNOME with the companion extension

  • on Plasma 6.7+, the recording control bar is excluded from capture the same way it is on Windows: KWin removes it from screenshots and recordings compositor-side, so it sits below or above the region and tucks inside it when there is no room, never appearing in the frames or fleeing to another monitor

fixed

  • a linux recording's first frame no longer catches the region selector mid-teardown (its dim layer and size label could land in frame one); the first grab now waits out the compositor's close animation
  • the HDR-preserved PNG post-action actually writes an HDR PNG again: the encoder expected 16-bit pixel data while every capture source delivers packed 10-bit, so it silently fell back to SDR output every time
  • pinned screenshots no longer vanish from captures on Plasma 6.6.1+ — KWin started hiding all of a screenshotting app's own windows by default, and capscr now asks it not to, keeping pins in your shots like every other window
  • when fast GDI capture fails on Windows, the xcap fallback now resolves the monitor by position instead of an id that the two enumerators never shared