Skip to content

Commit c9cce4f

Browse files
committed
Watch files at all depths in plugin outputs
1 parent 806c1ad commit c9cce4f

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
@@ -468,6 +468,7 @@ export class ProjectPanelProvider implements vscode.TreeDataProvider<TreeNode> {
468468
private disposables: vscode.Disposable[] = [];
469469
private activeTasks: Set<string> = new Set();
470470
private lastComputedNodes: TreeNode[] = [];
471+
private buildPluginOutputWatcher?: vscode.FileSystemWatcher;
471472

472473
onDidChangeTreeData = this.didChangeTreeDataEmitter.event;
473474

@@ -560,24 +561,17 @@ export class ProjectPanelProvider implements vscode.TreeDataProvider<TreeNode> {
560561
);
561562
}
562563

563-
private buildPluginOutputWatcher?: vscode.FileSystemWatcher;
564-
565564
watchBuildPluginOutputs(folderContext: FolderContext) {
566565
if (this.buildPluginOutputWatcher) {
567566
this.buildPluginOutputWatcher.dispose();
568567
}
569568
this.buildPluginOutputWatcher = vscode.workspace.createFileSystemWatcher(
570-
new vscode.RelativePattern(folderContext.folder, ".build/plugins/outputs/**/*")
569+
new vscode.RelativePattern(folderContext.folder, ".build/plugins/outputs/{*,*/*}")
571570
);
572-
this.buildPluginOutputWatcher.onDidCreate(() => {
573-
this.didChangeTreeDataEmitter.fire();
574-
});
575-
this.buildPluginOutputWatcher.onDidDelete(() => {
576-
this.didChangeTreeDataEmitter.fire();
577-
});
578-
this.buildPluginOutputWatcher.onDidChange(() => {
579-
this.didChangeTreeDataEmitter.fire();
580-
});
571+
const fire = () => this.didChangeTreeDataEmitter.fire();
572+
this.buildPluginOutputWatcher.onDidCreate(fire);
573+
this.buildPluginOutputWatcher.onDidDelete(fire);
574+
this.buildPluginOutputWatcher.onDidChange(fire);
581575
}
582576

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

0 commit comments

Comments
 (0)