The `version` value from the `Options` file is compared to the harcoded
value (computed at build time) of the running application. If the major
or minor version is different, the `svg2png` folder is cleaned at
startup-time.
Accumulate/coalesce GDK_SCROLL_SMOOTH events until we equal or exceed +/-1.0
This avoids having one zoom adjustment for every single event which makes touchpad zooming unusable due to frequent
small deltas
This makes trackpad zooming usable while having no effect on mice that emit GDK_SMOOTH_SCROLL with values of +/-1.0 instead
of GDK_SCROLL_UP and GDK_SCROLL_DOWN
If any mice exist that have scroll wheel detents but emit smaller values per detent, this may have the negative effect of
requiring multiple detents per zoom level. It remains to be seen whether any mice behave like this. The discrete step
implementation of zoomSteps requires us to coalesce events instead of smoothly zooming in and out.
Devices such as trackpads will emit smooth scrolling (GDK_SMOOTH_SCROLL) events with
deltas smaller than +/-1.0 at high frequency.
Quantizing these to +/-1.0 leads to significant amplification of scroll speed to the point
of unusability
Scroll by delta instead of +/-1.0 in these cases, permitting smooth scrolling through panels that use this code
Some mice emit GDK_SMOOTH_SCROLL with deltas of +/-1.0 per detent. This patch will not change behavior
with such devices. However, if any mice emit deltas of smaller magnitude, the per-detent behavior will
change.
Devices such as trackpads will emit smooth scrolling (GDK_SMOOTH_SCROLL) events with
deltas smaller than +/-1.0 at high frequency.
Quantizing these to +/-1.0 leads to significant amplification of scroll speed to the point
of unusability
Scroll by delta instead of +/-1.0 in these cases, permitting smooth scrolling through thumbnails
Some mice emit GDK_SMOOTH_SCROLL with deltas of +/-1.0 per detent. This patch will not change behavior
with such devices. However, if any mice emit deltas of smaller magnitude, the per-detent behavior will
change.