Skip to content

Commit 75e8400

Browse files
authored
Only show "there are updates" notification when copilot is done (#7126)
1 parent 611073f commit 75e8400

2 files changed

Lines changed: 8 additions & 2 deletions

File tree

src/github/folderRepositoryManager.ts

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ import { ConflictModel } from './conflictGuide';
4141
import { ConflictResolutionCoordinator } from './conflictResolutionCoordinator';
4242
import { Conflict, ConflictResolutionModel } from './conflictResolutionModel';
4343
import { CredentialStore } from './credentials';
44-
import { GitHubRepository, GraphQLError, GraphQLErrorType, IMetadata, ItemsData, PULL_REQUEST_PAGE_SIZE, PullRequestData, TeamReviewerRefreshKind, ViewerPermission } from './githubRepository';
44+
import { CopilotWorkingStatus, GitHubRepository, GraphQLError, GraphQLErrorType, IMetadata, ItemsData, PULL_REQUEST_PAGE_SIZE, PullRequestData, TeamReviewerRefreshKind, ViewerPermission } from './githubRepository';
4545
import { MergeMethod as GraphQLMergeMethod, MergePullRequestInput, MergePullRequestResponse, PullRequestResponse, PullRequestState, UserResponse } from './graphql';
4646
import { IAccount, ILabel, IMilestone, IProject, IPullRequestsPagingOptions, Issue, ITeam, MergeMethod, PRType, PullRequestMergeability, RepoAccessAndMergeMethods, User } from './interface';
4747
import { IssueModel } from './issueModel';
@@ -2539,6 +2539,12 @@ export class FolderRepositoryManager extends Disposable {
25392539

25402540
private async promptPullBrach(pr: PullRequestModel, branch: Branch, autoStashSetting?: boolean) {
25412541
if (!this._updateMessageShown || autoStashSetting) {
2542+
// When the PR is from Copilot, we only want to show the notification when Copilot is done working
2543+
const copilotStatus = await pr.githubRepository.copilotWorkingStatus(pr);
2544+
if (copilotStatus === CopilotWorkingStatus.InProgress) {
2545+
return;
2546+
}
2547+
25422548
this._updateMessageShown = true;
25432549
const pull = vscode.l10n.t('Pull');
25442550
const always = vscode.l10n.t('Always Pull');

src/view/prsTreeDataProvider.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ import * as vscode from 'vscode';
77
import { AuthProvider } from '../common/authentication';
88
import { commands, contexts } from '../common/executeCommands';
99
import { Disposable } from '../common/lifecycle';
10+
import Logger from '../common/logger';
1011
import { FILE_LIST_LAYOUT, PR_SETTINGS_NAMESPACE, QUERIES, REMOTES } from '../common/settingKeys';
1112
import { ITelemetry } from '../common/telemetry';
1213
import { createPRNodeIdentifier } from '../common/uri';
@@ -30,7 +31,6 @@ import { PRNode } from './treeNodes/pullRequestNode';
3031
import { BaseTreeNode, TreeNode } from './treeNodes/treeNode';
3132
import { TreeUtils } from './treeNodes/treeUtils';
3233
import { WorkspaceFolderNode } from './treeNodes/workspaceFolderNode';
33-
import Logger from '../common/logger';
3434

3535
export class PullRequestsTreeDataProvider extends Disposable implements vscode.TreeDataProvider<TreeNode>, BaseTreeNode {
3636
private _onDidChangeTreeData = new vscode.EventEmitter<TreeNode | void>();

0 commit comments

Comments
 (0)