This would ensure that the perfectly fitted view is always one of the available zoom steps when using keyboard/mouse zoom commands — while also preserving 100% as a guaranteed step.
Current behaviour (example with relative √2 steps)
Zoom levels follow strict multiples: ≈9%, ≈13%, ≈18%, ≈25%, ≈35%, ≈50%, 70.7%, 100%, 141%, etc.
If “Fit to window” happens to land at ~16%, it is not one of the steps → you can never return exactly to the fitted view by stepping through the zoom levels.
Desired behaviour (with new option enabled):
- Calculate the actual “Fit to window” zoom percentage when the image is opened
- Find the closest default zoom step
- Replace only that closest step with the exact fit-to-window percentage
- Important exception: never replace 100%. If the closest step would have been 100%, insert the fit percentage as an additional step instead (e.g. … 70.7%, 98%, 100%, 141% …) or place it immediately before/after 100% — whichever keeps the sequence clean and logical. The goal is that 100% always remains available as a distinct, reliable step.
Default steps: ≈9%, ≈13%, ≈18%, ≈25%, …, 70.7%, 100%, 141%, …
Fit-to-window = 16% → replace 18% with 16%
Resulting steps: ≈9%, ≈13%, 16% (exact fit), ≈25%, …, 70.7%, 100%, 141%, …
Fit-to-window = 98% → do not replace 100%; instead insert 98% nearby
Resulting steps: … 70.7%, 98% (exact fit), 100%, 141%, …
Example – Fixed 5% steps
Default steps: 5%, 10%, 15%, 20%, …, 95%, 100%, 105%, …
Fit-to-window = 16% → replace 15% with 16%
Resulting steps: 5%, 10%, 16% (exact fit), 20%, …, 100%, …
Fit-to-window = 97% → insert 97% without removing 100%
Resulting steps: … 95%, 97% (exact fit), 100%, 105%, …
Additional notes
- The replacement/insertion should happen dynamically per image
- It would be best if this logic respected whichever auto-zoom method the user has chosen (“Fit”, “Fill”, “1:1”, custom %, etc.)
- A simple checkbox like
☐ Snap nearest zoom step to initial auto-zoom level (preserve 100%)
would make the feature easy to discover and toggle
When reviewing images, it’s very convenient to return exactly to the “fits perfectly in the window” view while zoom scrolling for pixel checking.
Thank you.