Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
xxadev
vscode
提交
8602d6d7
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,发现更多精彩内容 >>
提交
8602d6d7
编写于
11月 29, 2018
作者:
J
Joao Moreno
浏览文件
操作
浏览文件
下载
差异文件
Merge branch 'master' into isidorn/debugTrees
上级
5f914ae2
b2cdc620
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
38 addition
and
15 deletion
+38
-15
src/vs/base/browser/ui/tree/asyncDataTree.ts
src/vs/base/browser/ui/tree/asyncDataTree.ts
+25
-14
src/vs/editor/contrib/referenceSearch/media/referencesWidget.css
...editor/contrib/referenceSearch/media/referencesWidget.css
+4
-0
src/vs/workbench/browser/parts/views/customView.ts
src/vs/workbench/browser/parts/views/customView.ts
+9
-1
未找到文件。
src/vs/base/browser/ui/tree/asyncDataTree.ts
浏览文件 @
8602d6d7
...
...
@@ -27,7 +27,7 @@ enum AsyncDataTreeNodeState {
}
interface
IAsyncDataTreeNode
<
T
extends
NonNullable
<
any
>>
{
readonly
element
:
T
|
null
;
element
:
T
|
null
;
readonly
parent
:
IAsyncDataTreeNode
<
T
>
|
null
;
readonly
id
?:
string
|
null
;
readonly
children
?:
IAsyncDataTreeNode
<
T
>
[];
...
...
@@ -263,7 +263,7 @@ export class AsyncDataTree<T extends NonNullable<any>, TFilterData = void> imple
// Data Tree
refresh
(
element
:
T
|
null
,
recursive
=
fals
e
):
Thenable
<
void
>
{
refresh
(
element
:
T
|
null
,
recursive
=
tru
e
):
Thenable
<
void
>
{
return
this
.
refreshNode
(
this
.
getDataNode
(
element
),
recursive
,
ChildrenResolutionReason
.
Refresh
);
}
...
...
@@ -409,7 +409,15 @@ export class AsyncDataTree<T extends NonNullable<any>, TFilterData = void> imple
return
node
;
}
private
refreshNode
(
node
:
IAsyncDataTreeNode
<
T
>
,
recursive
:
boolean
,
reason
:
ChildrenResolutionReason
):
Thenable
<
void
>
{
private
async
refreshNode
(
node
:
IAsyncDataTreeNode
<
T
>
,
recursive
:
boolean
,
reason
:
ChildrenResolutionReason
):
Promise
<
void
>
{
await
this
.
_refreshNode
(
node
,
recursive
,
reason
);
if
(
recursive
&&
node
.
children
)
{
await
Promise
.
all
(
node
.
children
.
map
(
child
=>
this
.
refreshNode
(
child
,
recursive
,
reason
)));
}
}
private
_refreshNode
(
node
:
IAsyncDataTreeNode
<
T
>
,
recursive
:
boolean
,
reason
:
ChildrenResolutionReason
):
Thenable
<
void
>
{
let
result
=
this
.
refreshPromises
.
get
(
node
);
if
(
result
)
{
...
...
@@ -427,6 +435,8 @@ export class AsyncDataTree<T extends NonNullable<any>, TFilterData = void> imple
if
(
!
hasChildren
)
{
this
.
setChildren
(
node
,
[],
recursive
);
return
Promise
.
resolve
();
}
else
if
(
node
!==
this
.
root
&&
this
.
tree
.
isCollapsed
(
node
))
{
return
Promise
.
resolve
();
}
else
{
node
.
state
=
AsyncDataTreeNodeState
.
Loading
;
this
.
_onDidChangeNodeState
.
fire
(
node
);
...
...
@@ -503,19 +513,20 @@ export class AsyncDataTree<T extends NonNullable<any>, TFilterData = void> imple
};
}
// TODO
// if (recursive) {
// asyncDataTreeNode.state = AsyncDataTreeNodeState.Uninitialized;
asyncDataTreeNode
.
element
=
element
;
if
(
recursive
)
{
asyncDataTreeNode
.
state
=
AsyncDataTreeNodeState
.
Uninitialized
;
//
if (this.tree.isCollapsed(asyncDataTreeNode)) {
//
asyncDataTreeNode.children!.length = 0;
if
(
this
.
tree
.
isCollapsed
(
asyncDataTreeNode
))
{
asyncDataTreeNode
.
children
!
.
length
=
0
;
//
return {
//
element: asyncDataTreeNode,
//
collapsible: this.dataSource.hasChildren(element),
//
};
//
}
//
}
return
{
element
:
asyncDataTreeNode
,
collapsible
:
this
.
dataSource
.
hasChildren
(
element
),
};
}
}
return
{
element
:
asyncDataTreeNode
,
...
...
src/vs/editor/contrib/referenceSearch/media/referencesWidget.css
浏览文件 @
8602d6d7
...
...
@@ -36,6 +36,10 @@
height
:
100%
;
}
.monaco-editor
.reference-zone-widget
.ref-tree
.monaco-list
:focus
.selected
.reference-file
{
color
:
inherit
!important
;
}
.monaco-editor
.reference-zone-widget
.ref-tree
.reference-file
.count
{
margin-right
:
12px
;
margin-left
:
auto
;
...
...
src/vs/workbench/browser/parts/views/customView.ts
浏览文件 @
8602d6d7
...
...
@@ -35,7 +35,7 @@ import { IMouseEvent } from 'vs/base/browser/mouseEvent';
import
{
localize
}
from
'
vs/nls
'
;
import
{
timeout
}
from
'
vs/base/common/async
'
;
import
{
CollapseAllAction
}
from
'
vs/base/parts/tree/browser/treeDefaults
'
;
import
{
editorFindMatchHighlight
,
editorFindMatchHighlightBorder
}
from
'
vs/platform/theme/common/colorRegistry
'
;
import
{
editorFindMatchHighlight
,
editorFindMatchHighlightBorder
,
textLinkForeground
,
textCodeBlockBackground
}
from
'
vs/platform/theme/common/colorRegistry
'
;
import
{
IMarkdownString
}
from
'
vs/base/common/htmlContent
'
;
import
{
isString
}
from
'
vs/base/common/types
'
;
import
{
renderMarkdown
,
RenderOptions
}
from
'
vs/base/browser/htmlContentRenderer
'
;
...
...
@@ -583,6 +583,14 @@ registerThemingParticipant((theme, collector) => {
if
(
findMatchHighlightColorBorder
)
{
collector
.
addRule
(
`.file-icon-themable-tree .monaco-tree-row .content .monaco-highlighted-label .highlight { color: unset !important; border: 1px dotted
${
findMatchHighlightColorBorder
}
; box-sizing: border-box; }`
);
}
const
link
=
theme
.
getColor
(
textLinkForeground
);
if
(
link
)
{
collector
.
addRule
(
`.tree-explorer-viewlet-tree-view > .message a { color:
${
link
}
; }`
);
}
const
codeBackground
=
theme
.
getColor
(
textCodeBlockBackground
);
if
(
codeBackground
)
{
collector
.
addRule
(
`.tree-explorer-viewlet-tree-view > .message code { background-color:
${
codeBackground
}
; }`
);
}
});
class
TreeRenderer
implements
IRenderer
{
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录