Skip to content

Commit e0d60e9

Browse files
committed
Watch files at all depths in plugin outputs
1 parent 5f3be70 commit e0d60e9

File tree

1 file changed

+6
-12
lines changed

1 file changed

+6
-12
lines changed

src/ui/ProjectPanelProvider.ts

Lines changed: 6 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -503,6 +503,7 @@ export class ProjectPanelProvider implements vscode.TreeDataProvider<TreeNode> {
503503
private disposables: vscode.Disposable[] = [];
504504
private activeTasks: Set<string> = new Set();
505505
private lastComputedNodes: TreeNode[] = [];
506+
private buildPluginOutputWatcher?: vscode.FileSystemWatcher;
506507

507508
onDidChangeTreeData = this.didChangeTreeDataEmitter.event;
508509

@@ -606,24 +607,17 @@ export class ProjectPanelProvider implements vscode.TreeDataProvider<TreeNode> {
606607
);
607608
}
608609

609-
private buildPluginOutputWatcher?: vscode.FileSystemWatcher;
610-
611610
watchBuildPluginOutputs(folderContext: FolderContext) {
612611
if (this.buildPluginOutputWatcher) {
613612
this.buildPluginOutputWatcher.dispose();
614613
}
615614
this.buildPluginOutputWatcher = vscode.workspace.createFileSystemWatcher(
616-
new vscode.RelativePattern(folderContext.folder, ".build/plugins/outputs/**/*")
615+
new vscode.RelativePattern(folderContext.folder, ".build/plugins/outputs/{*,*/*}")
617616
);
618-
this.buildPluginOutputWatcher.onDidCreate(() => {
619-
this.didChangeTreeDataEmitter.fire();
620-
});
621-
this.buildPluginOutputWatcher.onDidDelete(() => {
622-
this.didChangeTreeDataEmitter.fire();
623-
});
624-
this.buildPluginOutputWatcher.onDidChange(() => {
625-
this.didChangeTreeDataEmitter.fire();
626-
});
617+
const fire = () => this.didChangeTreeDataEmitter.fire();
618+
this.buildPluginOutputWatcher.onDidCreate(fire);
619+
this.buildPluginOutputWatcher.onDidDelete(fire);
620+
this.buildPluginOutputWatcher.onDidChange(fire);
627621
}
628622

629623
getTreeItem(element: TreeNode): vscode.TreeItem {

0 commit comments

Comments
 (0)