mirror of
https://github.com/fergalmoran/ladybird.git
synced 2026-01-03 07:07:23 +00:00
LibGUI: Make AutomaticScrollingKind a paramter on set_automatic_scrolling_active
Most callers of set_automatic_scrolling_active() also change m_automatic_scrolling_kind, and it makes it possible to make timer behavior dependent on the autoscroll kind later.
This commit is contained in:
committed by
Andreas Kling
parent
129816e056
commit
ecf6cbbd02
@@ -279,14 +279,12 @@ void ScrollBar::mousedown_event(MouseEvent& event)
|
||||
return;
|
||||
|
||||
if (decrement_button_rect().contains(event.position())) {
|
||||
m_automatic_scrolling_kind = AutomaticScrollingKind::DecrementButton;
|
||||
set_automatic_scrolling_active(true);
|
||||
set_automatic_scrolling_active(true, AutomaticScrollingKind::DecrementButton);
|
||||
update();
|
||||
return;
|
||||
}
|
||||
if (increment_button_rect().contains(event.position())) {
|
||||
m_automatic_scrolling_kind = AutomaticScrollingKind::IncrementButton;
|
||||
set_automatic_scrolling_active(true);
|
||||
set_automatic_scrolling_active(true, AutomaticScrollingKind::IncrementButton);
|
||||
update();
|
||||
return;
|
||||
}
|
||||
@@ -312,8 +310,7 @@ void ScrollBar::mouseup_event(MouseEvent& event)
|
||||
if (event.button() != MouseButton::Left)
|
||||
return;
|
||||
m_scrubber_in_use = false;
|
||||
m_automatic_scrolling_kind = AutomaticScrollingKind::None;
|
||||
set_automatic_scrolling_active(false);
|
||||
set_automatic_scrolling_active(false, AutomaticScrollingKind::None);
|
||||
m_scrubbing = false;
|
||||
update();
|
||||
}
|
||||
@@ -326,8 +323,10 @@ void ScrollBar::mousewheel_event(MouseEvent& event)
|
||||
Widget::mousewheel_event(event);
|
||||
}
|
||||
|
||||
void ScrollBar::set_automatic_scrolling_active(bool active)
|
||||
void ScrollBar::set_automatic_scrolling_active(bool active, AutomaticScrollingKind kind)
|
||||
{
|
||||
m_automatic_scrolling_kind = kind;
|
||||
|
||||
if (active) {
|
||||
on_automatic_scrolling_timer_fired();
|
||||
m_automatic_scrolling_timer->start();
|
||||
@@ -376,9 +375,9 @@ void ScrollBar::mousemove_event(MouseEvent& event)
|
||||
update();
|
||||
|
||||
if (m_automatic_scrolling_kind == AutomaticScrollingKind::DecrementButton)
|
||||
set_automatic_scrolling_active(m_hovered_component == Component::DecrementButton);
|
||||
set_automatic_scrolling_active(m_hovered_component == Component::DecrementButton, m_automatic_scrolling_kind);
|
||||
else if (m_automatic_scrolling_kind == AutomaticScrollingKind::IncrementButton)
|
||||
set_automatic_scrolling_active(m_hovered_component == Component::IncrementButton);
|
||||
set_automatic_scrolling_active(m_hovered_component == Component::IncrementButton, m_automatic_scrolling_kind);
|
||||
}
|
||||
if (!m_scrubbing)
|
||||
return;
|
||||
|
||||
Reference in New Issue
Block a user