boolean (DnDAction action, @NotNull Point dragOrigin) { if ((action.getActionId() & DnDConstants.ACTION_COPY_OR_MOVE) == 0) return false; var selectedObjects = getSelectedUserObjects(); for (Object object : selectedObjects) { if (object instanceof AbstractPsiBasedNode<?> || object instanceof AbstractModuleNode) { return true; } } DataContext dataContext = DataManager.getInstance().getDataContext(myTree); return canDrag(dataContext, action.getActionId()); }