From 49a274f32919fa63e96bb66e76b691afafda66ff Mon Sep 17 00:00:00 2001 From: Maximilian Albert Date: Thu, 16 Jul 2009 14:55:16 +0000 Subject: Implement guide behaviour as discussed on the mailing list (bzr r8293) --- src/select-context.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'src/select-context.cpp') diff --git a/src/select-context.cpp b/src/select-context.cpp index f58c034bd..aed594fee 100644 --- a/src/select-context.cpp +++ b/src/select-context.cpp @@ -952,8 +952,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; -- cgit v1.2.3 From eae8322c8b968bbf076323eb68707124bfc810d9 Mon Sep 17 00:00:00 2001 From: Diederik van Lierop Date: Sat, 18 Jul 2009 12:56:25 +0000 Subject: Make the snap delay mechanism easier to implement for the devs, and get rid of the related warning messages (bzr r8302) --- src/select-context.cpp | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) (limited to 'src/select-context.cpp') diff --git a/src/select-context.cpp b/src/select-context.cpp index aed594fee..a5f5202ae 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(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); @@ -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) { -- cgit v1.2.3 From ee832838951cb097685f88478d896db2a35f0efb Mon Sep 17 00:00:00 2001 From: Diederik van Lierop Date: Sun, 9 Aug 2009 09:02:00 +0000 Subject: When snapping while translating, use the bounding box corners of each selected item instead of the selection as a whole (fixes bug #404941) (bzr r8449) --- src/select-context.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/select-context.cpp') diff --git a/src/select-context.cpp b/src/select-context.cpp index a5f5202ae..606934ca6 100644 --- a/src/select-context.cpp +++ b/src/select-context.cpp @@ -535,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()) -- cgit v1.2.3