mirror of
https://github.com/RGBCube/serenity
synced 2025-05-31 04:48:14 +00:00
LibGUI: Use cursor position when calculating autoscroll delta
Autoscroll delta now takes into account the cursor position relative to the widget inner rect height to allow for faster rubber band autoscrolling.
This commit is contained in:
parent
064b7a6216
commit
214eaebe73
1 changed files with 2 additions and 2 deletions
|
@ -333,9 +333,9 @@ Gfx::IntPoint AbstractScrollableWidget::automatic_scroll_delta_from_position(Gfx
|
|||
Gfx::IntPoint delta { 0, 0 };
|
||||
|
||||
if (pos.y() < m_autoscroll_threshold)
|
||||
delta.set_y(clamp(-(m_autoscroll_threshold - pos.y()), -m_autoscroll_threshold, 0));
|
||||
delta.set_y(AK::min(pos.y() - m_autoscroll_threshold, 0));
|
||||
else if (pos.y() > widget_inner_rect().height() - m_autoscroll_threshold)
|
||||
delta.set_y(clamp(m_autoscroll_threshold - (widget_inner_rect().height() - pos.y()), 0, m_autoscroll_threshold));
|
||||
delta.set_y(AK::max(pos.y() + m_autoscroll_threshold - widget_inner_rect().height(), 0));
|
||||
|
||||
if (pos.x() < m_autoscroll_threshold)
|
||||
delta.set_x(clamp(-(m_autoscroll_threshold - pos.x()), -m_autoscroll_threshold, 0));
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue