void (boolean fromDifferences, @NotNull ScrollToPolicy lastChange, @NotNull Runnable navigationTask) { if (fromDifferences) { assert myCurrentScrollToPolicy == null; myCurrentScrollToPolicy = lastChange; try { navigationTask.run(); updateRequest(); } finally { myCurrentScrollToPolicy = null; } } else { navigationTask.run(); updateRequest(); } }