[PR #71] [MERGED] feat(v1.5): cloud upload, editor enhancements, and hotkey presets #81

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/71
Author: @mrgoonie
Created: 1/11/2026
Status: Merged
Merged: 1/11/2026
Merged by: @mrgoonie

Base: mainHead: dev


📝 Commits (10+)

  • 2ddc6d5 Merge remote-tracking branch 'origin/main' into goon
  • 66d6850 chore: merge origin/dev with conflict resolution
  • 821fc58 chore: merge origin/main into goon
  • b30744e fix(release): add @semantic-release/npm plugin to update package.json version
  • d46a525 chore(release): 1.4.1 [skip ci]
  • 8f2c55a feat(upload): add Windows Credential Manager wrapper for cloud upload credentials
  • 558796c feat(upload): add Cloudflare R2 uploader with retry logic
  • e3ac924 feat(upload): add Google Drive uploader with OAuth2 flow
  • 502f648 feat(config): add cloud provider config structs for R2 and GDrive
  • fa87274 feat(app): add Wails bindings for cloud upload (R2 + GDrive)

📊 Changes

37 files changed (+8489 additions, -882 deletions)

View changed files

📝 CHANGELOG.md (+73 -106)
📝 CLAUDE.md (+4 -0)
📝 app.go (+173 -0)
coverage.html (+347 -0)
📝 coverage.out (+46 -692)
📝 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 (+178 -2)
📝 frontend/src/components/editor-canvas.tsx (+31 -2)
📝 frontend/src/components/export-toolbar.tsx (+81 -2)
📝 frontend/src/components/hotkey-input.tsx (+28 -0)
📝 frontend/src/components/settings-modal.tsx (+421 -3)
📝 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/main/App.d.ts (+35 -0)

...and 17 more files

📄 Description

Summary

  • Cloud Upload: Add R2 and Google Drive integration with Windows Credential Manager support
  • Editor Enhancements: Canvas zoom/scale controls, inset slider, auto-background color extraction
  • Hotkey Presets: Add PrintScreen preset buttons for easier hotkey configuration
  • Bug Fixes: Prevent duplicate instances, sync startup path on version update

Changes

Cloud Upload (v1.5.0-beta.1)

  • Add Cloudflare R2 uploader with retry logic and directory prefix support
  • Add Google Drive uploader with OAuth2 flow
  • Add Windows Credential Manager wrapper for secure credential storage
  • Add Cloud settings tab with R2 and GDrive configuration UI
  • Add Cloud upload button with dropdown menu in export toolbar

Editor Features (v1.5.0-beta.2)

  • Add canvas zoom and scale controls
  • Add inset slider for screenshot scaling
  • Add auto-background feature with edge color extraction
  • Enhance settings panel with Go runtime info

Other Improvements

  • Add PrintScreen preset buttons for hotkey assignment (#67)
  • Fix duplicate instances issue
  • Sync startup path on version update

Test Plan

  • Test R2 upload with valid credentials
  • Test Google Drive OAuth flow and upload
  • Test canvas zoom/scale controls
  • Test inset slider functionality
  • Test auto-background color extraction
  • Verify hotkey preset buttons work correctly
  • Ensure no duplicate instances on startup

🔄 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/71 **Author:** [@mrgoonie](https://github.com/mrgoonie) **Created:** 1/11/2026 **Status:** ✅ Merged **Merged:** 1/11/2026 **Merged by:** [@mrgoonie](https://github.com/mrgoonie) **Base:** `main` ← **Head:** `dev` --- ### 📝 Commits (10+) - [`2ddc6d5`](https://github.com/mrgoonie/winshot/commit/2ddc6d5c35ab1a03b8c67312ffde680c3a47c12a) Merge remote-tracking branch 'origin/main' into goon - [`66d6850`](https://github.com/mrgoonie/winshot/commit/66d68504d400659321f8e5f45bfe52fe29333d9b) chore: merge origin/dev with conflict resolution - [`821fc58`](https://github.com/mrgoonie/winshot/commit/821fc58d27075fc522cfa58d218b157c6f05f368) chore: merge origin/main into goon - [`b30744e`](https://github.com/mrgoonie/winshot/commit/b30744e0ad5664eb9000973e5cebf4842729f8c4) fix(release): add @semantic-release/npm plugin to update package.json version - [`d46a525`](https://github.com/mrgoonie/winshot/commit/d46a5250e1e7041e46e8b95c446e9397914a09bc) chore(release): 1.4.1 [skip ci] - [`8f2c55a`](https://github.com/mrgoonie/winshot/commit/8f2c55a575db0d4976e1ceffee541c99ea6f6487) feat(upload): add Windows Credential Manager wrapper for cloud upload credentials - [`558796c`](https://github.com/mrgoonie/winshot/commit/558796ce9e45561605c67d21d9520bdec2d71617) feat(upload): add Cloudflare R2 uploader with retry logic - [`e3ac924`](https://github.com/mrgoonie/winshot/commit/e3ac924b510c73da0dd21eebf4dca44bfa6d0bbc) feat(upload): add Google Drive uploader with OAuth2 flow - [`502f648`](https://github.com/mrgoonie/winshot/commit/502f64826994ed5020209c78ebeebadb5041cfe8) feat(config): add cloud provider config structs for R2 and GDrive - [`fa87274`](https://github.com/mrgoonie/winshot/commit/fa8727442618346088819d838866ce42a0c5eb9e) feat(app): add Wails bindings for cloud upload (R2 + GDrive) ### 📊 Changes **37 files changed** (+8489 additions, -882 deletions) <details> <summary>View changed files</summary> 📝 `CHANGELOG.md` (+73 -106) 📝 `CLAUDE.md` (+4 -0) 📝 `app.go` (+173 -0) ➕ `coverage.html` (+347 -0) 📝 `coverage.out` (+46 -692) 📝 `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` (+178 -2) 📝 `frontend/src/components/editor-canvas.tsx` (+31 -2) 📝 `frontend/src/components/export-toolbar.tsx` (+81 -2) 📝 `frontend/src/components/hotkey-input.tsx` (+28 -0) 📝 `frontend/src/components/settings-modal.tsx` (+421 -3) 📝 `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/main/App.d.ts` (+35 -0) _...and 17 more files_ </details> ### 📄 Description ## Summary - **Cloud Upload**: Add R2 and Google Drive integration with Windows Credential Manager support - **Editor Enhancements**: Canvas zoom/scale controls, inset slider, auto-background color extraction - **Hotkey Presets**: Add PrintScreen preset buttons for easier hotkey configuration - **Bug Fixes**: Prevent duplicate instances, sync startup path on version update ## Changes ### Cloud Upload (v1.5.0-beta.1) - Add Cloudflare R2 uploader with retry logic and directory prefix support - Add Google Drive uploader with OAuth2 flow - Add Windows Credential Manager wrapper for secure credential storage - Add Cloud settings tab with R2 and GDrive configuration UI - Add Cloud upload button with dropdown menu in export toolbar ### Editor Features (v1.5.0-beta.2) - Add canvas zoom and scale controls - Add inset slider for screenshot scaling - Add auto-background feature with edge color extraction - Enhance settings panel with Go runtime info ### Other Improvements - Add PrintScreen preset buttons for hotkey assignment (#67) - Fix duplicate instances issue - Sync startup path on version update ## Test Plan - [ ] Test R2 upload with valid credentials - [ ] Test Google Drive OAuth flow and upload - [ ] Test canvas zoom/scale controls - [ ] Test inset slider functionality - [ ] Test auto-background color extraction - [ ] Verify hotkey preset buttons work correctly - [ ] Ensure no duplicate instances on startup --- <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#81
No description provided.