boolean (MouseEvent e) { Point point = e.getPoint(); if (point.x < 0 || point.x > myComponent.getWidth()) return true; if (point.y < 0 || point.y > myComponent.getHeight()) return true; repaintComponent(); BaseButtonBehavior.this.execute(e); ApplicationManager.getApplication().invokeLater(() -> { if (!myComponent.isShowing()) { setHovered(false); myMouseDeadzone.clear(); } }); return false; }