Skip to content

Commit

Permalink
Avoid using notebook synchronizer in nb chat edits
Browse files Browse the repository at this point in the history
  • Loading branch information
DonJayamanne committed Feb 25, 2025
1 parent 59990f4 commit 7e32ea6
Show file tree
Hide file tree
Showing 2 changed files with 6 additions and 2 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ import { isEqual } from '../../../../../../base/common/resources.js';
import { CellDiffInfo } from '../../diff/notebookDiffViewModel.js';
import { AcceptAction, navigationBearingFakeActionId, RejectAction } from '../../../../chat/browser/chatEditing/chatEditingEditorActions.js';
import { INotebookDeletedCellDecorator } from '../../diff/inlineDiff/notebookDeletedCellDecorator.js';
import { ChatEditingModifiedDocumentEntry } from '../../../../chat/browser/chatEditing/chatEditingModifiedDocumentEntry.js';

export class NotebookChatActionsOverlayController extends Disposable {
constructor(
Expand All @@ -38,7 +39,8 @@ export class NotebookChatActionsOverlayController extends Disposable {
}
const sessions = this._chatEditingService.editingSessionsObs.read(r);
const session = sessions.find(s => s.readEntry(model.uri, r));
if (!session) {
const entry = session?.readEntry(model.uri, r);
if (!session || !entry || !(entry instanceof ChatEditingModifiedDocumentEntry)) {
return;
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@ import { Event } from '../../../../../../base/common/event.js';
import { ctxNotebookHasEditorModification } from './notebookChatEditContext.js';
import { NotebookDeletedCellDecorator } from '../../diff/inlineDiff/notebookDeletedCellDecorator.js';
import { NotebookInsertedCellDecorator } from '../../diff/inlineDiff/notebookInsertedCellDecorator.js';
import { ChatEditingModifiedDocumentEntry } from '../../../../chat/browser/chatEditing/chatEditingModifiedDocumentEntry.js';

export class NotebookChatEditorControllerContrib extends Disposable implements INotebookEditorContribution {

Expand Down Expand Up @@ -84,7 +85,8 @@ class NotebookChatEditorController extends Disposable {
return;
}
const sessions = this._chatEditingService.editingSessionsObs.read(r);
return sessions.map(s => s.readEntry(model.uri, r)).find(r => !!r);
const entry = sessions.map(s => s.readEntry(model.uri, r)).find(r => !!r);
return entry instanceof ChatEditingModifiedDocumentEntry ? entry : undefined;
}).recomputeInitiallyAndOnChange(this._store);


Expand Down

0 comments on commit 7e32ea6

Please sign in to comment.