Skip to content

Commit 53ed076

Browse files
authored
Fix comment threads starting expanded (microsoft#218684)
1 parent 5ba8a8b commit 53ed076

File tree

3 files changed

+9
-5
lines changed

3 files changed

+9
-5
lines changed

src/vs/workbench/api/browser/mainThreadComments.ts

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -185,13 +185,16 @@ export class MainThreadCommentThread<T> implements languages.CommentThread<T> {
185185
public threadId: string,
186186
public resource: string,
187187
private _range: T | undefined,
188+
comments: languages.Comment[] | undefined,
188189
private _canReply: boolean,
189190
private _isTemplate: boolean,
190191
public editorId?: string
191192
) {
192193
this._isDisposed = false;
193194
if (_isTemplate) {
194195
this.comments = [];
196+
} else if (comments) {
197+
this._comments = comments;
195198
}
196199
}
197200

@@ -298,6 +301,7 @@ export class MainThreadCommentController implements ICommentController {
298301
threadId: string,
299302
resource: UriComponents,
300303
range: IRange | ICellRange | undefined,
304+
comments: languages.Comment[],
301305
isTemplate: boolean,
302306
editorId?: string
303307
): languages.CommentThread<IRange | ICellRange> {
@@ -308,6 +312,7 @@ export class MainThreadCommentController implements ICommentController {
308312
threadId,
309313
URI.revive(resource).toString(),
310314
range,
315+
comments,
311316
true,
312317
isTemplate,
313318
editorId
@@ -590,6 +595,7 @@ export class MainThreadComments extends Disposable implements MainThreadComments
590595
threadId: string,
591596
resource: UriComponents,
592597
range: IRange | ICellRange | undefined,
598+
comments: languages.Comment[],
593599
extensionId: ExtensionIdentifier,
594600
isTemplate: boolean,
595601
editorId?: string
@@ -600,7 +606,7 @@ export class MainThreadComments extends Disposable implements MainThreadComments
600606
return undefined;
601607
}
602608

603-
return provider.createCommentThread(extensionId.value, commentThreadHandle, threadId, resource, range, isTemplate, editorId);
609+
return provider.createCommentThread(extensionId.value, commentThreadHandle, threadId, resource, range, comments, isTemplate, editorId);
604610
}
605611

606612
$updateCommentThread(handle: number,

src/vs/workbench/api/common/extHost.protocol.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -144,7 +144,7 @@ export interface MainThreadCommentsShape extends IDisposable {
144144
$registerCommentController(handle: number, id: string, label: string, extensionId: string): void;
145145
$unregisterCommentController(handle: number): void;
146146
$updateCommentControllerFeatures(handle: number, features: CommentProviderFeatures): void;
147-
$createCommentThread(handle: number, commentThreadHandle: number, threadId: string, resource: UriComponents, range: IRange | ICellRange | undefined, extensionId: ExtensionIdentifier, isTemplate: boolean, editorId?: string): languages.CommentThread<IRange | ICellRange> | undefined;
147+
$createCommentThread(handle: number, commentThreadHandle: number, threadId: string, resource: UriComponents, range: IRange | ICellRange | undefined, comments: languages.Comment[], extensionId: ExtensionIdentifier, isTemplate: boolean, editorId?: string): languages.CommentThread<IRange | ICellRange> | undefined;
148148
$updateCommentThread(handle: number, commentThreadHandle: number, threadId: string, resource: UriComponents, changes: CommentThreadChanges): void;
149149
$deleteCommentThread(handle: number, commentThreadHandle: number): void;
150150
$updateCommentingRanges(handle: number, resourceHints?: languages.CommentingRangeResourceHint): void;

src/vs/workbench/api/common/extHostComments.ts

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -424,6 +424,7 @@ export function createExtHostComments(mainContext: IMainContext, commands: ExtHo
424424
this._id,
425425
this._uri,
426426
extHostTypeConverter.Range.from(this._range),
427+
this._comments.map(cmt => convertToDTOComment(this, cmt, this._commentsMap, this.extensionDescription)),
427428
extensionDescription.identifier,
428429
this._isTemplate,
429430
editorId
@@ -436,9 +437,6 @@ export function createExtHostComments(mainContext: IMainContext, commands: ExtHo
436437
this.eventuallyUpdateCommentThread();
437438
}));
438439

439-
// set up comments after ctor to batch update events.
440-
this.comments = _comments;
441-
442440
this._localDisposables.push({
443441
dispose: () => {
444442
proxy.$deleteCommentThread(

0 commit comments

Comments
 (0)