@Override
    public void deleteElement(@NotNull DataContext dataContext) {
      Object[] objs = PlatformCoreDataKeys.SELECTED_ITEMS.getData(dataContext);
      PsiDirectory[] allElements = objs != null ? getSelectedDirectories(objs) : PsiDirectory.EMPTY_ARRAY;
      List<PsiElement> validElements = new ArrayList<>();
      for (PsiElement psiElement : allElements) {
        if (psiElement != null && psiElement.isValid()) validElements.add(psiElement);
      }
      final PsiElement[] elements = PsiUtilCore.toPsiElementArray(validElements);

      LocalHistoryAction a = LocalHistory.getInstance().startAction(IdeBundle.message("progress.deleting"));
      try {
        DeleteHandler.deletePsiElement(elements, getProject());
      }
      finally {
        a.finish();
      }
    }
@Override
    public void deleteElement(@NotNull DataContext dataContext)