diff --git a/core/src/main/java/edu/umd/cs/piccolo/event/PInputEventFilter.java b/core/src/main/java/edu/umd/cs/piccolo/event/PInputEventFilter.java index 9639b7a..0c2dbe5 100644 --- a/core/src/main/java/edu/umd/cs/piccolo/event/PInputEventFilter.java +++ b/core/src/main/java/edu/umd/cs/piccolo/event/PInputEventFilter.java @@ -104,11 +104,13 @@ if (aEvent.isHandled() && !acceptsAlreadyHandledEvents) return false; - if ((modifiers & andMask) != andMask || (modifiers & notMask) != 0) - return false; - - if (orMask != ALL_MODIFIERS_MASK && (modifiers & orMask) == 0) - return false; + if (modifiers != 0) { + if ((modifiers & andMask) != andMask || (modifiers & notMask) != 0) + return false; + + if (orMask != ALL_MODIFIERS_MASK && (modifiers & orMask) == 0) + return false; + } if (aEvent.isMouseEvent() && clickCount != -1 && clickCount != aEvent.getClickCount()) return false; diff --git a/core/src/test/java/edu/umd/cs/piccolo/event/PInputEventFilterTest.java b/core/src/test/java/edu/umd/cs/piccolo/event/PInputEventFilterTest.java index 3e6629b..af4a8db 100644 --- a/core/src/test/java/edu/umd/cs/piccolo/event/PInputEventFilterTest.java +++ b/core/src/test/java/edu/umd/cs/piccolo/event/PInputEventFilterTest.java @@ -207,7 +207,7 @@ } private PInputEvent buildTestEvent() { - return buildTestEvent(0); + return buildTestEvent(InputEvent.BUTTON1_MASK); } private PInputEvent buildTestEvent(int modifiers) {