resource label update (#13129)

* resource label update

* preserve existing behavior

* fix connection group color

* comments
This commit is contained in:
Alan Ren
2020-10-29 14:42:01 -07:00
committed by GitHub
parent 8c956cdb79
commit 7819d25c95
28 changed files with 138 additions and 72 deletions

View File

@@ -244,7 +244,7 @@ export class ConnectionBrowserView extends Disposable implements IPanelView {
export interface ITreeItemFromProvider {
readonly element: ITreeItem;
readonly treeId?: string;
getChildren?(): Promise<ITreeItemFromProvider[]>
getChildren?(): Promise<ITreeItemFromProvider[]>;
}
export function instanceOfITreeItemFromProvider(obj: any): obj is ITreeItemFromProvider {
@@ -425,7 +425,11 @@ class DataSource implements IAsyncDataSource<TreeModel, TreeElement> {
public get expandableTreeNodes(): TreeElement[] {
return this.treeNodes.filter(node => {
return instanceOfITreeItemFromProvider(node) && node.element.collapsibleState !== TreeItemCollapsibleState.None;
return (node instanceof TreeModel)
|| (node instanceof ConnectionDialogTreeProviderElement)
|| (node instanceof SavedConnectionNode)
|| (node instanceof ConnectionProfileGroup)
|| (instanceOfITreeItemFromProvider(node) && node.element.collapsibleState !== TreeItemCollapsibleState.None);
});
}
@@ -440,11 +444,7 @@ class DataSource implements IAsyncDataSource<TreeModel, TreeElement> {
children = (children as (ConnectionProfile | ConnectionProfileGroup)[]).filter(item => {
return (item instanceof ConnectionProfileGroup) || this._filterRegex.test(item.title);
});
} else if (
!(element instanceof TreeModel) &&
!(element instanceof TreeNode) &&
!(element instanceof ConnectionDialogTreeProviderElement)
) {
} else if (instanceOfITreeItemFromProvider(element)) {
children = (children as ITreeItemFromProvider[]).filter(item => {
return item.element.collapsibleState !== TreeItemCollapsibleState.None || this._filterRegex.test(item.element.label.label);
});

View File

@@ -43,6 +43,7 @@ class ConnectionProfileGroupTemplate extends Disposable {
set(element: ConnectionProfileGroup) {
let rowElement = findParentElement(this._root, 'monaco-list-row');
if (rowElement) {
rowElement.style.color = element.textColor;
if (element.color) {
rowElement.style.background = element.color;
} else {