Skip to content

Add screenshot post-capture actions - #1897

Closed
ryanr14 wants to merge 11 commits into
CapSoftware:mainfrom
ryanr14:codex/cap-screenshot-post-capture-actions
Closed

ryanr14 wants to merge 11 commits into
CapSoftware:mainfrom
ryanr14:codex/cap-screenshot-post-capture-actions

Conversation

@ryanr14

@ryanr14 ryanr14 commented Jun 7, 2026 •

Copy link
Copy Markdown

Summary

  • Align screenshot capture with a CleanShot-style flow: Cap saves a screenshot PNG according to a separate save-destination setting, then runs the configured post-capture action.
  • Add Save screenshots to settings for Desktop, chosen folder, or app library only. Desktop is the default, and choosing a folder can open the folder picker immediately.
  • Keep After a screenshot focused on follow-up actions: ask every time, open editor, show overlay, copy image, copy file path, copy Markdown image, reveal in Finder, upload link, or do nothing.
  • Make copy-path, Markdown, and reveal actions target the exported PNG when one exists, with the internal original.png as the fallback. Editor, upload, and image clipboard actions still use the internal screenshot source.
  • Preserve hidden legacy save / saveToFolder action handling for existing stores and deeplinks, and normalize old settings into the new save-destination model.

Validation

  • cargo fmt --all
  • cargo test -p cap-desktop screenshot_post_capture::tests --lib
  • cargo test -p cap-desktop general_settings::tests --lib
  • cargo test -p cap-desktop deeplink_actions::tests --lib
  • pnpm --dir apps/desktop exec vitest run src/utils/general-settings.test.ts
  • pnpm exec biome check apps/desktop/src/utils/tauri.ts "apps/desktop/src/routes/(window-chrome)/settings/general.tsx" apps/desktop/src/utils/general-settings.ts apps/desktop/src/utils/general-settings.test.ts
  • pnpm --dir apps/desktop exec tsc -p tsconfig.json --noEmit
  • cargo check -p cap-desktop --lib

Note: local Rust commands require the ignored apps/desktop/src-tauri/binaries/cap-cli-aarch64-apple-darwin sidecar to satisfy Tauri resource validation; I restored it from the already-built release binary for test runs and removed it afterward.

@sheeesh3

sheeesh3 commented Oct 8, 2026

Copy link
Copy Markdown

Thanks for working on this. From the description, the "After a screenshot" setting sounds like it would cover what's asked in #1860. To be clear, I haven't reviewed the code itself.

Quick question: does the "show overlay" option show a small corner preview like the one after recordings, which opens the editor when clicked? That's the behaviour I'm hoping for.

Is anything blocking this from leaving draft? If you'd like a hand, I'm happy to help with testing on macOS or with any remaining work.

@richiemcilroy

Copy link
Copy Markdown
Member

Thanks so much for this contribution, @ryanr14! Cap's desktop app has now fully moved from Tauri to our new native GPUI app (apps/desktop-gpui), which ships as Cap from 0.6.1 on macOS, Windows and Linux. This PR only changes the old Tauri app (apps/desktop), so it no longer affects what we ship, and I'm closing it. If the change still makes sense for the GPUI app, we'd love a PR against apps/desktop-gpui. Really appreciate the time you put into this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants