未验证 提交 2d6b50d6 编写于 作者: H Harald Kirschner 提交者: GitHub

TAS treatment for language recommendation prompt (#133494)

上级 b5a259b7
......@@ -25,6 +25,7 @@ import { IExtensionService } from 'vs/workbench/services/extensions/common/exten
import { IModelService } from 'vs/editor/common/services/modelService';
import { IModeService } from 'vs/editor/common/services/modeService';
import { IExtensionRecommendationNotificationService, RecommendationsNotificationResult, RecommendationSource } from 'vs/platform/extensionRecommendations/common/extensionRecommendations';
import { ITASExperimentService } from 'vs/workbench/services/experiment/common/experimentService';
import { distinct } from 'vs/base/common/arrays';
import { DisposableStore } from 'vs/base/common/lifecycle';
import { CellUri } from 'vs/workbench/contrib/notebook/common/notebookCommon';
......@@ -103,9 +104,12 @@ export class FileBasedRecommendations extends ExtensionRecommendations {
@IExtensionRecommendationNotificationService private readonly extensionRecommendationNotificationService: IExtensionRecommendationNotificationService,
@IExtensionIgnoredRecommendationsService private readonly extensionIgnoredRecommendationsService: IExtensionIgnoredRecommendationsService,
@IFileService private readonly fileService: IFileService,
@ITASExperimentService private tasExperimentService: ITASExperimentService,
) {
super();
this.tasExperimentService = tasExperimentService;
if (productService.extensionTips) {
forEach(productService.extensionTips, ({ key, value }) => this.extensionTips.set(key.toLowerCase(), value));
}
......@@ -278,7 +282,9 @@ export class FileBasedRecommendations extends ExtensionRecommendations {
return false;
}
this.extensionRecommendationNotificationService.promptImportantExtensionsInstallNotification([extensionId], localize('reallyRecommended', "Do you want to install the recommended extensions for {0}?", name), `@id:${extensionId}`, RecommendationSource.FILE)
const message = await this.tasExperimentService.getTreatment<string>('languageRecommendationMessage') ?? localize('reallyRecommended', "Do you want to install the recommended extensions for {0}?", name);
this.extensionRecommendationNotificationService.promptImportantExtensionsInstallNotification([extensionId], message, `@id:${extensionId}`, RecommendationSource.FILE)
.then(result => {
if (result === RecommendationsNotificationResult.Accepted) {
this.addToPromptedRecommendations(language, [extensionId]);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册