From f36cbed4b3f685a59f69dfd7b4534fe5a8da4bcf Mon Sep 17 00:00:00 2001 From: Nicolas Dufour Date: Fri, 23 Nov 2012 20:46:45 +0100 Subject: UI. Fix for Bug #1072007 (Mouse scroll zoom depends on if the cursor is over an object). (bzr r11893) --- src/display/canvas-arena.cpp | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'src/display/canvas-arena.cpp') diff --git a/src/display/canvas-arena.cpp b/src/display/canvas-arena.cpp index 809f14500..8e25c1843 100644 --- a/src/display/canvas-arena.cpp +++ b/src/display/canvas-arena.cpp @@ -316,13 +316,17 @@ sp_canvas_arena_event (SPCanvasItem *item, GdkEvent *event) ret = sp_canvas_arena_send_event (arena, event); break; - case GDK_SCROLL: - if (event->scroll.state & GDK_CONTROL_MASK) { + case GDK_SCROLL: { + Inkscape::Preferences *prefs = Inkscape::Preferences::get(); + bool wheelzooms = prefs->getBool("/options/wheelzooms/value"); + bool ctrl = (event->scroll.state & GDK_CONTROL_MASK); + if ((ctrl && !wheelzooms) || (!ctrl && wheelzooms)) { /* Zoom is emitted by the canvas as well, ignore here */ return FALSE; } ret = sp_canvas_arena_send_event (arena, event); break; + } default: /* Just send event */ -- cgit v1.2.3