summaryrefslogtreecommitdiffstats
path: root/src/ui/tool
diff options
context:
space:
mode:
Diffstat (limited to 'src/ui/tool')
-rw-r--r--src/ui/tool/control-point.cpp2
-rw-r--r--src/ui/tool/node.cpp6
2 files changed, 6 insertions, 2 deletions
diff --git a/src/ui/tool/control-point.cpp b/src/ui/tool/control-point.cpp
index 85475d2d5..54fc4718f 100644
--- a/src/ui/tool/control-point.cpp
+++ b/src/ui/tool/control-point.cpp
@@ -52,7 +52,7 @@ Geom::Point ControlPoint::_drag_origin(Geom::infinity(), Geom::infinity());
int const ControlPoint::_grab_event_mask = (GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK |
GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_KEY_PRESS_MASK |
- GDK_KEY_RELEASE_MASK);
+ GDK_KEY_RELEASE_MASK | GDK_SCROLL_MASK | GDK_SMOOTH_SCROLL_MASK);
bool ControlPoint::_drag_initiated = false;
bool ControlPoint::_event_grab = false;
diff --git a/src/ui/tool/node.cpp b/src/ui/tool/node.cpp
index 9223b44de..49ee0cb1d 100644
--- a/src/ui/tool/node.cpp
+++ b/src/ui/tool/node.cpp
@@ -980,7 +980,11 @@ bool Node::_eventHandler(Inkscape::UI::Tools::ToolBase *event_context, GdkEvent
dir = 1;
} else if (event->scroll.direction == GDK_SCROLL_DOWN) {
dir = -1;
- } else break;
+ } else if (event->scroll.direction == GDK_SCROLL_SMOOTH) {
+ dir = event->scroll.delta_y > 0 ? -1 : 1;
+ } else {
+ break;
+ }
if (held_control(event->scroll)) {
_linearGrow(dir);
} else {