Skip to content

[Feature]: New, necessary mouse shortcut #253

Closed

Description

@JoelBj21

What problem would this solve?

Zooming with the mouse wheel works well, but sometimes I only want to zoom in or out a little, and it’s not very precise. To address this, I came up with a shortcut: hold down the "Ctrl" key while scrolling the mouse wheel, this makes the zooming more gradual (or, to put it another way, it adjusts the speed of the zoom).

Proposed solution

Add a "short/slow zoom" function, triggered while holding down the "Ctrl" key.

Alternatives considered

No response

Additional context

No response

Activity

  1. riyasy commented on Oct 22, 2026

    @riyasy
    Owner

    Thanks for the suggestion. Finer zoom control makes sense.

    Ctrl can't be used for this, though. When you pinch to zoom on a laptop touchpad, Windows sends it to apps as Ctrl + mouse wheel. FlyPhotos can't tell that apart from a real Ctrl + wheel. If Ctrl + wheel meant slow zoom, pinch zoom on every touchpad would become slow too. We will need to find another modifier key.

    Also define the the proper UX when opening very small images (like icons) vs very huge images. Like should the step be percentage of size or be just whole numbers..

  2. ittroll commented on Oct 23, 2026

    @ittroll

    Ctrl + wheel is the standard modifier for zoom in many apps when wheel is used for scroll. I don't think there is standard for a slow zoom.

    In many FPS games, Shift modifies from run to walk, i.e. a shift in speed. So Shift + wheel would seem an intuitive choice to me, if possible.

  3. riyasy commented on Oct 23, 2026

    @riyasy
    Owner

    Shall try with Shift + if it is available.

  4. JoelBj21 commented on Oct 26, 2026

    @JoelBj21
    Author

    4. Probaré con Shift + si está disponible.

    That would be very good. Thanks

  5. added a commit that references this issue on Oct 27, 2026
  6. riyasy commented on Oct 27, 2026

    @riyasy
    Owner

    Added fine zoom: hold Shift while scrolling the mouse wheel to zoom in small steps (about 2% per notch, stopping exactly at 100%).

    Can you please check with
    MSI - https://github.com/riyasy/FlyPhotos/actions/runs/40473630354/artifacts/12719619254
    or
    Publish Folder - https://github.com/riyasy/FlyPhotos/actions/runs/40473630354/artifacts/12720116514

  7. ittroll commented on Oct 27, 2026

    @ittroll

    Working nicely, although the step amount is quite variable. Below 50% it is about 1%. Above 200% it is 4-5%.
    Might it be better to be a consistent 1% regardless of zoom level?

  8. riyasy commented on Oct 28, 2026

    @riyasy
    Owner

    Thanks for testing. The step is intentionally relative. each notch changes the zoom by about 2.3% of the current zoom level, not by a fixed number of percentage points. That is why the shown number moves by ~1 at 50% and ~4-5 at 200%, but the image on screen grows or shrinks by the same amount on every notch.

    A fixed 1% step would feel very slow when zoomed in (going from 800% to 900% would take 100 notches) and very jumpy when zoomed out (5% to 6% is a 20% jump in size). Most image editors (GIMP, Photoshop) use relative steps.

  9. ittroll commented on Oct 28, 2026

    @ittroll

    My thinking is that people would use the normal faster zoom most of the time and to quickly get to the approximate size they want. They would only switch to the slow zoom to fine tune to a specific percentage size. The larger relative jumps means it is not possible to achieve certain specific percentage sizes. The OP mentioned being precise so perhaps this is what they had in mind?

  10. JoelBj21 commented on Oct 30, 2026

    @JoelBj21
    Author

    7. Se ha añadido la función de zoom fino: mantenga pulsada la tecla Mayús mientras desplaza la rueda del ratón para ampliar la imagen en pequeños pasos (aproximadamente un 2 % por cada nivel, deteniéndose exactamente en el 100 %).
    ¿Podrías comprobarlo con
    MSI - https://github.com/riyasy/FlyPhotos/actions/runs/40473630354/artifacts/12719619254
    o
    con la carpeta de publicación - https://github.com/riyasy/FlyPhotos/actions/runs/40473630354/artifacts/12720116514 ?

    I found a small bug: if you zoom in using the mouse wheel and press the Shift key at just the right moment, the image shifts by a few pixels in one direction or another. I hope that makes sense.
    Otherwise, it works well, but I would suggest adding an option for those who might want to increase the speed a bit more—unless such an option already exists and I simply missed it.
    I hope this can be included in the next update.

  11. riyasy commented on Oct 30, 2026

    @riyasy
    Owner

    Thanks both for testing and the feedback.

    @ittroll - I agree that people may want fine zoom to pass through every percentage. Implementation wise, a fixed 1% step breaks at the extremes: on a very large image shown at a few percent, +1% would be as big as or bigger than a normal zoom step, and at 800% it would take hundreds of notches to move between two normal steps.

    As a compromise, I have added a new setting, as @JoelBj21 asked for: Settings > Mouse > Shift + Mouse Wheel > Fine Zoom Step, from 1 to 10%, default 2%. The step is a percentage of the current zoom, not a fixed number of points. For example:

    • 1% step: 50% -> 50.5%, 100% -> 101%, 200% -> 202%
    • 10% step: 50% -> 55%, 100% -> 110%, 200% -> 220%

    So 1% gives the finest steps.

    @JoelBj21 - good catch. Pressing Shift while a normal zoom was still animating made the image jump a few pixels. That is fixed now. For the speed, you can use the same Fine Zoom Step setting.

    Can you please check with
    MSI - https://github.com/riyasy/FlyPhotos/actions/runs/41008005189/artifacts/12956477696
    or
    Publish Folder - https://github.com/riyasy/FlyPhotos/actions/runs/41008005189/artifacts/12956905412

  12. ittroll commented on Oct 30, 2026

    @ittroll

    Perfect. Personally I love the 1% setting for fine tuning detail when viewing plans or maps. But making it configurable means it should be good for everyone.

  13. JoelBj21 commented on Oct 30, 2026

    @JoelBj21
    Author

    Gracias a ambos por las pruebas y los comentarios.

    @ittrollEstoy de acuerdo en que la gente podría querer que el zoom fino abarque todos los porcentajes. En términos de implementación, un paso fijo del 1% falla en los extremos: en una imagen muy grande mostrada a pocos porcentajes, +1% sería tan grande o incluso más grande que un paso de zoom normal, y al 800% se necesitarían cientos de pasos para pasar de un porcentaje a otro.

    Como solución de compromiso, he añadido una nueva configuración, como@JoelBj21Se solicita: Ajustes > Ratón > Mayús + Rueda del ratón > Paso de zoom fino, de 1 a 10 %, valor predeterminado 2 %. El paso es un porcentaje del zoom actual, no un número fijo de puntos. Por ejemplo:

    • Paso del 1%: 50% -> 50,5%, 100% -> 101%, 200% -> 202%
    • Incremento del 10%: 50% -> 55%, 100% -> 110%, 200% -> 220%

    Por lo tanto, el 1% proporciona los pasos más precisos.

    @JoelBj21—Buen hallazgo. Al pulsar Mayús mientras se realizaba una animación de zoom normal, la imagen saltaba unos píxeles. Eso ya está solucionado. Para la velocidad, puedes usar la misma configuración de Paso de zoom fino.

    ¿Podrías comprobarlo con MSI - https://github.com/riyasy/FlyPhotos/actions/runs/41008005189/artifacts/12956477696 o con la carpeta de publicación - https://github.com/riyasy/FlyPhotos/actions/runs/41008005189/artifacts/12956905412 ?

    I just tried it out and I like it; it’s great for viewing images. The option to select a percentage is a necessary feature and is very well implemented. I hope you include it in the next update. Best regards.

  14. riyasy commented on Nov 7, 2026

    @riyasy
    Owner

    closed with 2.8.0

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions