Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
xxadev
vscode
提交
e5cbf755
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,发现更多精彩内容 >>
提交
e5cbf755
编写于
1月 09, 2018
作者:
I
isidor
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
commands use precondition for enablement
fixes #41103
上级
64b5169c
变更
3
显示空白变更内容
内联
并排
Showing
3 changed file
with
17 addition
and
8 deletion
+17
-8
src/vs/workbench/parts/files/electron-browser/fileActions.contribution.ts
.../parts/files/electron-browser/fileActions.contribution.ts
+11
-7
src/vs/workbench/parts/files/electron-browser/fileCommands.ts
...vs/workbench/parts/files/electron-browser/fileCommands.ts
+1
-0
src/vs/workbench/parts/files/electron-browser/views/openEditorsView.ts
...nch/parts/files/electron-browser/views/openEditorsView.ts
+5
-1
未找到文件。
src/vs/workbench/parts/files/electron-browser/fileActions.contribution.ts
浏览文件 @
e5cbf755
...
...
@@ -11,7 +11,7 @@ import { revertLocalChangesCommand, acceptLocalChangesCommand, CONFLICT_RESOLUTI
import
{
SyncActionDescriptor
,
MenuId
,
MenuRegistry
}
from
'
vs/platform/actions/common/actions
'
;
import
{
IWorkbenchActionRegistry
,
Extensions
as
ActionExtensions
}
from
'
vs/workbench/common/actions
'
;
import
{
KeyMod
,
KeyChord
,
KeyCode
}
from
'
vs/base/common/keyCodes
'
;
import
{
openWindowCommand
,
REVEAL_IN_OS_COMMAND_ID
,
COPY_PATH_COMMAND_ID
,
REVEAL_IN_EXPLORER_COMMAND_ID
,
OPEN_TO_SIDE_COMMAND_ID
,
REVERT_FILE_COMMAND_ID
,
SAVE_FILE_COMMAND_ID
,
SAVE_FILE_LABEL
,
SAVE_FILE_AS_COMMAND_ID
,
SAVE_FILE_AS_LABEL
,
SAVE_ALL_IN_GROUP_COMMAND_ID
,
OpenEditorsGroupContext
,
COMPARE_WITH_SAVED_COMMAND_ID
,
COMPARE_RESOURCE_COMMAND_ID
,
SELECT_FOR_COMPARE_COMMAND_ID
,
ResourceSelectedForCompareContext
,
REVEAL_IN_OS_LABEL
}
from
'
vs/workbench/parts/files/electron-browser/fileCommands
'
;
import
{
openWindowCommand
,
REVEAL_IN_OS_COMMAND_ID
,
COPY_PATH_COMMAND_ID
,
REVEAL_IN_EXPLORER_COMMAND_ID
,
OPEN_TO_SIDE_COMMAND_ID
,
REVERT_FILE_COMMAND_ID
,
SAVE_FILE_COMMAND_ID
,
SAVE_FILE_LABEL
,
SAVE_FILE_AS_COMMAND_ID
,
SAVE_FILE_AS_LABEL
,
SAVE_ALL_IN_GROUP_COMMAND_ID
,
OpenEditorsGroupContext
,
COMPARE_WITH_SAVED_COMMAND_ID
,
COMPARE_RESOURCE_COMMAND_ID
,
SELECT_FOR_COMPARE_COMMAND_ID
,
ResourceSelectedForCompareContext
,
REVEAL_IN_OS_LABEL
,
DirtyEditorContext
}
from
'
vs/workbench/parts/files/electron-browser/fileCommands
'
;
import
{
CommandsRegistry
,
ICommandHandler
}
from
'
vs/platform/commands/common/commands
'
;
import
{
ContextKeyExpr
}
from
'
vs/platform/contextkey/common/contextkey
'
;
import
{
KeybindingsRegistry
}
from
'
vs/platform/keybinding/common/keybindingsRegistry
'
;
...
...
@@ -195,7 +195,8 @@ MenuRegistry.appendMenuItem(MenuId.OpenEditorsContext, {
order
:
10
,
command
:
{
id
:
SAVE_FILE_COMMAND_ID
,
title
:
SAVE_FILE_LABEL
title
:
SAVE_FILE_LABEL
,
precondition
:
DirtyEditorContext
},
when
:
ContextKeyExpr
.
and
(
ResourceContextKey
.
IsFile
,
AutoSaveContext
.
notEqualsTo
(
'
afterDelay
'
))
});
...
...
@@ -205,7 +206,8 @@ MenuRegistry.appendMenuItem(MenuId.OpenEditorsContext, {
order
:
20
,
command
:
{
id
:
REVERT_FILE_COMMAND_ID
,
title
:
nls
.
localize
(
'
revert
'
,
"
Revert File
"
)
title
:
nls
.
localize
(
'
revert
'
,
"
Revert File
"
),
precondition
:
DirtyEditorContext
},
when
:
ContextKeyExpr
.
and
(
ResourceContextKey
.
IsFile
,
AutoSaveContext
.
notEqualsTo
(
'
afterDelay
'
))
});
...
...
@@ -233,9 +235,10 @@ MenuRegistry.appendMenuItem(MenuId.OpenEditorsContext, {
order
:
10
,
command
:
{
id
:
COMPARE_WITH_SAVED_COMMAND_ID
,
title
:
nls
.
localize
(
'
compareWithSaved
'
,
"
Compare with Saved
"
)
title
:
nls
.
localize
(
'
compareWithSaved
'
,
"
Compare with Saved
"
),
precondition
:
DirtyEditorContext
},
when
:
ResourceContextKey
.
IsFile
when
:
ContextKeyExpr
.
and
(
ResourceContextKey
.
IsFile
,
AutoSaveContext
.
notEqualsTo
(
'
afterDelay
'
))
});
const
compareResourceCommand
=
{
...
...
@@ -363,9 +366,10 @@ MenuRegistry.appendMenuItem(MenuId.ExplorerContext, {
order
:
20
,
command
:
{
id
:
PASTE_FILE_ID
,
title
:
PASTE_FILE_LABEL
title
:
PASTE_FILE_LABEL
,
precondition
:
FileCopiedContext
},
when
:
ContextKeyExpr
.
and
(
ExplorerFolderContext
,
FileCopiedContext
)
when
:
ExplorerFolderContext
});
MenuRegistry
.
appendMenuItem
(
MenuId
.
ExplorerContext
,
{
...
...
src/vs/workbench/parts/files/electron-browser/fileCommands.ts
浏览文件 @
e5cbf755
...
...
@@ -66,6 +66,7 @@ export const SAVE_FILES_COMMAND_ID = 'workbench.command.files.saveFiles';
export
const
SAVE_FILES_LABEL
=
nls
.
localize
(
'
saveFiles
'
,
"
Save All Files
"
);
export
const
OpenEditorsGroupContext
=
new
RawContextKey
<
boolean
>
(
'
groupFocusedInOpenEditors
'
,
false
);
export
const
DirtyEditorContext
=
new
RawContextKey
<
boolean
>
(
'
dirtyEditor
'
,
false
);
export
const
ResourceSelectedForCompareContext
=
new
RawContextKey
<
boolean
>
(
'
resourceSelectedForCompare
'
,
false
);
export
const
openWindowCommand
=
(
accessor
:
ServicesAccessor
,
paths
:
string
[],
forceNewWindow
:
boolean
)
=>
{
...
...
src/vs/workbench/parts/files/electron-browser/views/openEditorsView.ts
浏览文件 @
e5cbf755
...
...
@@ -40,7 +40,7 @@ import { KeyCode } from 'vs/base/common/keyCodes';
import
{
IDisposable
,
dispose
}
from
'
vs/base/common/lifecycle
'
;
import
{
fillInActions
}
from
'
vs/platform/actions/browser/menuItemActionItem
'
;
import
{
IMenuService
,
MenuId
,
IMenu
}
from
'
vs/platform/actions/common/actions
'
;
import
{
OpenEditorsGroupContext
}
from
'
vs/workbench/parts/files/electron-browser/fileCommands
'
;
import
{
OpenEditorsGroupContext
,
DirtyEditorContext
}
from
'
vs/workbench/parts/files/electron-browser/fileCommands
'
;
import
{
ResourceContextKey
}
from
'
vs/workbench/common/resources
'
;
import
{
DataTransfers
}
from
'
vs/base/browser/dnd
'
;
import
{
getPathLabel
,
getBaseLabel
}
from
'
vs/base/common/labels
'
;
...
...
@@ -64,6 +64,7 @@ export class OpenEditorsView extends ViewsViewletPanel {
private
needsRefresh
:
boolean
;
private
resourceContext
:
ResourceContextKey
;
private
groupFocusedContext
:
IContextKey
<
boolean
>
;
private
dirtyEditorFocusedContext
:
IContextKey
<
boolean
>
;
constructor
(
options
:
IViewletViewOptions
,
...
...
@@ -159,13 +160,16 @@ export class OpenEditorsView extends ViewsViewletPanel {
this
.
resourceContext
=
this
.
instantiationService
.
createInstance
(
ResourceContextKey
);
this
.
groupFocusedContext
=
OpenEditorsGroupContext
.
bindTo
(
this
.
contextKeyService
);
this
.
dirtyEditorFocusedContext
=
DirtyEditorContext
.
bindTo
(
this
.
contextKeyService
);
this
.
disposables
.
push
(
this
.
list
.
onContextMenu
(
e
=>
this
.
onListContextMenu
(
e
)));
this
.
list
.
onFocusChange
(
e
=>
{
this
.
resourceContext
.
reset
();
this
.
groupFocusedContext
.
reset
();
this
.
dirtyEditorFocusedContext
.
reset
();
const
element
=
e
.
elements
.
length
?
e
.
elements
[
0
]
:
undefined
;
if
(
element
instanceof
OpenEditor
)
{
this
.
dirtyEditorFocusedContext
.
set
(
this
.
textFileService
.
isDirty
(
element
.
getResource
()));
this
.
resourceContext
.
set
(
element
.
getResource
());
}
else
if
(
!!
element
)
{
this
.
groupFocusedContext
.
set
(
true
);
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录