LibGUI: Increase slider acceleration with Ctrl (#3499)

When holding Ctrl and scrolling on a slider widget, the scrolling
acceleration gets increased.

This can make it faster to get to the knob location you want to
get to. :^)
This commit is contained in:
Jakob-Niklas See
2020-09-19 16:45:51 +02:00
committed by GitHub
parent 82b0171812
commit eeb3ef405c

View File

@@ -159,10 +159,15 @@ void Slider::mouseup_event(MouseEvent& event)
void Slider::mousewheel_event(MouseEvent& event) void Slider::mousewheel_event(MouseEvent& event)
{ {
auto acceleration_modifier = m_step;
if (event.modifiers() == KeyModifier::Mod_Ctrl && knob_size_mode() == KnobSizeMode::Fixed)
acceleration_modifier *= 6;
if (orientation() == Orientation::Horizontal) if (orientation() == Orientation::Horizontal)
set_value(value() - event.wheel_delta() * m_step); set_value(value() - event.wheel_delta() * acceleration_modifier);
else else
set_value(value() + event.wheel_delta() * m_step); set_value(value() + event.wheel_delta() * acceleration_modifier);
Widget::mousewheel_event(event); Widget::mousewheel_event(event);
} }