svoid addAWTEventListener_inFront(AWTEventListener listener, long eventMask) { if (listener == null) ret; swing { var tk = awtToolkit(); EventListener[] otherListeners = tk.getAWTEventListeners(); new LPair listenersWithMask; fOr (var l : otherListeners) if (l cast AWTEventListenerProxy) { listenersWithMask.add(pair(l.getListener(), l.getEventMask())); } else { warn("Can't get event listener mask: " + l); ret; } fOr (var l : listenersWithMask) tk.removeAWTEventListener(l.a); tk.addAWTEventListener(listener, eventMask); fOr (var l : listenersWithMask) tk.addAWTEventListener(l.a, l.b); } }