@Override
  public void actionPerformed(@NotNull AnActionEvent e) {
    Project project = e.getProject();
    if (project == null) return;

    List<FilePath> symlinkedPaths = getContextSymlinkedPaths(project, getSelectedFile(e.getDataContext()));
    if (symlinkedPaths != null && canShowNewFileHistory(project, symlinkedPaths)) {
      showNewFileHistory(project, symlinkedPaths);
      return;
    }

    List<FilePath> selectedFiles = getSelectedPaths(e.getDataContext()).toList();
    if (canShowNewFileHistory(project, selectedFiles)) {
      showNewFileHistory(project, selectedFiles);
      return;
    }

    if (selectedFiles.size() == 1) {
      FilePath path = ContainerUtil.getOnlyItem(selectedFiles);
      VirtualFile fileOrParent = getExistingFileOrParent(path);
      if (fileOrParent == null) return;

      AbstractVcs vcs = ChangesUtil.getVcsForFile(fileOrParent, project);
      if (vcs == null) return;

      showOldFileHistory(project, vcs, path);
    }
  }
@Override
  public void actionPerformed(@NotNull AnActionEvent e)