Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
xxadev
vscode
提交
95b93d3f
V
vscode
项目概览
xxadev
/
vscode
与 Fork 源项目一致
从无法访问的项目Fork
通知
2
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
V
vscode
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
95b93d3f
编写于
9月 28, 2020
作者:
S
Sandeep Somavarapu
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
skip exe recommendations if they are recommended already
上级
44fc7336
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
14 addition
and
5 deletion
+14
-5
src/vs/workbench/contrib/extensions/browser/extensionRecommendationNotificationService.ts
...ons/browser/extensionRecommendationNotificationService.ts
+14
-5
未找到文件。
src/vs/workbench/contrib/extensions/browser/extensionRecommendationNotificationService.ts
浏览文件 @
95b93d3f
...
...
@@ -66,6 +66,8 @@ export class ExtensionRecommendationNotificationService implements IExtensionRec
return
distinct
([...(
<
string
[]
>
JSON
.
parse
(
this
.
storageService
.
get
(
ignoreImportantExtensionRecommendationStorageKey
,
StorageScope
.
GLOBAL
,
'
[]
'
)))].
map
(
i
=>
i
.
toLowerCase
()));
}
private
recommendedExtensions
:
string
[]
=
[];
private
notificationsCount
:
number
=
0
;
private
hideVisibleNotificationPromise
:
CancelablePromise
<
void
>
|
undefined
;
private
visibleNotification
:
VisibleRecommendationNotification
|
undefined
;
...
...
@@ -98,26 +100,33 @@ export class ExtensionRecommendationNotificationService implements IExtensionRec
return
RecommendationsNotificationResult
.
Ignored
;
}
// Ignore exe recommendation if the window has shown two recommendations already
if
(
source
===
RecommendationSource
.
EXE
&&
this
.
notificationsCount
>=
2
)
{
return
RecommendationsNotificationResult
.
TooMany
;
}
const
ignoredRecommendations
=
[...
this
.
extensionIgnoredRecommendationsService
.
ignoredRecommendations
,
...
this
.
ignoredRecommendations
];
extensionIds
=
extensionIds
.
filter
(
id
=>
!
ignoredRecommendations
.
includes
(
id
));
if
(
!
extensionIds
.
length
)
{
return
RecommendationsNotificationResult
.
Ignored
;
}
const
extensions
=
await
this
.
getInstallableExtensions
(
extensionIds
);
if
(
!
extensions
.
length
)
{
// Ignore exe recommendation if recommendations are already shown
if
(
source
===
RecommendationSource
.
EXE
&&
extensionIds
.
every
(
id
=>
this
.
recommendedExtensions
.
includes
(
id
))
)
{
return
RecommendationsNotificationResult
.
Ignored
;
}
// Do not show exe recommendation if the window has shown two recommendations already
if
(
this
.
notificationsCount
>=
2
&&
source
===
RecommendationSource
.
EXE
)
{
return
RecommendationsNotificationResult
.
TooMany
;
const
extensions
=
await
this
.
getInstallableExtensions
(
extensionIds
);
if
(
!
extensions
.
length
)
{
return
RecommendationsNotificationResult
.
Ignored
;
}
if
(
this
.
tasExperimentService
&&
extensionIds
.
indexOf
(
'
ms-vscode-remote.remote-wsl
'
)
!==
-
1
)
{
await
this
.
tasExperimentService
.
getTreatment
<
boolean
>
(
'
wslpopupaa
'
);
}
this
.
recommendedExtensions
=
distinct
([...
this
.
recommendedExtensions
,
...
extensionIds
]);
return
new
Promise
<
RecommendationsNotificationResult
>
(
async
(
c
,
e
)
=>
{
let
result
=
RecommendationsNotificationResult
.
Accepted
;
const
handle
=
await
this
.
showNotification
({
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录