1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 08:48:11 +00:00

PDFViewer: Take the mousewheel delta into account for scrolling

We now respect the system-wide setting for scroll speed, where we would
previously use a fixed step.
This commit is contained in:
Julian Offenhäuser 2022-10-27 19:50:00 +02:00 committed by Andreas Kling
parent 9b1331a984
commit 0308300b78

View file

@ -189,14 +189,15 @@ void PDFViewer::mousewheel_event(GUI::MouseEvent& event)
}
auto& scrollbar = event.shift() ? horizontal_scrollbar() : vertical_scrollbar();
auto delta = abs(event.wheel_delta_y() * 20);
if (m_page_view_mode == PageViewMode::Multiple) {
if (scrolled_down) {
if (scrollbar.value() != scrollbar.max())
scrollbar.increase_slider_by(20);
scrollbar.increase_slider_by(delta);
} else {
if (scrollbar.value() > 0)
scrollbar.decrease_slider_by(20);
scrollbar.decrease_slider_by(delta);
}
} else {
if (scrolled_down) {
@ -206,7 +207,7 @@ void PDFViewer::mousewheel_event(GUI::MouseEvent& event)
scrollbar.set_value(0);
}
} else {
scrollbar.increase_slider_by(20);
scrollbar.increase_slider_by(delta);
}
} else {
if (scrollbar.value() == 0) {
@ -215,7 +216,7 @@ void PDFViewer::mousewheel_event(GUI::MouseEvent& event)
scrollbar.set_value(scrollbar.max());
}
} else {
scrollbar.decrease_slider_by(20);
scrollbar.decrease_slider_by(delta);
}
}
}