Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
xxadev
vscode
提交
166110a1
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,发现更多精彩内容 >>
提交
166110a1
编写于
5月 16, 2018
作者:
K
Krzysztof Cieslak
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Add activePanel context key
上级
be10a116
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
28 addition
and
2 deletion
+28
-2
src/vs/workbench/browser/parts/panel/panelPart.ts
src/vs/workbench/browser/parts/panel/panelPart.ts
+28
-2
未找到文件。
src/vs/workbench/browser/parts/panel/panelPart.ts
浏览文件 @
166110a1
...
...
@@ -30,7 +30,11 @@ import { IBadge } from 'vs/workbench/services/activity/common/activity';
import
{
INotificationService
}
from
'
vs/platform/notification/common/notification
'
;
import
{
Dimension
}
from
'
vs/base/browser/dom
'
;
import
{
localize
}
from
'
vs/nls
'
;
import
{
IDisposable
}
from
'
vs/base/common/lifecycle
'
;
import
{
dispose
,
IDisposable
}
from
'
vs/base/common/lifecycle
'
;
import
{
RawContextKey
,
IContextKey
,
IContextKeyService
}
from
'
vs/platform/contextkey/common/contextkey
'
;
const
ActivePanleContextId
=
'
activePanel
'
;
export
const
ActivePanelContext
=
new
RawContextKey
<
string
>
(
ActivePanleContextId
,
''
);
export
class
PanelPart
extends
CompositePart
<
Panel
>
implements
IPanelService
{
...
...
@@ -40,10 +44,12 @@ export class PanelPart extends CompositePart<Panel> implements IPanelService {
public
_serviceBrand
:
any
;
private
activePanelContextKey
:
IContextKey
<
string
>
;
private
blockOpeningPanel
:
boolean
;
private
compositeBar
:
CompositeBar
;
private
compositeActions
:
{
[
compositeId
:
string
]:
{
activityAction
:
PanelActivityAction
,
pinnedAction
:
ToggleCompositePinnedAction
}
};
private
dimension
:
Dimension
;
private
disposables
:
IDisposable
[]
=
[];
constructor
(
id
:
string
,
...
...
@@ -54,7 +60,8 @@ export class PanelPart extends CompositePart<Panel> implements IPanelService {
@
IPartService
partService
:
IPartService
,
@
IKeybindingService
keybindingService
:
IKeybindingService
,
@
IInstantiationService
instantiationService
:
IInstantiationService
,
@
IThemeService
themeService
:
IThemeService
@
IThemeService
themeService
:
IThemeService
,
@
IContextKeyService
contextKeyService
:
IContextKeyService
,
)
{
super
(
notificationService
,
...
...
@@ -100,6 +107,9 @@ export class PanelPart extends CompositePart<Panel> implements IPanelService {
for
(
const
panel
of
this
.
getPanels
())
{
this
.
compositeBar
.
addComposite
(
panel
,
false
);
}
this
.
activePanelContextKey
=
ActivePanelContext
.
bindTo
(
contextKeyService
);
this
.
onDidPanelOpen
(
this
.
_onDidPanelOpen
,
this
,
this
.
disposables
);
this
.
onDidPanelClose
(
this
.
_onDidPanelClose
,
this
,
this
.
disposables
);
this
.
registerListeners
();
}
...
...
@@ -119,6 +129,18 @@ export class PanelPart extends CompositePart<Panel> implements IPanelService {
this
.
toUnbind
.
push
(
this
.
onDidPanelClose
(
panel
=>
this
.
compositeBar
.
deactivateComposite
(
panel
.
getId
())));
}
private
_onDidPanelOpen
(
viewlet
:
IPanel
):
void
{
this
.
activePanelContextKey
.
set
(
viewlet
.
getId
());
}
private
_onDidPanelClose
(
viewlet
:
IPanel
):
void
{
const
id
=
viewlet
.
getId
();
if
(
this
.
activePanelContextKey
.
get
()
===
id
)
{
this
.
activePanelContextKey
.
set
(
''
);
}
}
public
get
onDidPanelOpen
():
Event
<
IPanel
>
{
return
this
.
_onDidCompositeOpen
.
event
;
}
...
...
@@ -277,6 +299,10 @@ export class PanelPart extends CompositePart<Panel> implements IPanelService {
}
return
this
.
toolBar
.
getItemsWidth
();
}
dispose
():
void
{
this
.
disposables
=
dispose
(
this
.
disposables
);
}
}
registerThemingParticipant
((
theme
:
ITheme
,
collector
:
ICssStyleCollector
)
=>
{
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录