summaryrefslogtreecommitdiffstats
path: root/src/pencil-context.cpp
diff options
context:
space:
mode:
authorDiederik van Lierop <mailat-signdiedenrezidotnl>2010-08-22 07:33:26 +0000
committerDiederik van Lierop <mailat-signdiedenrezidotnl>2010-08-22 07:33:26 +0000
commit184ca395b0e06c2569640f8bb325f28917cf04e3 (patch)
treebb3b1a23d5aaa818da45f1a5cd8a29b653c7b799 /src/pencil-context.cpp
parentWhen doing a constrained snap, then don't try snapping the mouse pointer itse... (diff)
downloadinkscape-184ca395b0e06c2569640f8bb325f28917cf04e3.tar.gz
inkscape-184ca395b0e06c2569640f8bb325f28917cf04e3.zip
Snapmanager in pencil tool: setup() must be followed by unSetup() to clear pointers
(bzr r9720)
Diffstat (limited to 'src/pencil-context.cpp')
-rw-r--r--src/pencil-context.cpp7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/pencil-context.cpp b/src/pencil-context.cpp
index 845f22a21..5d89c9715 100644
--- a/src/pencil-context.cpp
+++ b/src/pencil-context.cpp
@@ -263,13 +263,14 @@ pencil_handle_button_press(SPPencilContext *const pc, GdkEventButton const &beve
default:
/* Set first point of sequence */
SnapManager &m = desktop->namedview->snap_manager;
- m.setup(desktop);
if (bevent.state & GDK_CONTROL_MASK) {
+ m.setup(desktop);
if (!(bevent.state & GDK_SHIFT_MASK)) {
m.freeSnapReturnByRef(p, Inkscape::SNAPSOURCE_NODE_HANDLE);
}
spdc_create_single_dot(event_context, p, "/tools/freehand/pencil", bevent.state);
+ m.unSetup();
ret = true;
break;
}
@@ -277,7 +278,7 @@ pencil_handle_button_press(SPPencilContext *const pc, GdkEventButton const &beve
p = anchor->dp;
desktop->messageStack()->flash(Inkscape::NORMAL_MESSAGE, _("Continuing selected path"));
} else {
-
+ m.setup(desktop);
if (!(bevent.state & GDK_SHIFT_MASK)) {
// This is the first click of a new curve; deselect item so that
// this curve is not combined with it (unless it is drawn from its
@@ -289,8 +290,8 @@ pencil_handle_button_press(SPPencilContext *const pc, GdkEventButton const &beve
desktop->messageStack()->flash(Inkscape::NORMAL_MESSAGE, _("Appending to selected path"));
m.freeSnapReturnByRef(p, Inkscape::SNAPSOURCE_NODE_HANDLE);
}
+ m.unSetup();
}
- m.unSetup();
pc->sa = anchor;
spdc_set_startpoint(pc, p);
ret = TRUE;