Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
xxadev
vscode
提交
40dac139
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,发现更多精彩内容 >>
提交
40dac139
编写于
11月 16, 2016
作者:
I
isidor
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
zen mode: esc to exit zen mode with lowest weight
上级
4ad6d178
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
20 addition
and
7 deletion
+20
-7
src/vs/workbench/electron-browser/main.contribution.ts
src/vs/workbench/electron-browser/main.contribution.ts
+14
-1
src/vs/workbench/electron-browser/workbench.ts
src/vs/workbench/electron-browser/workbench.ts
+6
-6
未找到文件。
src/vs/workbench/electron-browser/main.contribution.ts
浏览文件 @
40dac139
...
...
@@ -13,11 +13,13 @@ import { IConfigurationRegistry, Extensions as ConfigurationExtensions } from 'v
import
{
IWorkbenchActionRegistry
,
Extensions
}
from
'
vs/workbench/common/actionRegistry
'
;
import
{
KeyMod
,
KeyChord
,
KeyCode
}
from
'
vs/base/common/keyCodes
'
;
import
platform
=
require
(
'
vs/base/common/platform
'
);
import
{
ServicesAccessor
}
from
'
vs/platform/instantiation/common/instantiation
'
;
import
{
IKeybindings
}
from
'
vs/platform/keybinding/common/keybinding
'
;
import
{
KeybindingsRegistry
}
from
'
vs/platform/keybinding/common/keybindingsRegistry
'
;
import
{
IPartService
}
from
'
vs/workbench/services/part/common/partService
'
;
import
{
IWindowIPCService
}
from
'
vs/workbench/services/window/electron-browser/windowService
'
;
import
{
CloseEditorAction
,
ReportIssueAction
,
ZoomResetAction
,
ZoomOutAction
,
ZoomInAction
,
ToggleFullScreenAction
,
ToggleMenuBarAction
,
CloseFolderAction
,
CloseWindowAction
,
SwitchWindow
,
NewWindowAction
,
CloseMessagesAction
}
from
'
vs/workbench/electron-browser/actions
'
;
import
{
MessagesVisibleContext
,
NoEditorsVisibleContext
}
from
'
vs/workbench/electron-browser/workbench
'
;
import
{
MessagesVisibleContext
,
NoEditorsVisibleContext
,
InZenModeContext
}
from
'
vs/workbench/electron-browser/workbench
'
;
import
{
IJSONSchema
}
from
'
vs/base/common/jsonSchema
'
;
const
closeEditorOrWindowKeybindings
:
IKeybindings
=
{
primary
:
KeyMod
.
CtrlCmd
|
KeyCode
.
KEY_W
,
win
:
{
primary
:
KeyMod
.
CtrlCmd
|
KeyCode
.
F4
,
secondary
:
[
KeyMod
.
CtrlCmd
|
KeyCode
.
KEY_W
]
}
};
...
...
@@ -70,6 +72,17 @@ KeybindingsRegistry.registerCommandAndKeybindingRule({
}
});
KeybindingsRegistry
.
registerCommandAndKeybindingRule
({
id
:
'
_workbench.exitZenMode
'
,
weight
:
0
,
handler
(
accessor
:
ServicesAccessor
,
configurationOrName
:
any
)
{
const
partService
=
accessor
.
get
(
IPartService
);
partService
.
toggleZenMode
();
},
when
:
InZenModeContext
,
primary
:
KeyCode
.
Escape
});
// Configuration: Workbench
const
configurationRegistry
=
Registry
.
as
<
IConfigurationRegistry
>
(
ConfigurationExtensions
.
Configuration
);
configurationRegistry
.
registerConfiguration
({
...
...
src/vs/workbench/electron-browser/workbench.ts
浏览文件 @
40dac139
...
...
@@ -92,6 +92,7 @@ import { IWindowConfiguration } from 'vs/workbench/electron-browser/common';
export
const
MessagesVisibleContext
=
new
RawContextKey
<
boolean
>
(
'
globalMessageVisible
'
,
false
);
export
const
EditorsVisibleContext
=
new
RawContextKey
<
boolean
>
(
'
editorIsOpen
'
,
false
);
export
const
InZenModeContext
=
new
RawContextKey
<
boolean
>
(
'
inZenMode
'
,
false
);
export
const
NoEditorsVisibleContext
:
ContextKeyExpr
=
EditorsVisibleContext
.
toNegated
();
interface
WorkbenchParams
{
...
...
@@ -166,6 +167,7 @@ export class Workbench implements IPartService {
private
editorBackgroundDelayer
:
Delayer
<
void
>
;
private
messagesVisibleContext
:
IContextKey
<
boolean
>
;
private
editorsVisibleContext
:
IContextKey
<
boolean
>
;
private
inZenMode
:
IContextKey
<
boolean
>
;
private
hasFilesToCreateOpenOrDiff
:
boolean
;
private
zenMode
:
{
active
:
boolean
;
...
...
@@ -243,6 +245,7 @@ export class Workbench implements IPartService {
// Contexts
this
.
messagesVisibleContext
=
MessagesVisibleContext
.
bindTo
(
this
.
contextKeyService
);
this
.
editorsVisibleContext
=
EditorsVisibleContext
.
bindTo
(
this
.
contextKeyService
);
this
.
inZenMode
=
InZenModeContext
.
bindTo
(
this
.
contextKeyService
);
// Register Listeners
this
.
registerListeners
();
...
...
@@ -842,14 +845,12 @@ export class Workbench implements IPartService {
// Apply as CSS class
const
isFullscreen
=
browser
.
isFullscreen
();
let
exitedZenMode
=
false
;
if
(
isFullscreen
)
{
this
.
addClass
(
'
fullscreen
'
);
}
else
{
this
.
removeClass
(
'
fullscreen
'
);
if
(
this
.
zenMode
.
transitionedToFullScreen
)
{
this
.
zenMode
.
active
=
false
;
exitedZenMode
=
true
;
if
(
this
.
zenMode
.
transitionedToFullScreen
&&
this
.
zenMode
.
active
)
{
this
.
toggleZenMode
();
}
}
...
...
@@ -857,8 +858,6 @@ export class Workbench implements IPartService {
const
hasCustomTitle
=
this
.
getCustomTitleBarStyle
()
===
'
custom
'
;
if
(
hasCustomTitle
)
{
this
.
_onTitleBarVisibilityChange
.
fire
();
}
if
(
hasCustomTitle
||
exitedZenMode
)
{
this
.
layout
();
// handle title bar when fullscreen changes
}
}
...
...
@@ -1070,6 +1069,7 @@ export class Workbench implements IPartService {
public
toggleZenMode
():
void
{
this
.
zenMode
.
active
=
!
this
.
zenMode
.
active
;
this
.
inZenMode
.
set
(
this
.
zenMode
.
active
);
Object
.
keys
(
this
.
zenMode
.
isPartVisible
).
forEach
(
key
=>
this
.
zenMode
.
isPartVisible
[
key
]
=
false
);
if
(
!
this
.
zenMode
.
active
&&
this
.
zenMode
.
transitionedToFullScreen
&&
browser
.
isFullscreen
())
{
// Zen mode transitioned to full screen, now that we are out of zen mode we need to go out of full screen
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录