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

    if (ChangeListManager.getInstance(project).isFreezedWithNotification(null)) {
      return;
    }

    VirtualFile file = VcsContextUtil.selectedFile(e.getDataContext());
    if (file == null) return;
    AbstractVcs vcs = ChangesUtil.getVcsForFile(file, project);
    if (vcs == null) return;
    DiffProvider provider = vcs.getDiffProvider();
    if (provider == null) return;
    Editor editor = e.getData(CommonDataKeys.EDITOR);

    getExecutor(provider, file, project, editor).showDiff();
  }
@Override
  public void actionPerformed(@NotNull AnActionEvent e)