diff --git a/src/commands/registerCommands.ts b/src/commands/registerCommands.ts index 462cc85..c417423 100644 --- a/src/commands/registerCommands.ts +++ b/src/commands/registerCommands.ts @@ -24,7 +24,7 @@ import { refreshUsersList } from "./users/refreshUsersList"; import { viewUserPrefs } from "./users/viewUserPrefs"; import { editPermission } from "./database/permissions/editPermission"; import { setActiveProject } from "./project/setActiveProject"; -import { removeProject } from './project/removeProject'; +import { removeProject } from "./project/removeProject"; class CommandRegistrar { constructor(private readonly context: ExtensionContext) {} @@ -57,7 +57,7 @@ export function registerCommands(context: ExtensionContext): void { }; /** General **/ - registerCommand("Connect", connectAppwrite); + registerCommand("Connect", connectAppwrite, "all"); /** Users **/ registerCommand("openUserInConsole", openUserInConsole); diff --git a/src/tree/projects/ProjectsTreeItemProvider.ts b/src/tree/projects/ProjectsTreeItemProvider.ts index 1e4ff91..b6a27ca 100644 --- a/src/tree/projects/ProjectsTreeItemProvider.ts +++ b/src/tree/projects/ProjectsTreeItemProvider.ts @@ -1,6 +1,7 @@ import * as vscode from "vscode"; -import { getActiveProjectId, getAppwriteProjects } from '../../settings'; -import { ProjectTreeItem } from './ProjectTreeItem'; +import { getActiveProjectId, getAppwriteProjects } from "../../settings"; +import { refreshTree } from "../../utils/refreshTree"; +import { ProjectTreeItem } from "./ProjectTreeItem"; export class ProjectsTreeItemProvider implements vscode.TreeDataProvider { private _onDidChangeTreeData: vscode.EventEmitter = new vscode.EventEmitter< @@ -9,7 +10,13 @@ export class ProjectsTreeItemProvider implements vscode.TreeDataProvider = this._onDidChangeTreeData.event; - constructor() {} + constructor() { + vscode.workspace.onDidChangeConfiguration((e) => { + if (e.affectsConfiguration("appwrite")) { + this.refresh(); + } + }); + } refresh(): void { this._onDidChangeTreeData.fire(); diff --git a/src/utils/refreshTree.ts b/src/utils/refreshTree.ts index 44be769..b54d098 100644 --- a/src/utils/refreshTree.ts +++ b/src/utils/refreshTree.ts @@ -8,8 +8,8 @@ export function refreshTree(...trees: (keyof AppwriteTree)[]): void { export function refreshAllViews(): void { if (ext.tree) { - Object.keys(ext.tree).forEach((tree) => { + for (const tree in ext.tree) { refreshTree(tree as keyof AppwriteTree); - }); + } } }