Skip to content

scroll: replace dx + dy with dominant axis, correct sign#21269

Open
kofa73 wants to merge 2 commits into
darktable-org:masterfrom
kofa73:scroll-fixes-1
Open

scroll: replace dx + dy with dominant axis, correct sign#21269
kofa73 wants to merge 2 commits into
darktable-org:masterfrom
kofa73:scroll-fixes-1

Conversation

@kofa73

@kofa73 kofa73 commented Jun 7, 2026

Copy link
Copy Markdown
Collaborator

Scrolling logic used to calculate delta = dx + dy. Two issues:

  • usually, we want up and right to mean the same thing (increase a value, a diameter), but up = dy < 0, right = dx > 0, so right was treated as equivalent to down
  • diagonals would either amplify or reduce the effect (e.g. moving up (dy < 0) + right (dx > 0) on a touchpad could potentially cancel out)

Consistency fixes:

  • Zoom up/right = in, down/left = out:

    • Darkroom center image zoom (discrete/non-touchpad path)
    • Darkroom 2nd window zoom
    • Color zones zoom (hold a)
    • Slider pop-up zoom (resolution/range)
    • Timeline zoom (Ctrl+scroll)
  • Value: up/right = increase / down/left = decrease

    • Sliders — value up/down and the reversed left/right tilt
    • Color correction — saturation
    • Tone equalizer — brighten/darken on hover
    • Graduated density — density (Ctrl) and hardness (Shift)
    • Liquify — stamp size, effect strength, and rotate direction
    • Zone system — number of zones
  • effect circle: up/right = enlarge, down/left = shrink

    • Contrast equalizer (atrous), denoise (profiled), raw denoise, lowlight, color zones (edit-by-area) -- feedback circles
    • Monochrome — selection circle radius
    • Rotate & perspective — analysis selection radius
  • Mask / shape scale: up/right = increase, down/left = decrease

    • Drawn mask overlays — circle, ellipse, brush, path, gradient, object, group
  • Node / handle / marker move: up/right = move up; down/left: down

    • Base curve / tone curve / RGB curves — point up/down
    • Color equalizer — graph nodes up/down
    • RGB levels / levels — histogram handles
    • Retouch — wavelet/decomposition bar (top slider, bottom slider, dot position)
    • Gradient slider active marker (e.g. retouch wavelet-scale preview handle)

partial fix for issues listed in #20843 (plus a few others identified later)

@kofa73 kofa73 requested a review from TurboGit June 7, 2026 12:51
@TurboGit TurboGit added this to the 5.8 milestone Jun 8, 2026
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