private void runWithScrollPolicy(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();
    }
  }
private void runWithScrollPolicy(boolean fromDifferences, @NotNull ScrollToPolicy lastChange, @NotNull Runnable navigationTask)