Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
掘金者说
vscode
提交
56c0b50c
V
vscode
项目概览
掘金者说
/
vscode
与 Fork 源项目一致
从无法访问的项目Fork
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
V
vscode
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
56c0b50c
编写于
3月 25, 2019
作者:
S
Sandeep Somavarapu
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Complete fix
上级
c5b2d047
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
25 addition
and
24 deletion
+25
-24
src/vs/workbench/browser/parts/activitybar/activitybarPart.ts
...vs/workbench/browser/parts/activitybar/activitybarPart.ts
+25
-24
未找到文件。
src/vs/workbench/browser/parts/activitybar/activitybarPart.ts
浏览文件 @
56c0b50c
...
@@ -66,6 +66,7 @@ export class ActivitybarPart extends Part implements IActivityBarService {
...
@@ -66,6 +66,7 @@ export class ActivitybarPart extends Part implements IActivityBarService {
private
cachedViewlets
:
ICachedViewlet
[]
=
[];
private
cachedViewlets
:
ICachedViewlet
[]
=
[];
private
compositeBar
:
CompositeBar
;
private
compositeBar
:
CompositeBar
;
private
compositeActions
:
{
[
compositeId
:
string
]:
{
activityAction
:
ViewletActivityAction
,
pinnedAction
:
ToggleCompositePinnedAction
}
}
=
Object
.
create
(
null
);
private
compositeActions
:
{
[
compositeId
:
string
]:
{
activityAction
:
ViewletActivityAction
,
pinnedAction
:
ToggleCompositePinnedAction
}
}
=
Object
.
create
(
null
);
private
readonly
viewletDisposables
:
Map
<
string
,
IDisposable
>
=
new
Map
<
string
,
IDisposable
>
();
constructor
(
constructor
(
@
IViewletService
private
readonly
viewletService
:
IViewletService
,
@
IViewletService
private
readonly
viewletService
:
IViewletService
,
...
@@ -109,7 +110,7 @@ export class ActivitybarPart extends Part implements IActivityBarService {
...
@@ -109,7 +110,7 @@ export class ActivitybarPart extends Part implements IActivityBarService {
// Viewlet registration
// Viewlet registration
this
.
_register
(
this
.
viewletService
.
onDidViewletRegister
(
viewlet
=>
this
.
onDidRegisterViewlets
([
viewlet
])));
this
.
_register
(
this
.
viewletService
.
onDidViewletRegister
(
viewlet
=>
this
.
onDidRegisterViewlets
([
viewlet
])));
this
.
_register
(
this
.
viewletService
.
onDidViewletDeregister
(({
id
})
=>
this
.
removeComposite
(
id
,
true
)));
this
.
_register
(
this
.
viewletService
.
onDidViewletDeregister
(({
id
})
=>
this
.
onDidDeregisterViewlet
(
id
)));
// Activate viewlet action on opening of a viewlet
// Activate viewlet action on opening of a viewlet
this
.
_register
(
this
.
viewletService
.
onDidViewletOpen
(
viewlet
=>
this
.
onDidViewletOpen
(
viewlet
)));
this
.
_register
(
this
.
viewletService
.
onDidViewletOpen
(
viewlet
=>
this
.
onDidViewletOpen
(
viewlet
)));
...
@@ -132,29 +133,9 @@ export class ActivitybarPart extends Part implements IActivityBarService {
...
@@ -132,29 +133,9 @@ export class ActivitybarPart extends Part implements IActivityBarService {
private
onDidRegisterExtensions
():
void
{
private
onDidRegisterExtensions
():
void
{
this
.
removeNotExistingComposites
();
this
.
removeNotExistingComposites
();
for
(
const
viewlet
of
this
.
viewletService
.
getViewlets
())
{
this
.
enableCompositeActions
(
viewlet
);
const
viewContainer
=
this
.
getViewContainer
(
viewlet
.
id
);
if
(
viewContainer
&&
viewContainer
.
hideIfEmpty
)
{
const
viewDescriptors
=
this
.
viewsService
.
getViewDescriptors
(
viewContainer
);
if
(
viewDescriptors
)
{
this
.
onDidChangeActiveViews
(
viewlet
,
viewDescriptors
);
viewDescriptors
.
onDidChangeActiveViews
(()
=>
this
.
onDidChangeActiveViews
(
viewlet
,
viewDescriptors
));
}
}
}
this
.
saveCachedViewlets
();
this
.
saveCachedViewlets
();
}
}
private
onDidChangeActiveViews
(
viewlet
:
ViewletDescriptor
,
viewDescriptors
:
IViewDescriptorCollection
):
void
{
if
(
viewDescriptors
.
activeViewDescriptors
.
length
)
{
this
.
compositeBar
.
addComposite
(
viewlet
);
}
else
{
this
.
removeComposite
(
viewlet
.
id
,
true
);
}
}
private
onDidViewletOpen
(
viewlet
:
IViewlet
):
void
{
private
onDidViewletOpen
(
viewlet
:
IViewlet
):
void
{
// Update the composite bar by adding
// Update the composite bar by adding
...
@@ -308,17 +289,37 @@ export class ActivitybarPart extends Part implements IActivityBarService {
...
@@ -308,17 +289,37 @@ export class ActivitybarPart extends Part implements IActivityBarService {
this
.
compositeBar
.
activateComposite
(
viewlet
.
id
);
this
.
compositeBar
.
activateComposite
(
viewlet
.
id
);
}
}
}
}
}
for
(
const
viewlet
of
viewlets
)
{
this
.
enableCompositeActions
(
viewlet
);
const
viewContainer
=
this
.
getViewContainer
(
viewlet
.
id
);
const
viewContainer
=
this
.
getViewContainer
(
viewlet
.
id
);
if
(
viewContainer
)
{
if
(
viewContainer
&&
viewContainer
.
hideIfEmpty
)
{
const
viewDescriptors
=
this
.
viewsService
.
getViewDescriptors
(
viewContainer
);
const
viewDescriptors
=
this
.
viewsService
.
getViewDescriptors
(
viewContainer
);
if
(
viewDescriptors
)
{
if
(
viewDescriptors
)
{
viewDescriptors
.
onDidChangeActiveViews
(()
=>
this
.
onDidChangeActiveViews
(
viewlet
,
viewDescriptors
));
this
.
onDidChangeActiveViews
(
viewlet
,
viewDescriptors
);
this
.
viewletDisposables
.
set
(
viewlet
.
id
,
viewDescriptors
.
onDidChangeActiveViews
(()
=>
this
.
onDidChangeActiveViews
(
viewlet
,
viewDescriptors
)));
}
}
}
}
}
}
}
}
private
onDidDeregisterViewlet
(
viewletId
:
string
):
void
{
const
disposable
=
this
.
viewletDisposables
.
get
(
viewletId
);
if
(
disposable
)
{
disposable
.
dispose
();
}
this
.
viewletDisposables
.
delete
(
viewletId
);
this
.
removeComposite
(
viewletId
,
true
);
}
private
onDidChangeActiveViews
(
viewlet
:
ViewletDescriptor
,
viewDescriptors
:
IViewDescriptorCollection
):
void
{
if
(
viewDescriptors
.
activeViewDescriptors
.
length
)
{
this
.
compositeBar
.
addComposite
(
viewlet
);
}
else
{
this
.
removeComposite
(
viewlet
.
id
,
true
);
}
}
private
shouldBeHidden
(
viewletId
:
string
,
cachedViewlet
:
ICachedViewlet
):
boolean
{
private
shouldBeHidden
(
viewletId
:
string
,
cachedViewlet
:
ICachedViewlet
):
boolean
{
const
viewContainer
=
this
.
getViewContainer
(
viewletId
);
const
viewContainer
=
this
.
getViewContainer
(
viewletId
);
if
(
!
viewContainer
||
!
viewContainer
.
hideIfEmpty
)
{
if
(
!
viewContainer
||
!
viewContainer
.
hideIfEmpty
)
{
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录