void (@NotNull ScrollType scrollType) { if (LOG.isTraceEnabled()) { LOG.trace(new Throwable()); } Editor editor = mySupplier.getEditor(); VisualPosition visualPosition = editor.getCaretModel().getVisualPosition(); AsyncEditorLoader.performWhenLoaded(editor, () -> { LogicalPosition logicalPosition = editor.visualToLogicalPosition(visualPosition); for (ScrollRequestListener listener : myScrollRequestListeners) { listener.scrollRequested(logicalPosition, scrollType); } scrollTo(mySupplier.getScrollingHelper().calculateScrollingLocation(editor, visualPosition), scrollType); }); }