@RequiresEdt
  public static Boolean showAndGetApplyPatch(@NotNull Project project, @NotNull File file) {
    VirtualFile vFile = VfsUtil.findFileByIoFile(file, true);
    String patchPath = file.getPath();
    if (vFile == null) {
      VcsNotifier.getInstance(project).notifyWeakError(PATCH_APPLY_CANNOT_FIND_PATCH_FILE,
                                                       VcsBundle.message("patch.apply.can.t.find.patch.file.warning", HtmlChunk.text(patchPath)));
      return false;
    }
    if (!isPatchFile(vFile)) {
      VcsNotifier.getInstance(project).notifyWeakError(PATCH_APPLY_NOT_PATCH_FILE,
                                                       VcsBundle.message("patch.apply.not.patch.type.file.error", HtmlChunk.text(vFile.getPath())));
      return false;
    }

    return showAndGetApplyPatch(project, new ApplyPatchFile(vFile));
  }
@RequiresEdt
  public static Boolean showAndGetApplyPatch(@NotNull Project project, @NotNull File file)