void (MouseEvent e) { Point releasedAt = e.getPoint(); SwingUtilities.convertPointToScreen(releasedAt, e.getComponent()); Point clickedAt = pressPoint; lastClickPoint = clickedAt; pressPoint = null; if (e.isConsumed() || clickedAt == null || e.isPopupTrigger() || !e.getComponent().contains(e.getPoint())) { return; } if ((allowDragWhileClicking || isWithinEps(releasedAt, clickedAt)) && onClick(e, clickCount)) { e.consume(); } }