From afa90731efaea2d9da65cb251b67f689d880c312 Mon Sep 17 00:00:00 2001 From: Alex Ross <38270282+alexr00@users.noreply.github.com> Date: Fri, 24 Jul 2026 09:43:19 +0200 Subject: [PATCH] Don't use uri params for comments document Part of https://github.com/microsoft/vscode/issues/326491 --- src/issues/userCompletionProvider.ts | 20 +++++++++++++------- src/view/reviewCommentController.ts | 2 +- 2 files changed, 14 insertions(+), 8 deletions(-) diff --git a/src/issues/userCompletionProvider.ts b/src/issues/userCompletionProvider.ts index e0a74f45e4..5443c6cac0 100644 --- a/src/issues/userCompletionProvider.ts +++ b/src/issues/userCompletionProvider.ts @@ -5,20 +5,21 @@ import * as path from 'path'; import * as vscode from 'vscode'; +import { ASSIGNEES } from './issueFile'; +import { StateManager } from './stateManager'; +import { getRootUriFromScmInputUri, isComment, UserCompletion } from './util'; import Logger from '../common/logger'; import { IGNORE_USER_COMPLETION_TRIGGER, ISSUES_SETTINGS_NAMESPACE } from '../common/settingKeys'; import { TimelineEvent } from '../common/timelineEvent'; import { fromNewIssueUri, fromPRUri, Schemes } from '../common/uri'; -import { compareIgnoreCase, isDescendant } from '../common/utils'; -import { EXTENSION_ID } from '../constants'; -import { ASSIGNEES } from './issueFile'; -import { StateManager } from './stateManager'; -import { getRootUriFromScmInputUri, isComment, UserCompletion } from './util'; +import { isDescendant } from '../common/utils'; import { FolderRepositoryManager } from '../github/folderRepositoryManager'; import { IAccount, User } from '../github/interface'; import { userMarkdown } from '../github/markdownUtils'; import { RepositoriesManager } from '../github/repositoriesManager'; import { getRelatedUsersFromTimelineEvents } from '../github/utils'; +import { PullRequestCommentController } from '../view/pullRequestCommentController'; +import { ReviewCommentController } from '../view/reviewCommentController'; export class UserCompletionProvider implements vscode.CompletionItemProvider { private static readonly ID: string = 'UserCompletionProvider'; @@ -174,8 +175,13 @@ export class UserCompletionProvider implements vscode.CompletionItemProvider { document: vscode.TextDocument, position: vscode.Position) { try { - const query = JSON.parse(document.uri.query); - if ((document.uri.scheme !== Schemes.Comment) || compareIgnoreCase(query.extensionId, EXTENSION_ID) !== 0) { + if ( + document.uri.scheme !== Schemes.Comment || + ( + !document.uri.authority.startsWith(`${PullRequestCommentController.PREFIX}-`) && + !document.uri.authority.startsWith(`${ReviewCommentController.PREFIX}-`) + ) + ) { return; } diff --git a/src/view/reviewCommentController.ts b/src/view/reviewCommentController.ts index 7855c8a2de..36c0641567 100644 --- a/src/view/reviewCommentController.ts +++ b/src/view/reviewCommentController.ts @@ -49,7 +49,7 @@ export interface SuggestionInformation { export class ReviewCommentController extends CommentControllerBase implements CommentHandler, vscode.CommentingRangeProvider2, CommentReactionHandler { private static readonly ID = 'ReviewCommentController'; - private static readonly PREFIX = 'github-review'; + static readonly PREFIX = 'github-review'; private _commentHandlerId: string; // Note: marked as protected so that tests can verify caches have been updated correctly without breaking type safety