diff --git a/extensions/data-workspace/src/common/workspaceTreeDataProvider.ts b/extensions/data-workspace/src/common/workspaceTreeDataProvider.ts index a40b0377dc..efb6b10592 100644 --- a/extensions/data-workspace/src/common/workspaceTreeDataProvider.ts +++ b/extensions/data-workspace/src/common/workspaceTreeDataProvider.ts @@ -115,6 +115,14 @@ export class WorkspaceTreeDataProvider implements vscode.TreeDataProvider { + // Don't do anything if trying to drag the project node since it isn't supported. Because canSelectMany is set to false for WorkspaceTreeDataProvider, + // treeItems will only contain one treeItem, so we only need to check the first one in the list. + const relativePath = treeItems[0].element?.relativeProjectUri?.fsPath?.substring(1); // remove leading slash + const projBaseName = path.basename(treeItems[0].element?.projectFileUri?.fsPath, path.extname(treeItems[0].element?.projectFileUri?.fsPath)); + if (relativePath === projBaseName) { + return; + } + dataTransfer.set('application/vnd.code.tree.WorkspaceTreeDataProvider', new vscode.DataTransferItem(treeItems.map(t => t.element))); }