mirror of
https://github.com/ckaczor/azuredatastudio.git
synced 2026-01-21 01:25:37 -05:00
drag n drop bounding characters (pgsql fix) (#14376)
* specifies object handling for all current providers * implements the same for column dragndrop * adjusted test * adds pgsql provider name constant
This commit is contained in:
committed by
GitHub
parent
1d60287795
commit
733c3628a1
@@ -9,7 +9,7 @@ import { IConnectionManagementService } from 'sql/platform/connection/common/con
|
||||
import { ITree, IDragAndDrop, IDragOverReaction, DRAG_OVER_ACCEPT_BUBBLE_DOWN, DRAG_OVER_REJECT } from 'vs/base/parts/tree/browser/tree';
|
||||
import { DragMouseEvent } from 'vs/base/browser/mouseEvent';
|
||||
import { TreeUpdateUtils } from 'sql/workbench/services/objectExplorer/browser/treeUpdateUtils';
|
||||
import { UNSAVED_GROUP_ID } from 'sql/platform/connection/common/constants';
|
||||
import { UNSAVED_GROUP_ID, mssqlProviderName, pgsqlProviderName } from 'sql/platform/connection/common/constants';
|
||||
import { DataTransfers, IDragAndDropData } from 'vs/base/browser/dnd';
|
||||
import { TreeNode } from 'sql/workbench/services/objectExplorer/common/treeNode';
|
||||
import { AsyncServerTree } from 'sql/workbench/services/objectExplorer/browser/asyncServerTree';
|
||||
@@ -102,18 +102,29 @@ export class ServerTreeDragAndDrop implements IDragAndDrop {
|
||||
let providerName = this.getProviderNameFromElement(element);
|
||||
if (providerName === 'KUSTO') {
|
||||
finalString = element.nodeTypeId !== 'Function' && escapedName.indexOf(' ') > 0 ? `[@"${escapedName}"]` : escapedName;
|
||||
} else {
|
||||
} else if (providerName === mssqlProviderName) {
|
||||
finalString = escapedSchema ? `[${escapedSchema}].[${escapedName}]` : `[${escapedName}]`;
|
||||
} else if (providerName === pgsqlProviderName) {
|
||||
finalString = element.metadata.schema ? `"${element.metadata.schema}"."${element.metadata.name}"` : `"${element.metadata.name}"`;
|
||||
} else {
|
||||
finalString = element.metadata.schema ? `${element.metadata.schema}.${element.metadata.name}` : `${element.metadata.name}`;
|
||||
}
|
||||
originalEvent.dataTransfer.setData(DataTransfers.RESOURCES, JSON.stringify([`${element.nodeTypeId}:${element.id}?${finalString}`]));
|
||||
}
|
||||
if (supportsFolderNodeNameDrop(element.nodeTypeId, element.label)) {
|
||||
// get children
|
||||
let returnString = '';
|
||||
let providerName = this.getProviderNameFromElement(element);
|
||||
for (let child of element.children) {
|
||||
escapedSchema = escapeString(child.metadata.schema);
|
||||
escapedName = escapeString(child.metadata.name);
|
||||
finalString = escapedSchema ? `[${escapedSchema}].[${escapedName}]` : `[${escapedName}]`;
|
||||
if (providerName === mssqlProviderName) {
|
||||
finalString = escapedSchema ? `[${escapedSchema}].[${escapedName}]` : `[${escapedName}]`;
|
||||
} else if (providerName === pgsqlProviderName) {
|
||||
finalString = child.metadata.schema ? `"${child.metadata.schema}"."${child.metadata.name}"` : `"${child.metadata.name}"`;
|
||||
} else {
|
||||
finalString = child.metadata.schema ? `${child.metadata.schema}.${child.metadata.name}` : `${child.metadata.name}`;
|
||||
}
|
||||
returnString = returnString ? `${returnString},${finalString}` : `${finalString}`;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user