Forráskód Böngészése

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.
Julian Offenhäuser 2 éve
szülő
commit
0308300b78
1 módosított fájl, 5 hozzáadás és 4 törlés
  1. 5 4
      Userland/Applications/PDFViewer/PDFViewer.cpp

+ 5 - 4
Userland/Applications/PDFViewer/PDFViewer.cpp

@@ -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);
             }
         }
     }