mirror of
https://github.com/microsoft/vscode.git
synced 2026-02-25 12:16:07 +00:00
Render chat changes in editor if diff is available (#246440)
This commit is contained in:
@@ -70,6 +70,7 @@ export class ChatEditingCodeEditorIntegration implements IModifiedFileEntryEdito
|
||||
private readonly _entry: IModifiedFileEntry,
|
||||
private readonly _editor: ICodeEditor,
|
||||
documentDiffInfo: IObservable<IDocumentDiff2>,
|
||||
renderDiffImmediately: boolean,
|
||||
@IChatAgentService private readonly _chatAgentService: IChatAgentService,
|
||||
@IEditorService private readonly _editorService: IEditorService,
|
||||
@IAccessibilitySignalService private readonly _accessibilitySignalsService: IAccessibilitySignalService,
|
||||
@@ -147,8 +148,7 @@ export class ChatEditingCodeEditorIntegration implements IModifiedFileEntryEdito
|
||||
}
|
||||
|
||||
// done: render diff
|
||||
if (!_entry.isCurrentlyBeingModifiedBy.read(r)) {
|
||||
|
||||
if (!_entry.isCurrentlyBeingModifiedBy.read(r) || renderDiffImmediately) {
|
||||
const isDiffEditor = this._editor.getOption(EditorOption.inDiffEditor);
|
||||
|
||||
codeEditorObs.getOption(EditorOption.fontInfo).read(r);
|
||||
|
||||
@@ -507,6 +507,6 @@ export class ChatEditingModifiedDocumentEntry extends AbstractChatEditingModifie
|
||||
} satisfies IDocumentDiff2;
|
||||
});
|
||||
|
||||
return this._instantiationService.createInstance(ChatEditingCodeEditorIntegration, this, codeEditor, diffInfo);
|
||||
return this._instantiationService.createInstance(ChatEditingCodeEditorIntegration, this, codeEditor, diffInfo, false);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -250,7 +250,7 @@ class ChatEditingNotebookEditorWidgetIntegration extends Disposable implements I
|
||||
}
|
||||
} else {
|
||||
const diff2 = observableValue(`diff${cell.handle}`, diff);
|
||||
const integration = this.instantiationService.createInstance(ChatEditingCodeEditorIntegration, _entry, editor, diff2);
|
||||
const integration = this.instantiationService.createInstance(ChatEditingCodeEditorIntegration, _entry, editor, diff2, true);
|
||||
this.cellEditorIntegrations.set(cell, { integration, diff: diff2 });
|
||||
this._register(integration);
|
||||
this._register(editor.onDidDispose(() => {
|
||||
|
||||
Reference in New Issue
Block a user