diff options
Diffstat (limited to 'src/verbs.cpp')
| -rw-r--r-- | src/verbs.cpp | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/verbs.cpp b/src/verbs.cpp index f01a3c79c..212fcf357 100644 --- a/src/verbs.cpp +++ b/src/verbs.cpp @@ -1125,21 +1125,27 @@ void SelectionVerb::perform(SPAction *action, void *data) bool handled = true; switch (reinterpret_cast<std::size_t>(data)) { case SP_VERB_SELECTION_UNION: + selection->toCurves(true); selection->pathUnion(); break; case SP_VERB_SELECTION_INTERSECT: + selection->toCurves(true); selection->pathIntersect(); break; case SP_VERB_SELECTION_DIFF: + selection->toCurves(true); selection->pathDiff(); break; case SP_VERB_SELECTION_SYMDIFF: + selection->toCurves(true); selection->pathSymDiff(); break; case SP_VERB_SELECTION_CUT: + selection->toCurves(true); selection->pathCut(); break; case SP_VERB_SELECTION_SLICE: + selection->toCurves(true); selection->pathSlice(); break; case SP_VERB_SELECTION_GROW: @@ -1253,6 +1259,7 @@ void SelectionVerb::perform(SPAction *action, void *data) tools_switch(dt, TOOLS_NODES); break; case SP_VERB_SELECTION_OUTLINE: + selection->toCurves(true); sp_selected_path_outline(dt); break; case SP_VERB_SELECTION_OUTLINE_LEGACY: @@ -1281,9 +1288,11 @@ void SelectionVerb::perform(SPAction *action, void *data) break; case SP_VERB_SELECTION_COMBINE: + selection->toCurves(true); selection->combine(); break; case SP_VERB_SELECTION_BREAK_APART: + selection->toCurves(true); selection->breakApart(); break; case SP_VERB_SELECTION_ARRANGE: |
