Skip to content

Commit cc7f7d6

Browse files
authored
Add "open changes" button (#7059)
1 parent 22a8e60 commit cc7f7d6

File tree

4 files changed

+13
-2
lines changed

4 files changed

+13
-2
lines changed

src/github/pullRequestModel.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1274,7 +1274,7 @@ export class PullRequestModel extends IssueModel<PullRequest> implements IPullRe
12741274
return this.githubRepository.getStatusChecks(this.number);
12751275
}
12761276

1277-
static async openChanges(folderManager: FolderRepositoryManager, pullRequestModel: PullRequestModel) {
1277+
static async openChanges(folderManager: FolderRepositoryManager, pullRequestModel: PullRequestModel): Promise<void> {
12781278
const changeModels = await PullRequestModel.getChangeModels(folderManager, pullRequestModel);
12791279
const args: [vscode.Uri, vscode.Uri | undefined, vscode.Uri | undefined][] = [];
12801280
for (const changeModel of changeModels) {

src/github/pullRequestOverview.ts

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -334,6 +334,8 @@ export class PullRequestOverviewPanel extends IssueOverviewPanel<PullRequestMode
334334
return this.applyPatch(message);
335335
case 'pr.open-diff':
336336
return this.openDiff(message);
337+
case 'pr.open-changes':
338+
return this.openChanges();
337339
case 'pr.resolve-comment-thread':
338340
return this.resolveCommentThread(message);
339341
case 'pr.checkMergeability':
@@ -449,6 +451,10 @@ export class PullRequestOverviewPanel extends IssueOverviewPanel<PullRequestMode
449451
}
450452
}
451453

454+
private async openChanges(): Promise<void> {
455+
return PullRequestModel.openChanges(this._folderRepositoryManager, this._item);
456+
}
457+
452458
private async resolveCommentThread(message: IRequestMessage<{ threadId: string, toResolve: boolean, thread: IComment[] }>) {
453459
try {
454460
if (message.args.toResolve) {

webviews/common/context.tsx

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,8 @@ export class PRContext {
3333

3434
public checkout = () => this.postMessage({ command: 'pr.checkout' });
3535

36+
public openChanges = () => this.postMessage({ command: 'pr.open-changes' });
37+
3638
public copyPrLink = () => this.postMessage({ command: 'pr.copy-prlink' });
3739

3840
public copyVscodeDevLink = () => this.postMessage({ command: 'pr.copy-vscodedevlink' });

webviews/components/header.tsx

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -97,11 +97,14 @@ function Title({ title, titleHTML, number, url, inEditMode, setEditMode, setCurr
9797
}
9898

9999
function ButtonGroup({ isCurrentlyCheckedOut, canEdit, isIssue, repositoryDefaultBranch, setEditMode }) {
100-
const { refresh, copyPrLink, copyVscodeDevLink } = useContext(PullRequestContext);
100+
const { refresh, copyPrLink, copyVscodeDevLink, openChanges } = useContext(PullRequestContext);
101101

102102
return (
103103
<div className="button-group">
104104
<CheckoutButtons {...{ isCurrentlyCheckedOut, isIssue, repositoryDefaultBranch }} />
105+
<button title="Open Changes" onClick={openChanges} className="small-button">
106+
Open Changes
107+
</button>
105108
<button title="Refresh with the latest data from GitHub" onClick={refresh} className="secondary small-button">
106109
Refresh
107110
</button>

0 commit comments

Comments
 (0)