From: johncoswell Date: Sun, 30 Jul 2006 00:14:42 +0000 (+0000) Subject: Fix bug where deleting a node broke the symmetry of neighboring smooth nodes and... X-Git-Url: https://git.tokkee.org/?a=commitdiff_plain;h=be6b986fa79a3063539b1edf05fc21757116e334;p=inkscape.git Fix bug where deleting a node broke the symmetry of neighboring smooth nodes and failed to convert those nodes to cusp nodes --- diff --git a/ChangeLog b/ChangeLog index f62d5305b..a1a035a73 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2006-07-29 John Bintz + + * src/nodepath.cpp: + + Fix bug where deleting a node broke the symmetry of neighboring + smooth nodes and failed to convert those nodes to cusp nodes + 2006-06-29 MenTaLguY * src/sp-object.cpp: diff --git a/src/nodepath.cpp b/src/nodepath.cpp index 3019b492e..84c990bff 100644 --- a/src/nodepath.cpp +++ b/src/nodepath.cpp @@ -1975,6 +1975,12 @@ void sp_node_delete_preserve(GList *nodes_to_delete) gint ret; ret = sp_bezier_fit_cubic (bez, adata, data.size(), error); + //if these nodes are smooth or symmetrical, the endpoints will be thrown out of sync. + //make sure these nodes are changed to cusp nodes so that, once the endpoints are moved, + //the resulting nodes behave as expected. + sp_nodepath_convert_node_type(sample_cursor, Inkscape::NodePath::NODE_CUSP); + sp_nodepath_convert_node_type(sample_end, Inkscape::NodePath::NODE_CUSP); + //adjust endpoints sample_cursor->n.pos = bez[1]; sample_end->p.pos = bez[2];