@Override
    protected void doPerform(DirectoryHistoryDialogModel model, List<DirectoryChange> selected) {
      LocalHistoryCounter.INSTANCE.logActionInvoked(LocalHistoryCounter.ActionKind.Diff, LocalHistoryCounter.Kind.Directory);

      final Set<DirectoryChange> selectedSet = new HashSet<>(selected);

      int index = 0;
      List<Change> changes = new ArrayList<>();
      for (DirectoryChange change : iterFileChanges()) {
        if (selectedSet.contains(change)) index = changes.size();
        changes.add(change);
      }

      ShowDiffAction.showDiffForChange(myProject, changes, index, new ShowDiffContext(DiffDialogHints.FRAME));
    }
@Override
    protected void doPerform(DirectoryHistoryDialogModel model, List<DirectoryChange> selected)