[PR #69] [MERGED] feat(editor): add inset scaling with auto-background color extraction #78

Closed
opened 2026-03-03 15:57:40 +03:00 by kerem · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/mrgoonie/winshot/pull/69
Author: @mrgoonie
Created: 1/11/2026
Status: Merged
Merged: 1/11/2026
Merged by: @mrgoonie

Base: devHead: goon


📝 Commits (9)

  • b1160e4 feat(hotkey-input): add preset buttons for PrintScreen assignment
  • 9ee2190 feat(editor): add color extraction utility for auto-background feature
  • ff927ec feat(editor): add inset and auto-background state management
  • 06774a6 fix(app): prevent duplicate instances and sync startup path on version update
  • bd201a2 feat(settings): enhance settings panel and go runtime
  • 3eea549 feat(editor): add inset slider and auto-background UI controls
  • ff8b9ea feat(editor): add inset scale transform to canvas for screenshot scaling
  • c42a6b5 feat(editor): add canvas zoom and scale controls
  • 9800405 Merge remote-tracking branch 'origin/dev' into goon

📊 Changes

16 files changed (+673 additions, -64 deletions)

View changed files

📝 docs/codebase-summary.md (+160 -2)
📝 docs/editor-structure.md (+121 -34)
📝 docs/project-overview-pdr.md (+20 -12)
📝 frontend/dist/index.html (+2 -2)
📝 frontend/package.json (+1 -0)
📝 frontend/package.json.md5 (+1 -1)
📝 frontend/src/App.tsx (+60 -2)
📝 frontend/src/components/editor-canvas.tsx (+31 -2)
📝 frontend/src/components/hotkey-input.tsx (+28 -0)
📝 frontend/src/components/settings-panel.tsx (+71 -3)
📝 frontend/src/components/update-modal.tsx (+25 -2)
frontend/src/utils/extract-edge-color.ts (+103 -0)
📝 frontend/wailsjs/go/models.ts (+4 -0)
📝 internal/config/config.go (+4 -0)
📝 internal/config/startup.go (+13 -0)
📝 main.go (+29 -4)

📄 Description

Summary

  • Add inset slider (0-50%) to scale screenshot smaller within canvas
  • Add auto-background color extraction from screenshot edges
  • Add inset background rect that reveals extracted color when screenshot scales
  • Add PrintScreen preset buttons for easier hotkey assignment
  • Fix duplicate instance prevention and startup path sync
  • Fix export selection handles - hide Transformer nodes before export
  • Enhance settings panel with auto/manual background toggle

Changes

Features

  • Inset scaling with centered positioning
  • Color extraction utility (~100 LOC) sampling edge pixels
  • Auto-background toggle in settings panel
  • Extracted color preview display
  • PrintScreen hotkey preset buttons

Fixes

  • Prevent duplicate app instances
  • Sync startup path on version update
  • Hide selection handles during export

Files Changed

16 files, +673/-64 lines

Test Plan

  • Capture screenshot and adjust inset slider (0-50%)
  • Verify auto-background extracts dominant edge color
  • Toggle between auto and manual background modes
  • Export with annotation selected - verify no selection handles
  • Test PrintScreen preset buttons in hotkey settings

🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/mrgoonie/winshot/pull/69 **Author:** [@mrgoonie](https://github.com/mrgoonie) **Created:** 1/11/2026 **Status:** ✅ Merged **Merged:** 1/11/2026 **Merged by:** [@mrgoonie](https://github.com/mrgoonie) **Base:** `dev` ← **Head:** `goon` --- ### 📝 Commits (9) - [`b1160e4`](https://github.com/mrgoonie/winshot/commit/b1160e458bf9c6c5a094f73e65620fca3dc125ad) feat(hotkey-input): add preset buttons for PrintScreen assignment - [`9ee2190`](https://github.com/mrgoonie/winshot/commit/9ee2190d65452a52f5329e94b09aef7b89a506dc) feat(editor): add color extraction utility for auto-background feature - [`ff927ec`](https://github.com/mrgoonie/winshot/commit/ff927ecb00e5947c39fa1d4f28d8316981323f14) feat(editor): add inset and auto-background state management - [`06774a6`](https://github.com/mrgoonie/winshot/commit/06774a6a133a2edb69272488c784960b20ad2648) fix(app): prevent duplicate instances and sync startup path on version update - [`bd201a2`](https://github.com/mrgoonie/winshot/commit/bd201a2b431ddb6de9414059eb2eb6df1ccb36f4) feat(settings): enhance settings panel and go runtime - [`3eea549`](https://github.com/mrgoonie/winshot/commit/3eea549ea4a2908ea0b373d406564ba7bd5fe24b) feat(editor): add inset slider and auto-background UI controls - [`ff8b9ea`](https://github.com/mrgoonie/winshot/commit/ff8b9ea546aa4efe16590bf8d80f6f886a64f138) feat(editor): add inset scale transform to canvas for screenshot scaling - [`c42a6b5`](https://github.com/mrgoonie/winshot/commit/c42a6b5e25c1155e116bfa081c5af64d0bc447ca) feat(editor): add canvas zoom and scale controls - [`9800405`](https://github.com/mrgoonie/winshot/commit/9800405704be941b2c1851578a59a1b5102783d6) Merge remote-tracking branch 'origin/dev' into goon ### 📊 Changes **16 files changed** (+673 additions, -64 deletions) <details> <summary>View changed files</summary> 📝 `docs/codebase-summary.md` (+160 -2) 📝 `docs/editor-structure.md` (+121 -34) 📝 `docs/project-overview-pdr.md` (+20 -12) 📝 `frontend/dist/index.html` (+2 -2) 📝 `frontend/package.json` (+1 -0) 📝 `frontend/package.json.md5` (+1 -1) 📝 `frontend/src/App.tsx` (+60 -2) 📝 `frontend/src/components/editor-canvas.tsx` (+31 -2) 📝 `frontend/src/components/hotkey-input.tsx` (+28 -0) 📝 `frontend/src/components/settings-panel.tsx` (+71 -3) 📝 `frontend/src/components/update-modal.tsx` (+25 -2) ➕ `frontend/src/utils/extract-edge-color.ts` (+103 -0) 📝 `frontend/wailsjs/go/models.ts` (+4 -0) 📝 `internal/config/config.go` (+4 -0) 📝 `internal/config/startup.go` (+13 -0) 📝 `main.go` (+29 -4) </details> ### 📄 Description ## Summary - Add **inset slider (0-50%)** to scale screenshot smaller within canvas - Add **auto-background color extraction** from screenshot edges - Add **inset background rect** that reveals extracted color when screenshot scales - Add **PrintScreen preset buttons** for easier hotkey assignment - Fix **duplicate instance prevention** and startup path sync - Fix **export selection handles** - hide Transformer nodes before export - Enhance settings panel with auto/manual background toggle ## Changes ### Features - Inset scaling with centered positioning - Color extraction utility (~100 LOC) sampling edge pixels - Auto-background toggle in settings panel - Extracted color preview display - PrintScreen hotkey preset buttons ### Fixes - Prevent duplicate app instances - Sync startup path on version update - Hide selection handles during export ## Files Changed 16 files, +673/-64 lines ## Test Plan - [ ] Capture screenshot and adjust inset slider (0-50%) - [ ] Verify auto-background extracts dominant edge color - [ ] Toggle between auto and manual background modes - [ ] Export with annotation selected - verify no selection handles - [ ] Test PrintScreen preset buttons in hotkey settings --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
kerem 2026-03-03 15:57:40 +03:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/winshot#78
No description provided.