void (@NotNull MouseWheelEvent e, @Nullable Consumer<? super MouseWheelEvent> alternative) { JScrollBar bar = !myScrollEnabled.get() ? null : getEventScrollBar(e); if (bar == null) { if (alternative != null) alternative.accept(e); return; } InertialAnimator animator = isHorizontalScroll(e) ? horizontal : vertical; int value = bar.getValue(); int delta = (int)getDelta(bar, e, animator.myTargetValue); if (delta == 0) { return; } animator.start(value, value + delta, bar::setValue, shouldStop(bar), ScrollAnimationSettings.SETTINGS); e.consume(); }