Skip to content

Commit f2ebfe2

Browse files
authored
PR view always expands and fetches "All Open" (#7157)
Fixes #7150
1 parent 8f51aad commit f2ebfe2

File tree

3 files changed

+13
-6
lines changed

3 files changed

+13
-6
lines changed

src/github/copilotRemoteAgent.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -384,6 +384,7 @@ export class CopilotRemoteAgentManager extends Disposable {
384384

385385
try {
386386
const { pull_request } = await capiClient.postRemoteAgentJob(owner, repo, payload);
387+
this._onDidCreatePullRequest.fire(pull_request.number);
387388
const webviewUri = await toOpenPullRequestWebviewUri({ owner, repo, pullRequestNumber: pull_request.number });
388389
const prLlmString = `The remote agent has begun work. The user can track progress by visiting ${pull_request.html_url} or from the PR extension. Format this VS Code webview link so the user can click it to also track progress: ${webviewUri.toString()}`;
389390
return {

src/view/prsTreeModel.ts

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ export class PrsTreeModel extends Disposable {
2929
public readonly onDidChangePrStatus = this._onDidChangePrStatus.event;
3030
private readonly _onDidChangeData: vscode.EventEmitter<FolderRepositoryManager | void> = this._register(new vscode.EventEmitter<FolderRepositoryManager | void>());
3131
public readonly onDidChangeData = this._onDidChangeData.event;
32-
private _expandedQueries: Set<string> = new Set();
32+
private _expandedQueries: Set<string> | undefined;
3333
private _hasLoaded: boolean = false;
3434
private _onLoaded: vscode.EventEmitter<void> = this._register(new vscode.EventEmitter<void>());
3535
public readonly onLoaded = this._onLoaded.event;
@@ -78,10 +78,16 @@ export class PrsTreeModel extends Disposable {
7878
}
7979
}));
8080

81-
this._expandedQueries = new Set(this._context.workspaceState.get(EXPANDED_QUERIES_STATE, [] as string[]));
81+
const expandedQueries = this._context.workspaceState.get(EXPANDED_QUERIES_STATE, undefined);
82+
if (expandedQueries) {
83+
this._expandedQueries = new Set(expandedQueries);
84+
}
8285
}
8386

8487
public updateExpandedQueries(element: TreeNode, isExpanded: boolean) {
88+
if (!this._expandedQueries) {
89+
this._expandedQueries = new Set();
90+
}
8591
if ((element instanceof CategoryTreeNode) && element.id) {
8692
if (isExpanded) {
8793
this._expandedQueries.add(element.id);
@@ -92,8 +98,8 @@ export class PrsTreeModel extends Disposable {
9298
}
9399
}
94100

95-
get expandedQueries(): Set<string> {
96-
if (this._reposManager.folderManagers.length > 3 && this._expandedQueries.size > 0) {
101+
get expandedQueries(): Set<string> | undefined {
102+
if (this._reposManager.folderManagers.length > 3 && this._expandedQueries && this._expandedQueries.size > 0) {
97103
return new Set();
98104
}
99105
return this._expandedQueries;

src/view/treeNodes/categoryNode.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -170,11 +170,11 @@ export class CategoryTreeNode extends TreeNode implements vscode.TreeItem {
170170
if (hasCopilotChanges) {
171171
this.collapsibleState = vscode.TreeItemCollapsibleState.Expanded;
172172
this.resourceUri = COPILOT_QUERY;
173-
} else if ((this._prsTreeModel.expandedQueries.size === 0) && (this.type === PRType.All)) {
173+
} else if ((this._prsTreeModel.expandedQueries === undefined) && (this.type === PRType.All)) {
174174
this.collapsibleState = vscode.TreeItemCollapsibleState.Expanded;
175175
} else {
176176
this.collapsibleState =
177-
this._prsTreeModel.expandedQueries.has(this.id)
177+
this._prsTreeModel.expandedQueries?.has(this.id)
178178
? vscode.TreeItemCollapsibleState.Expanded
179179
: vscode.TreeItemCollapsibleState.Collapsed;
180180
}

0 commit comments

Comments
 (0)