Skip to content

Commit 7ee9be6

Browse files
authored
Merge branch 'main' into tyriar/162070_2
2 parents dbc971b + 2df70ee commit 7ee9be6

File tree

8 files changed

+472
-386
lines changed

8 files changed

+472
-386
lines changed

ThirdPartyNotices.txt

Lines changed: 433 additions & 365 deletions
Large diffs are not rendered by default.

extensions/git/src/model.ts

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -450,7 +450,21 @@ export class Model implements IRemoteSourcePublisherRegistry, IPostCommitCommand
450450
.forEach(p => this.eventuallyScanPossibleGitRepository(p));
451451
};
452452

453-
const statusListener = repository.onDidRunGitStatus(checkForSubmodules);
453+
const updateMergeChanges = () => {
454+
// set mergeChanges context
455+
const mergeChanges: Uri[] = [];
456+
for (const { repository } of this.openRepositories.values()) {
457+
for (const state of repository.mergeGroup.resourceStates) {
458+
mergeChanges.push(state.resourceUri);
459+
}
460+
}
461+
commands.executeCommand('setContext', 'git.mergeChanges', mergeChanges);
462+
};
463+
464+
const statusListener = repository.onDidRunGitStatus(() => {
465+
checkForSubmodules();
466+
updateMergeChanges();
467+
});
454468
checkForSubmodules();
455469

456470
const dispose = () => {
@@ -466,6 +480,7 @@ export class Model implements IRemoteSourcePublisherRegistry, IPostCommitCommand
466480

467481
const openRepository = { repository, dispose };
468482
this.openRepositories.push(openRepository);
483+
updateMergeChanges();
469484
this._onDidOpenRepository.fire(repository);
470485
}
471486

extensions/git/src/repository.ts

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2103,9 +2103,6 @@ export class Repository implements Disposable {
21032103
// set count badge
21042104
this.setCountBadge();
21052105

2106-
// set mergeChanges context
2107-
commands.executeCommand('setContext', 'git.mergeChanges', merge.map(item => item.resourceUri));
2108-
21092106
this._onDidChangeStatus.fire();
21102107

21112108
this._sourceControl.commitTemplate = await this.getInputTemplate();

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"name": "code-oss-dev",
33
"version": "1.72.0",
4-
"distro": "a75e0e9bdfca0851f24bfad4a244226c87a0c2c4",
4+
"distro": "d4b1b117d224d627ec65bb0fd0b02fdee65303aa",
55
"author": {
66
"name": "Microsoft Corporation"
77
},

src/vs/workbench/browser/parts/panel/panelPart.ts

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ import { IPartOptions } from 'vs/workbench/browser/part';
4545
import { StringSHA1 } from 'vs/base/common/hash';
4646
import { URI } from 'vs/base/common/uri';
4747
import { Extensions, IProfileStorageRegistry } from 'vs/workbench/services/userDataProfile/common/userDataProfileStorageRegistry';
48-
import { WorkbenchToolBar } from 'vs/platform/actions/browser/toolbar';
48+
import { ToolBar } from 'vs/base/browser/ui/toolbar/toolbar';
4949

5050
interface ICachedPanel {
5151
id: string;
@@ -110,7 +110,7 @@ export abstract class BasePanelPart extends CompositePart<PaneComposite> impleme
110110
private compositeBar: CompositeBar;
111111
private readonly compositeActions = new Map<string, { activityAction: PanelActivityAction; pinnedAction: ToggleCompositePinnedAction }>();
112112

113-
private globalToolBar: WorkbenchToolBar | undefined;
113+
private globalToolBar: ToolBar | undefined;
114114
private globalActions: CompositeMenuActions;
115115

116116
private readonly panelDisposables: Map<string, IDisposable> = new Map<string, IDisposable>();
@@ -549,13 +549,12 @@ export abstract class BasePanelPart extends CompositePart<PaneComposite> impleme
549549
const globalTitleActionsContainer = element.appendChild($('.global-actions'));
550550

551551
// Global Actions Toolbar
552-
this.globalToolBar = this._register(this.instantiationService.createInstance(WorkbenchToolBar, globalTitleActionsContainer, {
552+
this.globalToolBar = this._register(new ToolBar(globalTitleActionsContainer, this.contextMenuService, {
553553
actionViewItemProvider: action => this.actionViewItemProvider(action),
554554
orientation: ActionsOrientation.HORIZONTAL,
555555
getKeyBinding: action => this.keybindingService.lookupKeybinding(action.id),
556556
anchorAlignmentProvider: () => this.getTitleAreaDropDownAnchorAlignment(),
557-
toggleMenuTitle: localize('moreActions', "More Actions..."),
558-
resetMenu: this.globalActions.menuId
557+
toggleMenuTitle: localize('moreActions', "More Actions...")
559558
}));
560559

561560
this.updateGlobalToolbarActions();

src/vs/workbench/browser/window.ts

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -210,11 +210,16 @@ export class BrowserWindow extends Disposable {
210210
[
211211
localize('openExternalDialogButtonRetry', "Try again"),
212212
localize('openExternalDialogButtonInstall', "Install {0}", this.productService.nameLong),
213-
localize('openExternalDialogButtonContinue', "Continue here")
213+
localize('openExternalDialogButtonCancel', "Cancel")
214214
],
215215
{
216216
cancelId: 2,
217-
detail: localize('openExternalDialogDetail', "We tried opening {0} on your computer.", this.productService.nameLong)
217+
detail: localize(
218+
'openExternalDialogDetail.v2',
219+
"We launched {0} on your computer.\n\nIf {1} did not launch, try again or install it below.",
220+
this.productService.nameLong,
221+
this.productService.nameLong,
222+
)
218223
},
219224
);
220225

src/vs/workbench/contrib/mergeEditor/browser/mergeEditorInputModel.ts

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ import { localize } from 'vs/nls';
1818
import { ConfirmResult, IDialogOptions, IDialogService } from 'vs/platform/dialogs/common/dialogs';
1919
import { IEditorModel } from 'vs/platform/editor/common/editor';
2020
import { IInstantiationService } from 'vs/platform/instantiation/common/instantiation';
21-
import { IRevertOptions } from 'vs/workbench/common/editor';
21+
import { IRevertOptions, SaveSourceRegistry } from 'vs/workbench/common/editor';
2222
import { EditorModel } from 'vs/workbench/common/editor/editorModel';
2323
import { MergeEditorInputData } from 'vs/workbench/contrib/mergeEditor/browser/mergeEditorInput';
2424
import { conflictMarkers } from 'vs/workbench/contrib/mergeEditor/browser/mergeMarkers/mergeMarkersController';
@@ -269,6 +269,8 @@ export class WorkspaceMergeEditorModeFactory implements IMergeEditorInputModelFa
269269
) {
270270
}
271271

272+
private static readonly FILE_SAVED_SOURCE = SaveSourceRegistry.registerSource('merge-editor.source', localize('merge-editor.source', "Before Resolving Conflicts In Merge Editor"));
273+
272274
public async createInputModel(args: MergeEditorArgs): Promise<IMergeEditorInputModel> {
273275
const store = new DisposableStore();
274276

@@ -302,7 +304,7 @@ export class WorkspaceMergeEditorModeFactory implements IMergeEditorInputModelFa
302304
throw new BugIndicatingError();
303305
}
304306
// So that "Don't save" does revert the file
305-
await resultTextFileModel.save();
307+
await resultTextFileModel.save({ source: WorkspaceMergeEditorModeFactory.FILE_SAVED_SOURCE });
306308

307309
const lines = resultTextFileModel.textEditorModel!.getLinesContent();
308310
const hasConflictMarkers = lines.some(l => l.startsWith(conflictMarkers.start));

src/vs/workbench/contrib/mergeEditor/browser/view/conflictActions.ts

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -104,7 +104,7 @@ export class ConflictActionsFactory extends Disposable {
104104
if (!state.conflicting && !state.isInputIncluded(inputNumber)) {
105105
result.push(
106106
!state.isInputIncluded(inputNumber)
107-
? command(localize('accept', "$(pass) Accept {0}", inputData.title), async () => {
107+
? command(localize('accept', "Accept {0}", inputData.title), async () => {
108108
transaction((tx) => {
109109
model.setState(
110110
modifiedBaseRange,
@@ -114,7 +114,7 @@ export class ConflictActionsFactory extends Disposable {
114114
);
115115
});
116116
})
117-
: command(localize('remove', "$(error) Remove {0}", inputData.title), async () => {
117+
: command(localize('remove', "Remove {0}", inputData.title), async () => {
118118
transaction((tx) => {
119119
model.setState(
120120
modifiedBaseRange,
@@ -129,7 +129,7 @@ export class ConflictActionsFactory extends Disposable {
129129
if (modifiedBaseRange.canBeCombined && state.isEmpty) {
130130
result.push(
131131
state.input1 && state.input2
132-
? command(localize('removeBoth', "$(error) Remove Both"), async () => {
132+
? command(localize('removeBoth', "Remove Both"), async () => {
133133
transaction((tx) => {
134134
model.setState(
135135
modifiedBaseRange,
@@ -139,7 +139,7 @@ export class ConflictActionsFactory extends Disposable {
139139
);
140140
});
141141
})
142-
: command(localize('acceptBoth', "$(pass) Accept Both"), async () => {
142+
: command(localize('acceptBoth', "Accept Both"), async () => {
143143
transaction((tx) => {
144144
model.setState(
145145
modifiedBaseRange,
@@ -204,7 +204,7 @@ export class ConflictActionsFactory extends Disposable {
204204

205205
const stateToggles: IContentWidgetAction[] = [];
206206
if (state.input1) {
207-
result.push(command(localize('remove', "$(error) Remove {0}", model.input1.title), async () => {
207+
result.push(command(localize('remove', "Remove {0}", model.input1.title), async () => {
208208
transaction((tx) => {
209209
model.setState(
210210
modifiedBaseRange,
@@ -217,7 +217,7 @@ export class ConflictActionsFactory extends Disposable {
217217
);
218218
}
219219
if (state.input2) {
220-
result.push(command(localize('remove', "$(error) Remove {0}", model.input2.title), async () => {
220+
result.push(command(localize('remove', "Remove {0}", model.input2.title), async () => {
221221
transaction((tx) => {
222222
model.setState(
223223
modifiedBaseRange,
@@ -238,7 +238,7 @@ export class ConflictActionsFactory extends Disposable {
238238

239239
if (state.conflicting) {
240240
result.push(
241-
command(localize('resetToBase', "$(error) Reset to base"), async () => {
241+
command(localize('resetToBase', "Reset to base"), async () => {
242242
transaction((tx) => {
243243
model.setState(
244244
modifiedBaseRange,

0 commit comments

Comments
 (0)