Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
徽霖
Vscode
提交
89fbdde4
V
Vscode
项目概览
徽霖
/
Vscode
通知
9
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,发现更多精彩内容 >>
提交
89fbdde4
编写于
10月 21, 2016
作者:
B
Benjamin Pasero
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
clean up from
https://github.com/Microsoft/vscode/pull/13925
上级
1d59084d
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
33 addition
and
35 deletion
+33
-35
src/vs/base/parts/quickopen/browser/quickOpenWidget.ts
src/vs/base/parts/quickopen/browser/quickOpenWidget.ts
+4
-13
src/vs/workbench/browser/quickopen.ts
src/vs/workbench/browser/quickopen.ts
+20
-16
src/vs/workbench/common/editor.ts
src/vs/workbench/common/editor.ts
+9
-6
未找到文件。
src/vs/base/parts/quickopen/browser/quickOpenWidget.ts
浏览文件 @
89fbdde4
...
...
@@ -171,7 +171,7 @@ export class QuickOpenWidget implements IModelProvider {
const
focus
=
this
.
tree
.
getFocus
();
if
(
focus
)
{
this
.
elementSelected
(
focus
,
keyboardEvent
);
this
.
elementSelected
(
focus
,
keyboardEvent
,
keyboardEvent
.
keyCode
===
KeyCode
.
RightArrow
?
Mode
.
OPEN_IN_BACKGROUND
:
Mode
.
OPEN
);
}
}
...
...
@@ -401,23 +401,14 @@ export class QuickOpenWidget implements IModelProvider {
this
.
model
.
runner
.
run
(
value
,
Mode
.
PREVIEW
,
context
);
}
private
elementSelected
(
value
:
any
,
event
?:
any
):
void
{
private
elementSelected
(
value
:
any
,
event
?:
any
,
preferredMode
?:
Mode
):
void
{
let
hide
=
true
;
// Trigger open of element on selection
if
(
this
.
isVisible
())
{
let
eventForContext
=
event
;
let
mode
=
Mode
.
OPEN
;
let
mode
=
preferredMode
||
Mode
.
OPEN
;
if
(
event
instanceof
StandardKeyboardEvent
)
{
eventForContext
=
event
.
browserEvent
;
if
(
event
.
keyCode
===
KeyCode
.
RightArrow
)
{
mode
=
Mode
.
OPEN_IN_BACKGROUND
;
}
}
const
context
:
IEntryRunContext
=
{
event
:
eventForContext
,
keymods
:
this
.
extractKeyMods
(
eventForContext
),
quickNavigateConfiguration
:
this
.
quickNavigateConfiguration
};
const
context
:
IEntryRunContext
=
{
event
,
keymods
:
this
.
extractKeyMods
(
event
),
quickNavigateConfiguration
:
this
.
quickNavigateConfiguration
};
hide
=
this
.
model
.
runner
.
run
(
value
,
mode
,
context
);
}
...
...
src/vs/workbench/browser/quickopen.ts
浏览文件 @
89fbdde4
...
...
@@ -18,7 +18,7 @@ import { KeyMod } from 'vs/base/common/keyCodes';
import
{
Mode
,
IEntryRunContext
,
IAutoFocus
,
IModel
,
IQuickNavigateConfiguration
}
from
'
vs/base/parts/quickopen/common/quickOpen
'
;
import
{
QuickOpenEntry
,
IHighlight
,
QuickOpenEntryGroup
,
QuickOpenModel
}
from
'
vs/base/parts/quickopen/browser/quickOpenModel
'
;
import
{
EditorOptions
,
EditorInput
}
from
'
vs/workbench/common/editor
'
;
import
{
IResourceInput
,
IEditorInput
}
from
'
vs/platform/editor/common/editor
'
;
import
{
IResourceInput
,
IEditorInput
,
IEditorOptions
}
from
'
vs/platform/editor/common/editor
'
;
import
{
IWorkbenchEditorService
}
from
'
vs/workbench/services/editor/common/editorService
'
;
import
{
IQuickOpenService
}
from
'
vs/workbench/services/quickopen/common/quickOpenService
'
;
import
{
AsyncDescriptor
}
from
'
vs/platform/instantiation/common/descriptors
'
;
...
...
@@ -244,34 +244,38 @@ export class EditorQuickOpenEntry extends QuickOpenEntry implements IEditorQuick
}
public
getOptions
():
EditorOptions
{
return
EditorOptions
.
create
({})
;
return
null
;
}
public
run
(
mode
:
Mode
,
context
:
IEntryRunContext
):
boolean
{
const
hideWidget
=
mode
===
Mode
.
OPEN
;
const
hideWidget
=
(
mode
===
Mode
.
OPEN
)
;
if
(
mode
===
Mode
.
OPEN
||
mode
===
Mode
.
OPEN_IN_BACKGROUND
)
{
let
sideBySide
=
context
.
keymods
.
indexOf
(
KeyMod
.
CtrlCmd
)
>=
0
;
let
opts
=
this
.
getOptions
();
let
backgroundOpt
s
;
let
openInBackgroundOptions
:
IEditorOption
s
;
if
(
mode
===
Mode
.
OPEN_IN_BACKGROUND
)
{
backgroundOpts
=
{
pinned
:
true
,
preserveFocus
:
true
};
opts
.
mixin
(
backgroundOpts
);
openInBackgroundOptions
=
{
pinned
:
true
,
preserveFocus
:
true
};
}
let
input
=
this
.
getInput
();
if
(
input
instanceof
EditorInput
)
{
let
opts
=
this
.
getOptions
();
if
(
opts
)
{
opts
.
mixin
(
openInBackgroundOptions
);
}
else
if
(
openInBackgroundOptions
)
{
opts
=
EditorOptions
.
create
(
openInBackgroundOptions
);
}
this
.
editorService
.
openEditor
(
input
,
opts
,
sideBySide
).
done
(
null
,
errors
.
onUnexpectedError
);
}
else
{
if
(
backgroundOpts
)
{
(
<
IResourceInput
>
input
).
options
=
objects
.
assign
(
(
<
IResourceInput
>
input
).
options
||
{},
backgroundOpts
);
}
else
{
const
resourceInput
=
<
IResourceInput
>
input
;
if
(
openInBackgroundOptions
)
{
resourceInput
.
options
=
objects
.
assign
(
resourceInput
.
options
||
Object
.
create
(
null
),
openInBackgroundOptions
);
}
this
.
editorService
.
openEditor
(
<
IResourceInput
>
input
,
sideBySide
).
done
(
null
,
errors
.
onUnexpectedError
);
this
.
editorService
.
openEditor
(
resourceInput
,
sideBySide
).
done
(
null
,
errors
.
onUnexpectedError
);
}
}
...
...
@@ -431,4 +435,4 @@ export class QuickOpenAction extends Action {
return
TPromise
.
as
(
null
);
}
}
}
\ No newline at end of file
src/vs/workbench/common/editor.ts
浏览文件 @
89fbdde4
...
...
@@ -454,12 +454,15 @@ export class EditorOptions implements IEditorOptions {
/**
* Inherit all options from other EditorOptions instance.
*/
public
mixin
(
other
:
EditorOptions
):
void
{
this
.
preserveFocus
=
other
.
preserveFocus
;
this
.
forceOpen
=
other
.
forceOpen
;
this
.
revealIfVisible
=
other
.
revealIfVisible
;
this
.
pinned
=
other
.
pinned
;
this
.
index
=
other
.
index
;
public
mixin
(
other
:
IEditorOptions
):
void
{
if
(
other
)
{
this
.
preserveFocus
=
other
.
preserveFocus
;
this
.
forceOpen
=
other
.
forceOpen
;
this
.
revealIfVisible
=
other
.
revealIfVisible
;
this
.
pinned
=
other
.
pinned
;
this
.
index
=
other
.
index
;
this
.
inactive
=
other
.
inactive
;
}
}
/**
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录