Skip to content

Review: zoom implementation and image correction.#532

Merged
trunkmaster merged 2 commits into
trunkmaster:masterfrom
armm77:review-1
May 20, 2026
Merged

Review: zoom implementation and image correction.#532
trunkmaster merged 2 commits into
trunkmaster:masterfrom
armm77:review-1

Conversation

@armm77
Copy link
Copy Markdown
Collaborator

@armm77 armm77 commented May 20, 2026

  • Implementation of zoom in and zoom out via keyboard.

Bug fixes

  • Fixes image shifting to coordinate 0,0 when applying zoom instead of staying centered. imageView now always occupies at least the visible scroll area size, allowing NSImageAlignCenter to center the image correctly.

New behaviors

  • Image stays centered after every zoom change and when resizing the window.
  • Images that fit on screen open at 100% with the window sized to match.
  • Images larger than the screen are proportionally scaled on open.
  • The popup displays the exact percentage when scaling. If it does not match a fixed value, a temporary dynamic item is added and removed when another zoom level is selected.
  • Zoom In and Zoom Out navigate to the next/previous fixed value relative to the current percentage, even when the current zoom is a dynamic value.
  • Resizing the window proportionally rescales the image and updates the popup.
  • Minimum window size reduced from 200×200 to 100×100.
  • Maximum window size limited to the visible screen area (visibleFrame).

armm77 added 2 commits May 19, 2026 20:50
Bug fixes

- Fixes image shifting to coordinate 0,0 when applying zoom instead of staying centered. imageView now always occupies at least the visible scroll area size, allowing NSImageAlignCenter to center the image correctly.

New behaviors

- Image stays centered after every zoom change and when resizing the window.
- Images that fit on screen open at 100% with the window sized to match.
- Images larger than the screen are proportionally scaled on open.
- The popup displays the exact percentage when scaling. If it does not match a fixed value, a temporary dynamic item is added and removed when another zoom level is selected.
- Zoom In and Zoom Out navigate to the next/previous fixed value relative to the current percentage, even when the current zoom is a dynamic value.
- Resizing the window proportionally rescales the image and updates the popup.
- Minimum window size reduced from 200×200 to 100×100.
- Maximum window size limited to the visible screen area (visibleFrame).
@trunkmaster
Copy link
Copy Markdown
Owner

Excellent, thanks!

@trunkmaster trunkmaster merged commit 0502885 into trunkmaster:master May 20, 2026
3 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.

2 participants