summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: 04a3c56)
raw | patch | inline | side by side (parent: 04a3c56)
author | johncoswell <johncoswell@users.sourceforge.net> | |
Wed, 28 Mar 2007 00:49:11 +0000 (00:49 +0000) | ||
committer | johncoswell <johncoswell@users.sourceforge.net> | |
Wed, 28 Mar 2007 00:49:11 +0000 (00:49 +0000) |
src/flood-context.cpp | patch | blob | history |
diff --git a/src/flood-context.cpp b/src/flood-context.cpp
index 40c6c4190a610a8e792a94cc25b429735edbdda6..f377d6b943c016ce5a1f6623dfc7252fe0ffd28f 100644 (file)
--- a/src/flood-context.cpp
+++ b/src/flood-context.cpp
@@ -784,8 +784,16 @@ static gint sp_flood_context_root_handler(SPEventContext *event_context, GdkEven
// Since setWaitingCursor runs main loop iterations, we may have already left this tool!
// So check if the tool is valid before doing anything
+ Inkscape::Selection *selection = sp_desktop_selection(desktop);
+ GSList *items = g_slist_copy((GSList *) selection->itemList());
+
sp_flood_do_flood_fill(event_context, event);
-
+
+ if (event->button.state & GDK_SHIFT_MASK) {
+ selection->addList(items);
+ sp_selected_path_union();
+ }
+
// restore cursor when done; note that it may already be different if e.g. user
// switched to another tool during interruptible tracing or drawing, in which case do nothing
desktop->clearWaitingCursor();