summaryrefslogtreecommitdiffstats
path: root/src/ui/tools/tool-base.cpp
diff options
context:
space:
mode:
authorAntonio Ospite <ao2@ao2.it>2018-10-31 16:37:16 +0000
committerAntonio Ospite <ao2@ao2.it>2018-11-01 17:22:44 +0000
commite521fdc704b7640f6cfee5f9a519a3d780445f2b (patch)
treecedafa7036a719e2c5628ce331e994c5830c8fc2 /src/ui/tools/tool-base.cpp
parentKnotHolder: fix knots selection status when a knot is clicked without Shift (diff)
downloadinkscape-e521fdc704b7640f6cfee5f9a519a3d780445f2b.tar.gz
inkscape-e521fdc704b7640f6cfee5f9a519a3d780445f2b.zip
ToolBase::root_handler: fix keyboard movement for KEY_Up and KEY_Down events
Moving shape knots up and down with the keyboard moves them in the opposite direction when the Y axis goes downwards. This happens because commit 1fa0c72b66 (New option to invert y-axis, 2018-09-12) forgot to handle Y direction in src/ui/tools/tool-base.cpp. Fix the issue by applying the Y axis direction factor just like it's done in src/ui/tool/control-point-selection.cpp.
Diffstat (limited to 'src/ui/tools/tool-base.cpp')
-rw-r--r--src/ui/tools/tool-base.cpp8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/ui/tools/tool-base.cpp b/src/ui/tools/tool-base.cpp
index 8637b640d..20aad1424 100644
--- a/src/ui/tools/tool-base.cpp
+++ b/src/ui/tools/tool-base.cpp
@@ -651,10 +651,10 @@ bool ToolBase::root_handler(GdkEvent* event) {
acceleration, desktop->getCanvas()));
gobble_key_events(get_latin_keyval(&event->key), GDK_CONTROL_MASK);
- this->desktop->scroll_relative(Geom::Point(0, i));
+ this->desktop->scroll_relative(Geom::Point(0, -i * desktop->yaxisdir()));
ret = TRUE;
} else {
- ret = _keyboardMove(event->key, Geom::Point(0, 1));
+ ret = _keyboardMove(event->key, Geom::Point(0, -desktop->yaxisdir()));
}
break;
@@ -681,10 +681,10 @@ bool ToolBase::root_handler(GdkEvent* event) {
acceleration, desktop->getCanvas()));
gobble_key_events(get_latin_keyval(&event->key), GDK_CONTROL_MASK);
- this->desktop->scroll_relative(Geom::Point(0, -i));
+ this->desktop->scroll_relative(Geom::Point(0, i * desktop->yaxisdir()));
ret = TRUE;
} else {
- ret = _keyboardMove(event->key, Geom::Point(0, -1));
+ ret = _keyboardMove(event->key, Geom::Point(0, desktop->yaxisdir()));
}
break;