Skip to content

Releases: StevenACZ/PeekOCR

πŸ‘οΈ PeekOCR v1.8.1 - Light Mode Permission Polish

25 Apr 02:25

Choose a tag to compare

πŸ’‘ Light Mode Permission Polish Β· πŸ›‘οΈ Guided Setup Refinement

This patch release polishes the permission guidance introduced in v1.8.0 so every onboarding surface stays readable and calm in both Light Mode and Dark Mode.

πŸ’‘ Light/Dark permission guidance

  • Permission guidance surfaces now render cleanly in Light Mode and Dark Mode.
  • The floating System Settings assistant now uses adaptive AppKit colors instead of dark-only material assumptions.
  • The draggable PeekOCR app card resolves dynamic system colors against the active macOS appearance.
  • The missing-permissions requirements window, menu bar reminder, and Settings permission rows now use contrast-aware fills and borders.
  • The requirements window activation button has improved contrast across permission accent colors.

πŸ› οΈ Technical Highlights

  • Added shared PermissionAppearance helpers for AppKit permission overlays.
  • Kept the permission UI docs and project guide aligned with the adaptive appearance behavior.
  • Version bumped to 1.8.1 with build 5.

πŸ“¦ Installation

  1. Download PeekOCR-v1.8.1.dmg
  2. Open the DMG
  3. Drag PeekOCR to Applications
  4. First launch: right-click Open (not double-click) to bypass Gatekeeper, then confirm
  5. If needed, use the in-app permission flow to enable Screen Recording and Accessibility

πŸ’» Requirements

  • macOS 13.0 (Ventura) or later
  • Apple Silicon or Intel Mac

Full changelog: v1.8.0...v1.8.1

πŸ‘οΈ PeekOCR v1.8.0 - Guided Permission Onboarding

20 Apr 01:55

Choose a tag to compare

πŸ›‘οΈ Guided Permission Onboarding Β· βœ… Live Status Feedback

This release makes PeekOCR feel much more polished the first time you install it: permissions are now explained through explicit in-app UI, guided System Settings navigation, and live visual feedback instead of launch-time interruptions.

πŸ›‘οΈ Guided permission onboarding

  • PeekOCR no longer interrupts users with permission prompts on launch.
  • Missing permissions now surface through explicit UI: the menu bar reminder banner, Settings activation rows, or the dedicated Missing Permissions window when capture is blocked.
  • Activating a permission opens the correct System Settings pane and shows a floating helper aligned with the settings window.
  • Capture attempts that need Screen Recording now stop cleanly and route through onboarding instead of failing silently.

βœ… Live permission status

  • The Missing Permissions window now keeps a fixed size and always shows both required permissions: Screen Recording and Accessibility.
  • Mixed states are now clear: if one permission is already active, it stays visible with a green success state instead of disappearing and shifting the layout.
  • The requirements window stays open while setup continues, so users can return from System Settings and immediately see updated status.
  • Accessibility-backed hotkeys refresh when the app becomes active again after the permission is enabled.

✨ UX polish

  • Refined the missing-permissions preview/runtime layout so the window matches the shipped build more closely.
  • Cleaned up extra window chrome and border artifacts in the onboarding preview path.
  • Updated onboarding copy and docs to match the final user-facing behavior.

πŸ“¦ Installation

  1. Download PeekOCR-v1.8.0.dmg
  2. Open the DMG
  3. Drag PeekOCR to Applications
  4. First launch: right-click Open (not double-click) to bypass Gatekeeper, then confirm
  5. If needed, use the in-app permission flow to enable Screen Recording and Accessibility

πŸ’» Requirements

  • macOS 13.0 (Ventura) or later
  • Apple Silicon or Intel Mac

Full changelog: v1.7.0...v1.8.0

πŸ‘οΈ PeekOCR v1.7.0 - Multi-Display, Capture Sound & Clip Editor Refresh

19 Apr 02:50
c0caeed

Choose a tag to compare

πŸ–₯️ Multi-Display Β· πŸ”Š Capture Sound Β· ✨ Clip Editor Refresh

This release brings overlays to every connected display, adds an optional shutter sound for captures, and redesigns the GIF/Video clip editor for a cleaner, more focused workflow.

πŸ–₯️ Multi-display overlays

  • βŒ˜β‡§5 (annotated screenshot) and βŒ˜β‡§6 (GIF recording) overlays now span every connected display β€” start a selection from any monitor, not just the main one.
  • The first mousedown claims the session and dismisses sibling overlays on other displays.
  • Fixed overlays landing off-screen on secondary displays when macOS has "Displays have separate Spaces" enabled.

πŸ”Š Capture sound

  • Optional shutter sound after successful screenshots, plus the clip editor's frame-capture button.
  • Toggle and volume slider under Settings β†’ General β†’ Sonido, with a test button.
  • Clip exports (GIF/MP4) stay silent by design β€” the editor workflow is quiet on completion.
  • OCR captures do not fire the sound.

✨ Clip editor redesign (βŒ˜β‡§6)

  • The GIF ↔ Video picker now lives inline next to the "ExportaciΓ³n" title β€” one less section in the sidebar.
  • Settings grouped into three homogeneous cards: Calidad, Salida, EstimaciΓ³n.
  • FPS for video exports is now an informative row inside the Calidad card (it's not user-editable for video), so the real decisions β€” ResoluciΓ³n and Codec β€” read first.
  • Timeline trim uses the system accent color with tick marks and a visible playhead dot β€” no more dominant yellow bar.
  • Preview canvas is a solid black with a subtle vignette instead of the old hardcoded gradient, so the trimmer never competes with the real video.
  • Playback controls use frame-step SF Symbols (backward.frame.fill / forward.frame.fill) with shortcut hints, and the export button is promoted to the large control size with Enter as default action.
  • The "Frame guardado" toast is now a compact chip matching the timeline chip style; slides in from the bottom edge.

πŸ› οΈ Technical Highlights

  • New DisplayEnumerator utility wrapping CGGetActiveDisplayList with mirror-set filtering.
  • New CaptureSoundService singleton (lazy AVAudioPlayer, fire-and-forget playback) and SoundSettings ObservableObject backed by UserDefaults.
  • GifClipSidebarView consolidates its card styling through a reusable cardSection(title:content:) helper.
  • Fixed NSWindow(contentRect:...:screen:) doubling the content origin on non-primary displays by switching to the 4-parameter init + explicit setFrame(screen.frame, display: false).
  • Removed a hard-coded local path from a SwiftUI #Preview scaffold.

πŸ“¦ Installation

  1. Download PeekOCR-v1.7.0.dmg
  2. Open the DMG
  3. Drag PeekOCR to Applications
  4. First launch: right-click Open (not double-click) to bypass Gatekeeper, then confirm
  5. Grant Accessibility and Screen Recording permissions if prompted

πŸ’» Requirements

  • macOS 13.0 (Ventura) or later
  • Apple Silicon or Intel Mac

Full changelog: v1.6.0...v1.7.0

πŸ‘οΈ PeekOCR v1.6.0 - Live Annotation Overlay

12 Apr 04:09
b427a20

Choose a tag to compare

✍️ Live Annotation Overlay

This release replaces the old βŒ˜β‡§5 post-capture annotation editor with a much faster live overlay workflow.

✨ What's New

  • Live pre-capture annotations for βŒ˜β‡§5

    • Drag to select the capture region
    • Move or resize the selection before exporting
    • Add arrows, text, and highlight boxes directly on the live screen overlay
    • Press Enter to export the final annotated screenshot
  • Inline editing and manipulation

    • Move existing arrows, text, and highlights without leaving the overlay
    • Resize highlight boxes individually
    • Double-click text to edit it
    • Contextual cursor behavior for drawing, moving, resizing, and editing
  • Safer, smoother annotation UX

    • Outside clicks no longer accidentally create extra text or arrows
    • Changing tools clears stale selection state correctly
    • ⌘Z undoes the last live overlay annotation change

πŸ”§ Settings Integration

  • Live overlay arrows and highlights now respect the configured default stroke width from Settings
  • Live text uses the configured default font size
  • Preview and exported output now stay visually aligned with the annotation defaults

πŸ› οΈ Technical Highlights

  • New LiveAnnotationOverlayWindowController for the full-screen pre-capture session
  • New LiveAnnotationRenderer shared by the overlay preview and final exported image
  • New lightweight LiveAnnotation model for live overlay interactions
  • Direct rect capture finalization in NativeScreenCaptureService
  • Legacy post-capture editor path kept only for compatibility/testing

πŸ“¦ Installation

  1. Download PeekOCR-v1.6.0.dmg
  2. Open the DMG
  3. Drag PeekOCR to Applications
  4. Run PeekOCR from Applications
  5. Grant Accessibility and Screen Recording permissions if prompted

πŸ’» Requirements

  • macOS 13.0 (Ventura) or later
  • Apple Silicon or Intel Mac

⌨️ Default Keyboard Shortcuts

Shortcut Action
⇧ Space Capture text (OCR)
βŒ˜β‡§4 Capture screenshot
βŒ˜β‡§5 Live annotated screenshot
βŒ˜β‡§6 Capture GIF clip

πŸ” DMG SHA-256

27dc37b14085e96a36d02eedfbbc67ea42a44b8723453f62a362bc437a01b030

v1.5.1 - Permission Persistence Fix

08 Mar 02:51
f2e62c7

Choose a tag to compare

What's New

Permission Persistence Fix

  • Root cause: PeekOCR was using ad-hoc code signing, causing macOS TCC to lose track of granted permissions after every reboot
  • Fix: App is now signed with Apple Development certificate (Team ID: NXT93S55FY), so Screen Recording and Accessibility permissions persist across reboots
  • Added PeekOCR.entitlements for proper entitlements declaration

Improved Permission Handling

  • Use modern CGPreflightScreenCaptureAccess() API for reliable screen capture permission checks (replaces unreliable CGWindowListCopyWindowInfo)
  • Request Screen Capture permission proactively at app launch
  • Permission status in Settings now auto-refreshes every 2 seconds

Post-Update Note

After installing this version, you may need to re-grant permissions once:

  1. Go to System Settings > Privacy & Security > Screen Recording
  2. Remove PeekOCR from the list if present
  3. Relaunch PeekOCR β€” it will prompt for permissions
  4. Grant permissions β€” they will now persist across reboots

Installation

  1. Download PeekOCR-v1.5.1.dmg
  2. Open the DMG file
  3. Drag PeekOCR to your Applications folder
  4. Open PeekOCR from Applications
  5. Grant necessary permissions (Accessibility & Screen Recording)

System Requirements

  • macOS 13.0 (Ventura) or later
  • Apple Silicon or Intel Mac

Default Keyboard Shortcuts

Shortcut Action
⇧ Space Capture text (OCR)
βŒ˜β‡§4 Capture screenshot
βŒ˜β‡§5 Capture with annotations
βŒ˜β‡§6 Capture GIF clip

v1.5.0 - Frame Capture + UX Polish

28 Feb 02:49

Choose a tag to compare

What's New

Frame Capture in Clip Editor

  • Added a Capture Frame button in the GIF/Video clip editor playback controls
  • Save the current frame as an image using your configured screenshot format (PNG/JPG/TIFF/HEIC) and quality
  • Frame captures are saved in the same output directory configured in Settings

Export + Build Stability

  • Updated video export internals to modern async AVFoundation loading where applicable
  • Fixed sendable/deprecation warning paths in clip video export flow
  • Stabilized release build pipeline for packaging/distribution

Settings UX Polish

  • Fixed slider layout in Capturas and Clips tabs so controls use full row width consistently
  • Improved visual alignment for min/max slider indicators

Installation

  1. Download PeekOCR-v1.5.0.dmg
  2. Open the DMG file
  3. Drag PeekOCR to your Applications folder
  4. Open PeekOCR from Applications
  5. Grant necessary permissions (Accessibility & Screen Recording)

System Requirements

  • macOS 13.0 (Ventura) or later
  • Apple Silicon or Intel Mac

Default Keyboard Shortcuts

Shortcut Action
⇧ Space Capture text (OCR)
βŒ˜β‡§4 Capture screenshot
βŒ˜β‡§5 Capture with annotations
βŒ˜β‡§6 Capture GIF clip

v1.4.0 - Clip Export GIF/Video

31 Jan 02:18

Choose a tag to compare

What's New

Clip Export (GIF + Video)

  • Export recorded clips as GIF (Baja / AI Debug / Alta) or MP4 Video (H.264 or HEVC, 720p–4K, no audio)
  • AI Debug profile uses 1 FPS for easier frame-by-frame debugging
  • Export overlay now shows loading + success confirmation

Recording UX

  • Recording HUD is shown outside the captured region (won’t appear in the output)
  • Clear blue border highlight during recording

Settings

  • New Clip settings tab for max recording duration (3–60s) and default export preferences

Installation

  1. Download PeekOCR-v1.4.0.dmg
  2. Open the DMG file
  3. Drag PeekOCR to your Applications folder
  4. Open PeekOCR from Applications
  5. Grant necessary permissions (Accessibility & Screen Recording)

System Requirements

  • macOS 13.0 (Ventura) or later
  • Apple Silicon or Intel Mac

Default Keyboard Shortcuts

Shortcut Action
⇧ Space Capture text (OCR)
βŒ˜β‡§4 Capture screenshot
βŒ˜β‡§5 Capture with annotations
βŒ˜β‡§6 Capture GIF clip

v1.3.0 - GIF Clip Capture

26 Jan 01:45
4b25e89

Choose a tag to compare

What's New

GIF Clip Capture

  • New GIF Clip capture mode (record up to 10s) with an interactive region selector
  • Post-recording editor with timeline trimming, preview playback, and frame-by-frame stepping
  • Export to an optimized GIF with configurable quality, FPS, and max size

Installation

  1. Download PeekOCR-v1.3.0.dmg
  2. Open the DMG file
  3. Drag PeekOCR to your Applications folder
  4. Open PeekOCR from Applications
  5. Grant necessary permissions (Accessibility & Screen Recording)

System Requirements

  • macOS 13.0 (Ventura) or later
  • Apple Silicon or Intel Mac

Default Keyboard Shortcuts

Shortcut Action
⇧ Space Capture text (OCR)
βŒ˜β‡§4 Capture screenshot
βŒ˜β‡§5 Capture with annotations
βŒ˜β‡§6 Capture GIF clip

v1.2.0 - Annotation Editor Improvements

07 Jan 04:43
3bda8c2

Choose a tag to compare

What's New

Annotation Editor Enhancements

  • Text Resizing: You can now resize text annotations by dragging the selection handles (font size range: 8-72pt)
  • Wider Toolbar: Increased toolbar width to prevent text wrapping in Spanish UI
  • Auto-save Text: Text annotations are now automatically saved when clicking outside or switching tools
  • Settings Integration: Stroke width and font size from Settings are now properly applied when opening the editor

Settings Improvements

  • Removed misleading "50%" label from the image scale slider for clearer visual feedback

Installation

  1. Download PeekOCR-v1.2.0.dmg
  2. Open the DMG file
  3. Drag PeekOCR to your Applications folder
  4. Open PeekOCR from Applications
  5. Grant necessary permissions (Accessibility & Screen Recording)

System Requirements

  • macOS 14.0 (Sonoma) or later
  • Apple Silicon or Intel Mac

Keyboard Shortcuts

Shortcut Action
βŒ˜β‡§1 Capture text (OCR)
βŒ˜β‡§2 Capture screenshot
βŒ˜β‡§5 Capture with annotations

PeekOCR v1.1.0 - Modular Architecture Refactor

07 Jan 04:16
689efac

Choose a tag to compare

What's New in v1.1.0

This release focuses on code quality and maintainability through a major architectural refactor. The codebase has been reorganized into a modular, component-based architecture following Single Responsibility Principle.

πŸ—οΈ Architecture Improvements

  • 52% reduction in code complexity across major files
  • 35+ new modular components for better code organization
  • Comprehensive documentation added in docs/ folder

πŸ“ New Project Structure

Models/
β”œβ”€β”€ Annotations/     β†’ Data types (Annotation, AnnotationTool, ResizeHandle)
β”œβ”€β”€ State/           β†’ State managers (UndoRedoManager, SelectionManager)

Services/
β”œβ”€β”€ Screenshot/      β†’ Image processing (Scaling, Encoding)
β”œβ”€β”€ Annotation/      β†’ Window management (Factory, Geometry)
β”œβ”€β”€ HotKey/          β†’ Hotkey configuration

Views/
β”œβ”€β”€ Annotation/
β”‚   β”œβ”€β”€ Canvas/      β†’ Drawing components
β”‚   β”œβ”€β”€ Editor/      β†’ Editor components  
β”‚   └── Toolbar/     β†’ Toolbar components
β”œβ”€β”€ MenuBar/         β†’ Menu bar components
β”œβ”€β”€ Settings/Sections/ β†’ Modular form sections
β”œβ”€β”€ Components/      β†’ Reusable UI components
└── Helpers/         β†’ Hit testing, transforms

πŸ“‰ File Size Reductions

File Before After Reduction
AnnotationState.swift 527 258 -51%
AnnotationCanvasView.swift 412 182 -56%
AnnotationEditorView.swift 387 125 -68%
ScreenshotSettingsTab.swift 246 36 -85%
ScreenshotService.swift 207 93 -55%

πŸ“š New Documentation

  • docs/ARCHITECTURE.md - Layer diagram, data flow, patterns
  • docs/COMPONENTS.md - Reusable UI components catalog
  • docs/MODELS.md - Data models and state managers
  • docs/SERVICES.md - Service classes documentation
  • docs/VIEWS.md - View hierarchy and modules

✨ Component Highlights

New Reusable Components:

  • UndoRedoManager<T> - Generic undo/redo with configurable history
  • SelectionManager - Annotation selection and drag state
  • ImageScalingService - High-quality image scaling
  • ImageEncodingService - Multi-format encoding (PNG, JPEG, HEIC, TIFF)
  • AnnotationWindowFactory - Window creation and configuration
  • HitTestEngine - Collision detection for annotations
  • AnnotationTransformer - Move/resize operations

New Settings Sections:

  • Modular form sections for Settings tabs
  • Easy to reuse and maintain

πŸ”§ Technical Details

  • 50 files changed
  • 3,625 insertions, 1,905 deletions
  • All features remain fully functional
  • No breaking changes to user experience

πŸ“¦ Installation

  1. Download PeekOCR.dmg
  2. Open the DMG file
  3. Drag PeekOCR to Applications
  4. Launch from Applications or Spotlight

βš™οΈ System Requirements

  • macOS 13.0 (Ventura) or later
  • Apple Silicon or Intel Mac

Full Changelog: v1.0.0...v1.1.0