Skip to content

refactor: screen acquisition lifecycle - #348

Merged
devmobasa merged 3 commits into
mainfrom
refactor/screen-acquisition-lifecycle
Aug 23, 2026
Merged

refactor: screen acquisition lifecycle#348
devmobasa merged 3 commits into
mainfrom
refactor/screen-acquisition-lifecycle

Conversation

@devmobasa

@devmobasa devmobasa commented Aug 23, 2026

Copy link
Copy Markdown
Owner

Summary

  • Centralize acquisition ownership and terminal routing for Freeze, Zoom, OCR, eyedropper, and screen- region capture.
  • Correlate asynchronous completions with their exact owner and acquisition ID.
  • Validate output, layout, image generation, scale, transform, and zoom identity before selectors use captured pixels.
  • Cancel stale OCR and eyedropper selections when their source changes.
  • Fix frozen acquisitions in release builds by moving a required state transition outside debug_assert!.

Why

Screen-image consumers previously maintained overlapping lifecycle and source-validity rules. This change gives them one fail-closed ownership model and a shared source-identity contract.

- correlate frozen and zoom completions with typed owners and IDs
- preserve OCR and eyedropper capture ownership across modal transitions
- fail closed on stale or mismatched capture terminals
- add native-pixel geometry and PNG primitives for region capture
@devmobasa devmobasa changed the title Refactor/screen acquisition lifecycle refactor: screen acquisition lifecycle Aug 23, 2026
@devmobasa
devmobasa merged commit ed46a28 into main Aug 23, 2026
2 checks passed
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.

1 participant