Skip to content

Add configurable zoom scaling option

Add a new option under general->tools called "zoom interval size" that allows one to set the scaling for zoom actions. The scaling will determine how the distance between each zoom level ( and how many level).

I configured 6 different presets with preset 6 having the largest distance between each zoom interval and preset 1 having the smallest. I think this should have a wide enough range that any mouse wheel/tablet wheel/keyboard shortcut should feel comfortable in at least one of the presets. The original zoom scaling behavior is set to option 5 and is also the default setting.

I would like some feedback on the placement/type of the config option. I'm not quite sure if it should be a different type of widget (slider, dropdown, spinbox, etc) or in a different location in the settings menu. I feel like what I have here works but its not the most intuitive for people to find/use.

This made from a discussion on the KA forums here


After some discussion this was changed to a toggle instead of a slider. The option was renamed to "Enable smooth zooming"

Test Plan

  1. Open configure krita->general->tools
  2. Set various zoom level in "Zoom Interval Size" and click ok
  3. Zoom with mouse scroll, shortcut, or tablet wheel (if set to zoom scroll)

Formalities Checklist

  • I confirmed this builds.
  • I confirmed Krita ran and the relevant functions work.
  • I tested the relevant unit tests and can confirm they are not broken. (If not possible, don't hesitate to ask for help!)
  • I made sure my commits build individually and have good descriptions as per KDE guidelines.
  • I made sure my code conforms to the standards set in the HACKING file.
  • I can confirm the code is licensed and attributed appropriately, and that unattributed code is mine, as per KDE Licensing Policy.
Edited by reinold rojas

Merge request reports