mirror of
https://github.com/ghostty-org/ghostty.git
synced 2025-07-20 10:46:07 +03:00
Merge c25e10492a399ccdc6a33dd1e249b753c4d47266 into 50a88dcfe7c35c8b21bcfb7011787a0270f3d7db
This commit is contained in:
@ -2783,8 +2783,21 @@ pub fn scrollCallback(
|
|||||||
// that a wheel tick of 1 results in single scroll event.
|
// that a wheel tick of 1 results in single scroll event.
|
||||||
const yoff_adjusted: f64 = if (scroll_mods.precision)
|
const yoff_adjusted: f64 = if (scroll_mods.precision)
|
||||||
yoff
|
yoff
|
||||||
|
else yoff_adjusted: {
|
||||||
|
// Round out the yoff to an absolute minimum of 1. macos tries to
|
||||||
|
// simulate precision scrolling with non precision events by
|
||||||
|
// ramping up the magnitude of the offsets as it detects faster
|
||||||
|
// scrolling. Single click (very slow) scrolls are reported with a
|
||||||
|
// magnitude of 0.1 which would normally require a few clicks
|
||||||
|
// before we register an actual scroll event (depending on cell
|
||||||
|
// height and the mouse_scroll_multiplier setting).
|
||||||
|
const yoff_max: f64 = if (yoff > 0)
|
||||||
|
@max(yoff, 1)
|
||||||
else
|
else
|
||||||
yoff * cell_size * self.config.mouse_scroll_multiplier;
|
@min(yoff, -1);
|
||||||
|
|
||||||
|
break :yoff_adjusted yoff_max * cell_size * self.config.mouse_scroll_multiplier;
|
||||||
|
};
|
||||||
|
|
||||||
// Add our previously saved pending amount to the offset to get the
|
// Add our previously saved pending amount to the offset to get the
|
||||||
// new offset value. The signs of the pending and yoff should match
|
// new offset value. The signs of the pending and yoff should match
|
||||||
|
Reference in New Issue
Block a user