13
0
livetrax/libs
Mads Kiilerich d1265b5a02
Fix mouse events on clamped automation lines
This fixes the following problem:
When automation lines with significant change are zoomed in time, the
slope gets smaller (towards horizontal) as the control points moves
further away from the visible area. That was rendered correctly, but the
corresponding mouse events happened as if the line had a steeper slope.

The problem was caused by the X value being clamped to the visible area,
without scaling the Y value correspondingly. It has apparently been like
that for a decode, since introduced in c4f0063a68.

The problem is fixed by introducing a clamp2 function that scales the Y
value if clamping the X value.

Note: An old comment says that math goes wrong unless clamping below
COORD_MAX. It is not clear to me what math it refers to, and especially
why we don't need similar clamping on the lower bounds.

And while rarely a real problem, I guess it would be more correct and a
slight optimization to skip all lines where both ends are outside the
same bound. In theory, as it is now, the mouse could catch an invisible
line close to the border.
2022-10-17 00:09:25 +02:00
..
appleutility
ardour Do not constrain bundle names to 32 chars 2022-10-16 21:45:09 +02:00
ardouralsautil Distinct stderr messages from ARD 2022-09-12 16:15:10 +02:00
audiographer Fix typos 2022-09-21 19:09:55 -06:00
auscan
backends Increase coreMIDI robustness, do not drop late events 2022-09-24 02:29:50 +02:00
canvas Fix mouse events on clamped automation lines 2022-10-17 00:09:25 +02:00
clearlooks-newer
evoral increment/decrement name changes ... out with old in with the new (libs 2022-10-07 17:30:35 -06:00
fluidsynth
fst
gtkmm2ext Prevent duplicate signal emission 2022-10-08 17:12:10 +02:00
hidapi
libltc
lua LuaBridge - add API to try convert a value 2022-09-26 21:39:21 +02:00
midi++2
panners
pbd Insert_or_assign properties, allow to override properties 2022-10-07 00:32:14 +02:00
plugins
ptformat
qm-dsp
surfaces Add dedicated InsertReturnLevel type 2022-10-14 02:21:49 +02:00
temporal Be liberal about what to accept 2022-10-16 22:30:35 +02:00
vamp-plugins
vamp-pyin Fix typos 2022-09-21 19:09:55 -06:00
vfork
vst3
waveview
widgets Allow multiple sizing texts for ArdourButton/Dropdown 2022-09-20 02:35:26 +02:00
zita-convolver
zita-resampler