summaryrefslogtreecommitdiffstats
path: root/src/select-context.cpp
diff options
context:
space:
mode:
authorTed Gould <ted@gould.cx>2009-11-29 19:01:07 +0000
committerTed Gould <ted@gould.cx>2009-11-29 19:01:07 +0000
commit29d3c0b15028e61f176df3a75189bf0959d0d03e (patch)
tree727afe596c693a9bdd098d72618abd9ceb0d1969 /src/select-context.cpp
parentAdd the build dir dbus directory to grab some headerfiles for distcheck. (diff)
parenthopefully fix build on linux (diff)
downloadinkscape-29d3c0b15028e61f176df3a75189bf0959d0d03e.tar.gz
inkscape-29d3c0b15028e61f176df3a75189bf0959d0d03e.zip
Merging in from trunk
(bzr r8254.1.37)
Diffstat (limited to 'src/select-context.cpp')
-rw-r--r--src/select-context.cpp17
1 files changed, 7 insertions, 10 deletions
diff --git a/src/select-context.cpp b/src/select-context.cpp
index f58c034bd..606934ca6 100644
--- a/src/select-context.cpp
+++ b/src/select-context.cpp
@@ -212,7 +212,7 @@ sp_select_context_abort(SPEventContext *event_context)
seltrans->ungrab();
sc->moved = FALSE;
sc->dragging = FALSE;
- sp_event_context_snap_window_closed(event_context);
+ sp_event_context_discard_delayed_snap_event(event_context);
drag_escaped = 1;
if (sc->item) {
@@ -324,7 +324,6 @@ sp_select_context_item_handler(SPEventContext *event_context, SPItem *item, GdkE
// pass the event to root handler which will perform rubberband, shift-click, ctrl-click, ctrl-drag
} else {
sc->dragging = TRUE;
- sp_event_context_snap_window_open(event_context);
sc->moved = FALSE;
sp_canvas_force_full_redraw_after_interruptions(desktop->canvas, 5);
@@ -424,7 +423,7 @@ sp_select_context_root_handler(SPEventContext *event_context, GdkEvent *event)
desktop->setCurrentLayer(reinterpret_cast<SPObject *>(clicked_item));
sp_desktop_selection(desktop)->clear();
sc->dragging = false;
- sp_event_context_snap_window_closed(event_context);
+ sp_event_context_discard_delayed_snap_event(event_context);
sp_canvas_end_forced_full_redraws(desktop->canvas);
} else { // switch tool
@@ -495,9 +494,6 @@ sp_select_context_root_handler(SPEventContext *event_context, GdkEvent *event)
if (sc->button_press_ctrl || (sc->button_press_alt && !sc->button_press_shift && !selection->isEmpty())) {
// if it's not click and ctrl or alt was pressed (the latter with some selection
// but not with shift) we want to drag rather than rubberband
- if (sc->dragging == FALSE) {
- sp_event_context_snap_window_open(event_context);
- }
sc->dragging = TRUE;
sp_canvas_force_full_redraw_after_interruptions(desktop->canvas, 5);
@@ -539,7 +535,7 @@ sp_select_context_root_handler(SPEventContext *event_context, GdkEvent *event)
if (item_at_point && !selection->includes(item_at_point))
selection->set(item_at_point);
} // otherwise, do not change selection so that dragging selected-within-group items, as well as alt-dragging, is possible
- seltrans->grab(p, -1, -1, FALSE);
+ seltrans->grab(p, -1, -1, FALSE, TRUE);
sc->moved = TRUE;
}
if (!seltrans->isEmpty())
@@ -549,7 +545,7 @@ sp_select_context_root_handler(SPEventContext *event_context, GdkEvent *event)
ret = TRUE;
} else {
sc->dragging = FALSE;
- sp_event_context_snap_window_closed(event_context);
+ sp_event_context_discard_delayed_snap_event(event_context);
sp_canvas_end_forced_full_redraws(desktop->canvas);
}
} else {
@@ -598,7 +594,7 @@ sp_select_context_root_handler(SPEventContext *event_context, GdkEvent *event)
}
}
sc->dragging = FALSE;
- sp_event_context_snap_window_closed(event_context);
+ sp_event_context_discard_delayed_snap_event(event_context);
sp_canvas_end_forced_full_redraws(desktop->canvas);
if (sc->item) {
@@ -952,8 +948,9 @@ sp_select_context_root_handler(SPEventContext *event_context, GdkEvent *event)
}
}
// set cursor to default.
- if (!desktop->isWaitingCursor())
+ if (!desktop->isWaitingCursor()) {
gdk_window_set_cursor(GTK_WIDGET(sp_desktop_canvas(desktop))->window, event_context->cursor);
+ }
break;
default:
break;