X-Git-Url: https://gerrit.simantics.org/r/gitweb?p=simantics%2Fplatform.git;a=blobdiff_plain;f=bundles%2Forg.simantics.scenegraph%2Fsrc%2Forg%2Fsimantics%2Fscenegraph%2Fg2d%2Fevents%2FEventQueue.java;h=d3ab613557cc874858b40c36d76d4cf6555e57c3;hp=9b0980600990695e785e2d1040c58ae6e13f4a16;hb=162f92e52a7efa9fd0067666be6e9dfd28ec1e51;hpb=9f207b4d5d34917ca528684bd3268a0cf4eff331 diff --git a/bundles/org.simantics.scenegraph/src/org/simantics/scenegraph/g2d/events/EventQueue.java b/bundles/org.simantics.scenegraph/src/org/simantics/scenegraph/g2d/events/EventQueue.java index 9b0980600..d3ab61355 100644 --- a/bundles/org.simantics.scenegraph/src/org/simantics/scenegraph/g2d/events/EventQueue.java +++ b/bundles/org.simantics.scenegraph/src/org/simantics/scenegraph/g2d/events/EventQueue.java @@ -42,20 +42,19 @@ public class EventQueue implements IEventQueue, IEventHandler { return EventTypes.AnyMask; } - /** - * - */ - private MouseWheelMovedEvent lastMouseWheelMovedEvent; - private static final String DISABLE_DUPLICATE_REMOVAL = "org.simantics.scenegraph.g2d.events.disableDuplicateMouseWheelEvent"; private static final boolean IGNORE_DUPLICATE = !Boolean.parseBoolean(System.getProperty(DISABLE_DUPLICATE_REMOVAL)); private boolean ignoreDuplicateMouseWheelMovedEvent(Event e) { if (IGNORE_DUPLICATE && e instanceof MouseWheelMovedEvent) { - if (e.time > 0 && (lastMouseWheelMovedEvent != null && lastMouseWheelMovedEvent.time < 0)) { + MouseWheelMovedEvent event = (MouseWheelMovedEvent) e; + // if (e.time > 0 && (lastMouseWheelMovedEvent != null && lastMouseWheelMovedEvent.time < 0)) { + // apparently this is a better way to distinguish between SWT & AWT events + // SWT based event constructs the scrollAmount to = 0 + // See org.simantics.g2d.event.adapter.SWTMouseEventAdapter.mouseScrolled(MouseEvent) L171 + if (event.scrollAmount != MouseWheelMovedEvent.SCROLL_AMOUNT_ZERO) { return true; } - lastMouseWheelMovedEvent = (MouseWheelMovedEvent) e; } return false; }