@Override
    public void doDropFiles(List<? extends File> files, @NotNull TreePath target) {
      ApplicationManager.getApplication().executeOnPooledThread(() -> {
        var virtualFiles = getVirtualFiles(files);
        ReadAction.nonBlocking(() -> new DropContext(psiFilesFromVirtualFiles(virtualFiles), getPsiElement(target), null))
          .finishOnUiThread(ModalityState.defaultModalityState(), context -> doDrop(context))
          .submit(AppExecutorUtil.getAppExecutorService());
      });
    }
@Override
    public void doDropFiles(List<? extends File> files, @NotNull TreePath target)