Skip to content

Commit 37a093c

Browse files
committed
Merge branch 'main' into aiday/internalIssue4344
2 parents aacf41a + 6ebf1cc commit 37a093c

File tree

4 files changed

+45
-3
lines changed

4 files changed

+45
-3
lines changed

src/vs/editor/browser/widget/diffEditorWidget2/diffEditorWidget2.contribution.ts

Lines changed: 34 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,9 +34,10 @@ registerAction2(ToggleCollapseUnchangedRegions);
3434
MenuRegistry.appendMenuItem(MenuId.EditorTitle, {
3535
command: {
3636
id: new ToggleCollapseUnchangedRegions().desc.id,
37-
title: localize('collapseUnchangedRegions', "Collapse Unchanged Regions"),
37+
title: localize('collapseUnchangedRegions', "Show Unchanged Regions"),
3838
icon: Codicon.map
3939
},
40+
order: 22,
4041
group: 'navigation',
4142
when: ContextKeyExpr.and(
4243
ContextKeyExpr.has('config.diffEditor.experimental.collapseUnchangedRegions'),
@@ -47,12 +48,43 @@ MenuRegistry.appendMenuItem(MenuId.EditorTitle, {
4748
MenuRegistry.appendMenuItem(MenuId.EditorTitle, {
4849
command: {
4950
id: new ToggleCollapseUnchangedRegions().desc.id,
50-
title: localize('showUnchangedRegions', "Show Unchanged Regions"),
51+
title: localize('showUnchangedRegions', "Collapse Unchanged Regions"),
5152
icon: ThemeIcon.modify(Codicon.map, 'disabled'),
5253
},
54+
order: 22,
5355
group: 'navigation',
5456
when: ContextKeyExpr.and(
5557
ContextKeyExpr.has('config.diffEditor.experimental.collapseUnchangedRegions').negate(),
5658
ContextKeyEqualsExpr.create('diffEditorVersion', 2)
5759
)
5860
});
61+
62+
export class ToggleShowMovedCodeBlocks extends Action2 {
63+
constructor() {
64+
super({
65+
id: 'diffEditor.toggleShowMovedCodeBlocks',
66+
title: { value: localize('toggleShowMovedCodeBlocks', "Toggle Show Moved Code Blocks"), original: 'Toggle Show Moved Code Blocks' },
67+
precondition: ContextKeyEqualsExpr.create('diffEditorVersion', 2),
68+
});
69+
}
70+
71+
run(accessor: ServicesAccessor, ...args: unknown[]): void {
72+
const configurationService = accessor.get(IConfigurationService);
73+
const newValue = !configurationService.getValue<boolean>('diffEditor.experimental.showMoves');
74+
configurationService.updateValue('diffEditor.experimental.showMoves', newValue);
75+
}
76+
}
77+
78+
registerAction2(ToggleShowMovedCodeBlocks);
79+
80+
MenuRegistry.appendMenuItem(MenuId.EditorTitle, {
81+
command: {
82+
id: new ToggleShowMovedCodeBlocks().desc.id,
83+
title: localize('showMoves', "Show Moves"),
84+
icon: Codicon.move,
85+
toggled: ContextKeyEqualsExpr.create('config.diffEditor.experimental.showMoves', true),
86+
},
87+
order: 10,
88+
group: '1_diff',
89+
when: ContextKeyEqualsExpr.create('diffEditorVersion', 2)
90+
});
Lines changed: 1 addition & 1 deletion
Loading

src/vs/workbench/contrib/chat/browser/actions/chatMoveActions.ts

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ import { ChatEditorInput } from 'vs/workbench/contrib/chat/browser/chatEditorInp
1717
import { ChatViewPane } from 'vs/workbench/contrib/chat/browser/chatViewPane';
1818
import { CONTEXT_PROVIDER_EXISTS } from 'vs/workbench/contrib/chat/common/chatContextKeys';
1919
import { IChatContributionService } from 'vs/workbench/contrib/chat/common/chatContributionService';
20+
import { IChatService } from 'vs/workbench/contrib/chat/common/chatService';
2021
import { IEditorGroupsService } from 'vs/workbench/services/editor/common/editorGroupsService';
2122
import { IEditorService } from 'vs/workbench/services/editor/common/editorService';
2223

@@ -68,6 +69,11 @@ async function moveToSidebar(accessor: ServicesAccessor): Promise<void> {
6869
const viewId = chatContribService.getViewIdForProvider(chatEditorInput.providerId);
6970
const view = await viewsService.openView(viewId) as ChatViewPane;
7071
view.loadSession(chatEditorInput.sessionId);
72+
} else {
73+
const chatService = accessor.get(IChatService);
74+
const providerId = chatService.getProviderInfos()[0].id;
75+
const viewId = chatContribService.getViewIdForProvider(providerId);
76+
await viewsService.openView(viewId);
7177
}
7278
}
7379

@@ -90,9 +96,12 @@ export function registerMoveActions() {
9096
const widgetService = accessor.get(IChatWidgetService);
9197
const viewService = accessor.get(IViewsService);
9298
const editorService = accessor.get(IEditorService);
99+
const chatService = accessor.get(IChatService);
93100

94101
const widget = widgetService.lastFocusedWidget;
95102
if (!widget || !('viewId' in widget.viewContext)) {
103+
const providerId = chatService.getProviderInfos()[0].id;
104+
await editorService.openEditor({ resource: ChatEditorInput.getNewEditorUri(), options: <IChatEditorOptions>{ target: { providerId }, pinned: true } });
96105
return;
97106
}
98107

src/vs/workbench/contrib/chat/common/chatServiceImpl.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -155,6 +155,7 @@ export class ChatService extends Disposable implements IChatService {
155155
this.trace('onWillSaveState', `Persisting ${allSessions.length} sessions`);
156156

157157
const serialized = JSON.stringify(allSessions);
158+
this.trace('onWillSaveState', `Persisting ${serialized.length} chars`);
158159
this.storageService.store(serializedChatKey, serialized, StorageScope.WORKSPACE, StorageTarget.MACHINE);
159160
}
160161

0 commit comments

Comments
 (0)