Render chat changes in editor if diff is available (#246440)

This commit is contained in:
Don Jayamanne
2025-04-22 18:35:32 +10:00
committed by GitHub
parent e810985ce2
commit dffb8661aa
3 changed files with 4 additions and 4 deletions

View File

@@ -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);

View File

@@ -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);
}
}

View File

@@ -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(() => {