Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
xxadev
vscode
提交
bd0a576d
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,发现更多精彩内容 >>
提交
bd0a576d
编写于
1月 11, 2018
作者:
S
Sandeep Somavarapu
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Fix #41377
上级
a08d1550
变更
4
隐藏空白更改
内联
并排
Showing
4 changed file
with
27 addition
and
67 deletion
+27
-67
src/vs/workbench/browser/parts/views/panelViewlet.ts
src/vs/workbench/browser/parts/views/panelViewlet.ts
+12
-3
src/vs/workbench/browser/parts/views/viewsViewlet.ts
src/vs/workbench/browser/parts/views/viewsViewlet.ts
+10
-3
src/vs/workbench/parts/files/electron-browser/explorerViewlet.ts
...workbench/parts/files/electron-browser/explorerViewlet.ts
+0
-61
src/vs/workbench/parts/files/electron-browser/views/openEditorsView.ts
...nch/parts/files/electron-browser/views/openEditorsView.ts
+5
-0
未找到文件。
src/vs/workbench/browser/parts/views/panelViewlet.ts
浏览文件 @
bd0a576d
...
@@ -134,7 +134,7 @@ interface IViewletPanelItem {
...
@@ -134,7 +134,7 @@ interface IViewletPanelItem {
export
class
PanelViewlet
extends
Viewlet
{
export
class
PanelViewlet
extends
Viewlet
{
pr
otected
lastFocusedPanel
:
ViewletPanel
|
undefined
;
pr
ivate
lastFocusedPanel
:
ViewletPanel
|
undefined
;
private
panelItems
:
IViewletPanelItem
[]
=
[];
private
panelItems
:
IViewletPanelItem
[]
=
[];
private
panelview
:
PanelView
;
private
panelview
:
PanelView
;
...
@@ -195,7 +195,11 @@ export class PanelViewlet extends Viewlet {
...
@@ -195,7 +195,11 @@ export class PanelViewlet extends Viewlet {
if
(
this
.
lastFocusedPanel
)
{
if
(
this
.
lastFocusedPanel
)
{
this
.
lastFocusedPanel
.
focus
();
this
.
lastFocusedPanel
.
focus
();
}
else
if
(
this
.
panelItems
.
length
>
0
)
{
}
else
if
(
this
.
panelItems
.
length
>
0
)
{
this
.
panelItems
[
0
].
panel
.
focus
();
for
(
const
{
panel
}
of
this
.
panelItems
)
{
if
(
panel
.
isExpanded
())
{
panel
.
focus
();
}
}
}
}
}
}
...
@@ -213,8 +217,13 @@ export class PanelViewlet extends Viewlet {
...
@@ -213,8 +217,13 @@ export class PanelViewlet extends Viewlet {
addPanel
(
panel
:
ViewletPanel
,
size
:
number
,
index
=
this
.
panelItems
.
length
-
1
):
void
{
addPanel
(
panel
:
ViewletPanel
,
size
:
number
,
index
=
this
.
panelItems
.
length
-
1
):
void
{
const
disposables
:
IDisposable
[]
=
[];
const
disposables
:
IDisposable
[]
=
[];
const
onDidFocus
=
panel
.
onDidFocus
(()
=>
this
.
lastFocusedPanel
=
panel
,
null
,
disposables
);
const
onDidFocus
=
panel
.
onDidFocus
(()
=>
this
.
lastFocusedPanel
=
panel
,
null
,
disposables
);
const
onDidChange
=
panel
.
onDidChange
(()
=>
{
if
(
panel
===
this
.
lastFocusedPanel
&&
!
panel
.
isExpanded
())
{
this
.
lastFocusedPanel
=
undefined
;
}
},
null
,
disposables
);
const
styler
=
attachPanelStyler
(
panel
,
this
.
themeService
);
const
styler
=
attachPanelStyler
(
panel
,
this
.
themeService
);
const
disposable
=
combinedDisposable
([
onDidFocus
,
styler
]);
const
disposable
=
combinedDisposable
([
onDidFocus
,
styler
,
onDidChange
]);
const
panelItem
:
IViewletPanelItem
=
{
panel
,
disposable
};
const
panelItem
:
IViewletPanelItem
=
{
panel
,
disposable
};
this
.
panelItems
.
splice
(
index
,
0
,
panelItem
);
this
.
panelItems
.
splice
(
index
,
0
,
panelItem
);
...
...
src/vs/workbench/browser/parts/views/viewsViewlet.ts
浏览文件 @
bd0a576d
...
@@ -347,16 +347,23 @@ export class ViewsViewlet extends PanelViewlet {
...
@@ -347,16 +347,23 @@ export class ViewsViewlet extends PanelViewlet {
super
.
shutdown
();
super
.
shutdown
();
}
}
toggleViewVisibility
(
id
:
string
,
visible
?:
boolean
):
void
{
toggleViewVisibility
(
id
:
string
):
void
{
const
view
=
this
.
getView
(
id
);
const
view
=
this
.
getView
(
id
);
let
viewState
=
this
.
viewsStates
.
get
(
id
);
let
viewState
=
this
.
viewsStates
.
get
(
id
);
if
(
!
viewState
||
(
visible
===
true
&&
view
)
||
(
visible
===
false
&&
!
view
)
)
{
if
(
!
viewState
)
{
return
;
return
;
}
}
viewState
.
isHidden
=
!!
view
;
viewState
.
isHidden
=
!!
view
;
this
.
updateViews
();
this
.
updateViews
()
.
then
(()
=>
{
if
(
!
viewState
.
isHidden
)
{
this
.
getView
(
id
).
focus
();
}
else
{
this
.
focus
();
}
});
}
}
private
onViewsRegistered
(
views
:
IViewDescriptor
[]):
void
{
private
onViewsRegistered
(
views
:
IViewDescriptor
[]):
void
{
...
...
src/vs/workbench/parts/files/electron-browser/explorerViewlet.ts
浏览文件 @
bd0a576d
...
@@ -226,67 +226,6 @@ export class ExplorerViewlet extends PersistentViewsViewlet implements IExplorer
...
@@ -226,67 +226,6 @@ export class ExplorerViewlet extends PersistentViewsViewlet implements IExplorer
return
super
.
setVisible
(
visible
);
return
super
.
setVisible
(
visible
);
}
}
public
focus
():
void
{
const
hasOpenedEditors
=
!!
this
.
editorGroupService
.
getStacksModel
().
activeGroup
;
let
openEditorsView
=
this
.
getOpenEditorsView
();
if
(
this
.
lastFocusedPanel
&&
this
.
lastFocusedPanel
.
isExpanded
()
&&
this
.
hasSelectionOrFocus
(
this
.
lastFocusedPanel
as
ViewsViewletPanel
))
{
if
(
this
.
lastFocusedPanel
!==
openEditorsView
||
hasOpenedEditors
)
{
this
.
lastFocusedPanel
.
focus
();
return
;
}
}
if
(
this
.
hasSelectionOrFocus
(
openEditorsView
)
&&
hasOpenedEditors
)
{
return
openEditorsView
.
focus
();
}
let
explorerView
=
this
.
getExplorerView
();
if
(
this
.
hasSelectionOrFocus
(
explorerView
))
{
return
explorerView
.
focus
();
}
if
(
openEditorsView
&&
openEditorsView
.
isExpanded
()
&&
hasOpenedEditors
)
{
return
openEditorsView
.
focus
();
// we have entries in the opened editors view to focus on
}
if
(
explorerView
&&
explorerView
.
isExpanded
())
{
return
explorerView
.
focus
();
}
let
emptyView
=
this
.
getEmptyView
();
if
(
emptyView
&&
emptyView
.
isExpanded
())
{
return
emptyView
.
focusBody
();
}
super
.
focus
();
}
private
hasSelectionOrFocus
(
view
:
ViewsViewletPanel
):
boolean
{
if
(
!
view
)
{
return
false
;
}
if
(
!
view
.
isExpanded
())
{
return
false
;
}
if
(
view
instanceof
ExplorerView
)
{
const
viewer
=
view
.
getViewer
();
if
(
!
viewer
)
{
return
false
;
}
return
!!
viewer
.
getFocus
()
||
(
viewer
.
getSelection
()
&&
viewer
.
getSelection
().
length
>
0
);
}
if
(
view
instanceof
OpenEditorsView
&&
!!
view
.
getList
())
{
return
view
.
getList
().
isDOMFocused
();
}
return
false
;
}
public
getActionRunner
():
IActionRunner
{
public
getActionRunner
():
IActionRunner
{
if
(
!
this
.
actionRunner
)
{
if
(
!
this
.
actionRunner
)
{
this
.
actionRunner
=
new
ActionRunner
(
this
.
viewletState
);
this
.
actionRunner
=
new
ActionRunner
(
this
.
viewletState
);
...
...
src/vs/workbench/parts/files/electron-browser/views/openEditorsView.ts
浏览文件 @
bd0a576d
...
@@ -216,6 +216,11 @@ export class OpenEditorsView extends ViewsViewletPanel {
...
@@ -216,6 +216,11 @@ export class OpenEditorsView extends ViewsViewletPanel {
});
});
}
}
public
focus
():
void
{
this
.
list
.
domFocus
();
super
.
focus
();
}
public
getList
():
WorkbenchList
<
OpenEditor
|
IEditorGroup
>
{
public
getList
():
WorkbenchList
<
OpenEditor
|
IEditorGroup
>
{
return
this
.
list
;
return
this
.
list
;
}
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录