summaryrefslogtreecommitdiffstats
path: root/src/knot.cpp
diff options
context:
space:
mode:
authorJabier Arraiza Cenoz <jabier.arraiza@marker.es>2015-07-25 19:12:30 +0000
committerJabiertxof <jtx@jtx.marker.es>2015-07-25 19:12:30 +0000
commitf0c58835ba91977fd0df1aa9bc4244f803cdcd16 (patch)
tree4b605918b7db00d4bfee9dd6eba758f74ff88f17 /src/knot.cpp
parentRemoves extra unnecesary code pointed by Nathan Hurst (diff)
parentSPKnot no longer consumes all GDK_KEY_PRESS events (diff)
downloadinkscape-f0c58835ba91977fd0df1aa9bc4244f803cdcd16.tar.gz
inkscape-f0c58835ba91977fd0df1aa9bc4244f803cdcd16.zip
update to trunk
(bzr r13973.1.20)
Diffstat (limited to 'src/knot.cpp')
-rw-r--r--src/knot.cpp9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/knot.cpp b/src/knot.cpp
index b3813ab53..92d14afb9 100644
--- a/src/knot.cpp
+++ b/src/knot.cpp
@@ -206,6 +206,8 @@ static int sp_knot_handler(SPCanvasItem */*item*/, GdkEvent *event, SPKnot *knot
return true;
}
+ bool key_press_event_unconsumed = FALSE;
+
knot_ref(knot);
Inkscape::Preferences *prefs = Inkscape::Preferences::get();
@@ -355,6 +357,7 @@ static int sp_knot_handler(SPCanvasItem */*item*/, GdkEvent *event, SPKnot *knot
break;
default:
consumed = FALSE;
+ key_press_event_unconsumed = TRUE;
break;
}
break;
@@ -364,7 +367,11 @@ static int sp_knot_handler(SPCanvasItem */*item*/, GdkEvent *event, SPKnot *knot
knot_unref(knot);
- return consumed || grabbed;
+ if (key_press_event_unconsumed) {
+ return false; // e.g. in case "%" was pressed to toggle snapping, or Q for quick zoom (while dragging a handle)
+ } else {
+ return consumed || grabbed;
+ }
}
void sp_knot_handler_request_position(GdkEvent *event, SPKnot *knot) {