Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
xxadev
vscode
提交
47813a3e
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(gitcode.net)2024年7月9日维护升级公告
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
47813a3e
编写于
2月 11, 2020
作者:
S
SteVen Batten
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
run and debug views can move
refs #90468
上级
543b36d9
变更
7
隐藏空白更改
内联
并排
Showing
7 changed file
with
73 addition
and
16 deletion
+73
-16
src/vs/platform/list/browser/listService.ts
src/vs/platform/list/browser/listService.ts
+35
-1
src/vs/workbench/contrib/debug/browser/breakpointsView.ts
src/vs/workbench/contrib/debug/browser/breakpointsView.ts
+7
-2
src/vs/workbench/contrib/debug/browser/callStackView.ts
src/vs/workbench/contrib/debug/browser/callStackView.ts
+7
-2
src/vs/workbench/contrib/debug/browser/debug.contribution.ts
src/vs/workbench/contrib/debug/browser/debug.contribution.ts
+5
-5
src/vs/workbench/contrib/debug/browser/loadedScriptsView.ts
src/vs/workbench/contrib/debug/browser/loadedScriptsView.ts
+7
-2
src/vs/workbench/contrib/debug/browser/variablesView.ts
src/vs/workbench/contrib/debug/browser/variablesView.ts
+6
-2
src/vs/workbench/contrib/debug/browser/watchExpressionsView.ts
...s/workbench/contrib/debug/browser/watchExpressionsView.ts
+6
-2
未找到文件。
src/vs/platform/list/browser/listService.ts
浏览文件 @
47813a3e
...
...
@@ -243,11 +243,13 @@ export class WorkbenchList<T> extends List<T> {
readonly
contextKeyService
:
IContextKeyService
;
private
readonly
configurationService
:
IConfigurationService
;
private
readonly
themeService
:
IThemeService
;
private
listHasSelectionOrFocus
:
IContextKey
<
boolean
>
;
private
listDoubleSelection
:
IContextKey
<
boolean
>
;
private
listMultiSelection
:
IContextKey
<
boolean
>
;
private
_styler
:
IDisposable
|
undefined
;
private
_useAltAsMultipleSelectionModifier
:
boolean
;
constructor
(
...
...
@@ -278,6 +280,7 @@ export class WorkbenchList<T> extends List<T> {
this
.
contextKeyService
=
createScopedContextKeyService
(
contextKeyService
,
this
);
this
.
configurationService
=
configurationService
;
this
.
themeService
=
themeService
;
const
listSupportsMultiSelect
=
WorkbenchListSupportsMultiSelectContextKey
.
bindTo
(
this
.
contextKeyService
);
listSupportsMultiSelect
.
set
(
!
(
options
.
multipleSelectionSupport
===
false
));
...
...
@@ -292,7 +295,7 @@ export class WorkbenchList<T> extends List<T> {
this
.
disposables
.
add
((
listService
as
ListService
).
register
(
this
));
if
(
options
.
overrideStyles
)
{
this
.
disposables
.
add
(
attachListStyler
(
this
,
themeService
,
options
.
overrideStyles
)
);
this
.
updateStyles
(
options
.
overrideStyles
);
}
this
.
disposables
.
add
(
this
.
onSelectionChange
(()
=>
{
...
...
@@ -313,6 +316,29 @@ export class WorkbenchList<T> extends List<T> {
this
.
registerListeners
();
}
updateOptions
(
options
:
IWorkbenchListOptions
<
T
>
):
void
{
super
.
updateOptions
(
options
);
if
(
options
.
overrideStyles
)
{
this
.
updateStyles
(
options
.
overrideStyles
);
}
}
dispose
():
void
{
super
.
dispose
();
if
(
this
.
_styler
)
{
this
.
_styler
.
dispose
();
}
}
private
updateStyles
(
styles
:
IColorMapping
):
void
{
if
(
this
.
_styler
)
{
this
.
_styler
.
dispose
();
}
this
.
_styler
=
attachListStyler
(
this
,
this
.
themeService
,
styles
);
}
private
registerListeners
():
void
{
this
.
disposables
.
add
(
this
.
configurationService
.
onDidChangeConfiguration
(
e
=>
{
if
(
e
.
affectsConfiguration
(
multiSelectModifierSettingKey
))
{
...
...
@@ -775,6 +801,14 @@ export class WorkbenchCompressibleObjectTree<T extends NonNullable<any>, TFilter
this
.
internals
=
new
WorkbenchTreeInternals
(
this
,
treeOptions
,
getAutomaticKeyboardNavigation
,
options
.
overrideStyles
,
contextKeyService
,
listService
,
themeService
,
configurationService
,
accessibilityService
);
this
.
disposables
.
add
(
this
.
internals
);
}
updateOptions
(
options
:
IWorkbenchAsyncDataTreeOptions
<
T
,
TFilterData
>
=
{}):
void
{
super
.
updateOptions
(
options
);
if
(
options
.
overrideStyles
)
{
this
.
internals
.
updateStyleOverrides
(
options
.
overrideStyles
);
}
}
}
export
interface
IWorkbenchDataTreeOptions
<
T
,
TFilterData
>
extends
IDataTreeOptions
<
T
,
TFilterData
>
{
...
...
src/vs/workbench/contrib/debug/browser/breakpointsView.ts
浏览文件 @
47813a3e
...
...
@@ -31,7 +31,6 @@ import { IEditorService, SIDE_GROUP, ACTIVE_GROUP } from 'vs/workbench/services/
import
{
ViewPane
,
IViewPaneOptions
}
from
'
vs/workbench/browser/parts/views/viewPaneContainer
'
;
import
{
ILabelService
}
from
'
vs/platform/label/common/label
'
;
import
{
IContextKeyService
}
from
'
vs/platform/contextkey/common/contextkey
'
;
import
{
SIDE_BAR_BACKGROUND
}
from
'
vs/workbench/common/theme
'
;
import
{
Gesture
}
from
'
vs/base/browser/touch
'
;
import
{
IViewDescriptorService
}
from
'
vs/workbench/common/views
'
;
import
{
TextEditorSelectionRevealType
}
from
'
vs/platform/editor/common/editor
'
;
...
...
@@ -102,7 +101,7 @@ export class BreakpointsView extends ViewPane {
isChecked
:
(
breakpoint
:
IEnablement
)
=>
breakpoint
.
enabled
},
overrideStyles
:
{
listBackground
:
SIDE_BAR_BACKGROUND
listBackground
:
this
.
getBackgroundColor
()
}
});
...
...
@@ -154,6 +153,12 @@ export class BreakpointsView extends ViewPane {
this
.
onBreakpointsChange
();
}
}));
this
.
_register
(
this
.
viewDescriptorService
.
onDidChangeLocation
(({
views
,
from
,
to
})
=>
{
if
(
views
.
some
(
v
=>
v
.
id
===
this
.
id
))
{
this
.
list
.
updateOptions
({
overrideStyles
:
{
listBackground
:
this
.
getBackgroundColor
()
}
});
}
}));
}
public
focus
():
void
{
...
...
src/vs/workbench/contrib/debug/browser/callStackView.ts
浏览文件 @
47813a3e
...
...
@@ -34,7 +34,6 @@ import { isSessionAttach } from 'vs/workbench/contrib/debug/common/debugUtils';
import
{
STOP_ID
,
STOP_LABEL
,
DISCONNECT_ID
,
DISCONNECT_LABEL
,
RESTART_SESSION_ID
,
RESTART_LABEL
,
STEP_OVER_ID
,
STEP_OVER_LABEL
,
STEP_INTO_LABEL
,
STEP_INTO_ID
,
STEP_OUT_LABEL
,
STEP_OUT_ID
,
PAUSE_ID
,
PAUSE_LABEL
,
CONTINUE_ID
,
CONTINUE_LABEL
}
from
'
vs/workbench/contrib/debug/browser/debugCommands
'
;
import
{
ICommandService
}
from
'
vs/platform/commands/common/commands
'
;
import
{
CollapseAction
}
from
'
vs/workbench/browser/viewlet
'
;
import
{
SIDE_BAR_BACKGROUND
}
from
'
vs/workbench/common/theme
'
;
import
{
IViewDescriptorService
}
from
'
vs/workbench/common/views
'
;
import
{
IThemeService
}
from
'
vs/platform/theme/common/themeService
'
;
import
{
IOpenerService
}
from
'
vs/platform/opener/common/opener
'
;
...
...
@@ -203,7 +202,7 @@ export class CallStackView extends ViewPane {
},
expandOnlyOnTwistieClick
:
true
,
overrideStyles
:
{
listBackground
:
SIDE_BAR_BACKGROUND
listBackground
:
this
.
getBackgroundColor
()
}
});
...
...
@@ -296,6 +295,12 @@ export class CallStackView extends ViewPane {
this
.
parentSessionToExpand
.
add
(
s
.
parentSession
);
}
}));
this
.
_register
(
this
.
viewDescriptorService
.
onDidChangeLocation
(({
views
,
from
,
to
})
=>
{
if
(
views
.
some
(
v
=>
v
.
id
===
this
.
id
))
{
this
.
tree
.
updateOptions
({
overrideStyles
:
{
listBackground
:
this
.
getBackgroundColor
()
}
});
}
}));
}
layoutBody
(
height
:
number
,
width
:
number
):
void
{
...
...
src/vs/workbench/contrib/debug/browser/debug.contribution.ts
浏览文件 @
47813a3e
...
...
@@ -104,12 +104,12 @@ Registry.as<IViewsRegistry>(ViewExtensions.ViewsRegistry).registerViews([{
// Register default debug views
const
viewsRegistry
=
Registry
.
as
<
IViewsRegistry
>
(
ViewExtensions
.
ViewsRegistry
);
viewsRegistry
.
registerViews
([{
id
:
VARIABLES_VIEW_ID
,
name
:
nls
.
localize
(
'
variables
'
,
"
Variables
"
),
ctorDescriptor
:
new
SyncDescriptor
(
VariablesView
),
order
:
10
,
weight
:
40
,
canToggleVisibility
:
true
,
focusCommand
:
{
id
:
'
workbench.debug.action.focusVariablesView
'
},
when
:
CONTEXT_DEBUG_UX
.
isEqualTo
(
'
default
'
)
}],
viewContainer
);
viewsRegistry
.
registerViews
([{
id
:
WATCH_VIEW_ID
,
name
:
nls
.
localize
(
'
watch
'
,
"
Watch
"
),
ctorDescriptor
:
new
SyncDescriptor
(
WatchExpressionsView
),
order
:
20
,
weight
:
10
,
canToggleVisibility
:
true
,
focusCommand
:
{
id
:
'
workbench.debug.action.focusWatchView
'
},
when
:
CONTEXT_DEBUG_UX
.
isEqualTo
(
'
default
'
)
}],
viewContainer
);
viewsRegistry
.
registerViews
([{
id
:
CALLSTACK_VIEW_ID
,
name
:
nls
.
localize
(
'
callStack
'
,
"
Call Stack
"
),
ctorDescriptor
:
new
SyncDescriptor
(
CallStackView
),
order
:
30
,
weight
:
30
,
canToggleVisibility
:
true
,
focusCommand
:
{
id
:
'
workbench.debug.action.focusCallStackView
'
},
when
:
CONTEXT_DEBUG_UX
.
isEqualTo
(
'
default
'
)
}],
viewContainer
);
viewsRegistry
.
registerViews
([{
id
:
BREAKPOINTS_VIEW_ID
,
name
:
nls
.
localize
(
'
breakpoints
'
,
"
Breakpoints
"
),
ctorDescriptor
:
new
SyncDescriptor
(
BreakpointsView
),
order
:
40
,
weight
:
20
,
canToggleVisibility
:
true
,
focusCommand
:
{
id
:
'
workbench.debug.action.focusBreakpointsView
'
},
when
:
ContextKeyExpr
.
or
(
CONTEXT_BREAKPOINTS_EXIST
,
CONTEXT_DEBUG_UX
.
isEqualTo
(
'
default
'
))
}],
viewContainer
);
viewsRegistry
.
registerViews
([{
id
:
VARIABLES_VIEW_ID
,
name
:
nls
.
localize
(
'
variables
'
,
"
Variables
"
),
ctorDescriptor
:
new
SyncDescriptor
(
VariablesView
),
order
:
10
,
weight
:
40
,
canToggleVisibility
:
true
,
canMoveView
:
true
,
focusCommand
:
{
id
:
'
workbench.debug.action.focusVariablesView
'
},
when
:
CONTEXT_DEBUG_UX
.
isEqualTo
(
'
default
'
)
}],
viewContainer
);
viewsRegistry
.
registerViews
([{
id
:
WATCH_VIEW_ID
,
name
:
nls
.
localize
(
'
watch
'
,
"
Watch
"
),
ctorDescriptor
:
new
SyncDescriptor
(
WatchExpressionsView
),
order
:
20
,
weight
:
10
,
canToggleVisibility
:
true
,
canMoveView
:
true
,
focusCommand
:
{
id
:
'
workbench.debug.action.focusWatchView
'
},
when
:
CONTEXT_DEBUG_UX
.
isEqualTo
(
'
default
'
)
}],
viewContainer
);
viewsRegistry
.
registerViews
([{
id
:
CALLSTACK_VIEW_ID
,
name
:
nls
.
localize
(
'
callStack
'
,
"
Call Stack
"
),
ctorDescriptor
:
new
SyncDescriptor
(
CallStackView
),
order
:
30
,
weight
:
30
,
canToggleVisibility
:
true
,
canMoveView
:
true
,
focusCommand
:
{
id
:
'
workbench.debug.action.focusCallStackView
'
},
when
:
CONTEXT_DEBUG_UX
.
isEqualTo
(
'
default
'
)
}],
viewContainer
);
viewsRegistry
.
registerViews
([{
id
:
BREAKPOINTS_VIEW_ID
,
name
:
nls
.
localize
(
'
breakpoints
'
,
"
Breakpoints
"
),
ctorDescriptor
:
new
SyncDescriptor
(
BreakpointsView
),
order
:
40
,
weight
:
20
,
canToggleVisibility
:
true
,
canMoveView
:
true
,
focusCommand
:
{
id
:
'
workbench.debug.action.focusBreakpointsView
'
},
when
:
ContextKeyExpr
.
or
(
CONTEXT_BREAKPOINTS_EXIST
,
CONTEXT_DEBUG_UX
.
isEqualTo
(
'
default
'
))
}],
viewContainer
);
viewsRegistry
.
registerViews
([{
id
:
StartView
.
ID
,
name
:
StartView
.
LABEL
,
ctorDescriptor
:
new
SyncDescriptor
(
StartView
),
order
:
10
,
weight
:
40
,
canToggleVisibility
:
true
,
when
:
CONTEXT_DEBUG_UX
.
isEqualTo
(
'
simple
'
)
}],
viewContainer
);
viewsRegistry
.
registerViews
([{
id
:
LOADED_SCRIPTS_VIEW_ID
,
name
:
nls
.
localize
(
'
loadedScripts
'
,
"
Loaded Scripts
"
),
ctorDescriptor
:
new
SyncDescriptor
(
LoadedScriptsView
),
order
:
35
,
weight
:
5
,
canToggleVisibility
:
true
,
collapsed
:
true
,
when
:
ContextKeyExpr
.
and
(
CONTEXT_LOADED_SCRIPTS_SUPPORTED
,
CONTEXT_DEBUG_UX
.
isEqualTo
(
'
default
'
))
}],
viewContainer
);
viewsRegistry
.
registerViews
([{
id
:
LOADED_SCRIPTS_VIEW_ID
,
name
:
nls
.
localize
(
'
loadedScripts
'
,
"
Loaded Scripts
"
),
ctorDescriptor
:
new
SyncDescriptor
(
LoadedScriptsView
),
order
:
35
,
weight
:
5
,
canToggleVisibility
:
true
,
c
anMoveView
:
true
,
c
ollapsed
:
true
,
when
:
ContextKeyExpr
.
and
(
CONTEXT_LOADED_SCRIPTS_SUPPORTED
,
CONTEXT_DEBUG_UX
.
isEqualTo
(
'
default
'
))
}],
viewContainer
);
registerCommands
();
...
...
src/vs/workbench/contrib/debug/browser/loadedScriptsView.ts
浏览文件 @
47813a3e
...
...
@@ -34,7 +34,6 @@ import { dispose } from 'vs/base/common/lifecycle';
import
{
createMatches
,
FuzzyScore
}
from
'
vs/base/common/filters
'
;
import
{
DebugContentProvider
}
from
'
vs/workbench/contrib/debug/common/debugContentProvider
'
;
import
{
ILabelService
}
from
'
vs/platform/label/common/label
'
;
import
{
SIDE_BAR_BACKGROUND
}
from
'
vs/workbench/common/theme
'
;
import
type
{
ICompressedTreeNode
}
from
'
vs/base/browser/ui/tree/compressedObjectTreeModel
'
;
import
type
{
ICompressibleTreeRenderer
}
from
'
vs/base/browser/ui/tree/objectTree
'
;
import
{
IViewDescriptorService
}
from
'
vs/workbench/common/views
'
;
...
...
@@ -472,7 +471,7 @@ export class LoadedScriptsView extends ViewPane {
accessibilityProvider
:
new
LoadedSciptsAccessibilityProvider
(),
ariaLabel
:
nls
.
localize
({
comment
:
[
'
Debug is a noun in this context, not a verb.
'
],
key
:
'
loadedScriptsAriaLabel
'
},
"
Debug Loaded Scripts
"
),
overrideStyles
:
{
listBackground
:
SIDE_BAR_BACKGROUND
listBackground
:
this
.
getBackgroundColor
()
}
}
);
...
...
@@ -574,6 +573,12 @@ export class LoadedScriptsView extends ViewPane {
}
}));
this
.
_register
(
this
.
viewDescriptorService
.
onDidChangeLocation
(({
views
,
from
,
to
})
=>
{
if
(
views
.
some
(
v
=>
v
.
id
===
this
.
id
))
{
this
.
tree
.
updateOptions
({
overrideStyles
:
{
listBackground
:
this
.
getBackgroundColor
()
}
});
}
}));
// feature: expand all nodes when filtering (not when finding)
let
viewState
:
IViewState
|
undefined
;
this
.
_register
(
this
.
tree
.
onDidChangeTypeFilterPattern
(
pattern
=>
{
...
...
src/vs/workbench/contrib/debug/browser/variablesView.ts
浏览文件 @
47813a3e
...
...
@@ -30,7 +30,6 @@ import { HighlightedLabel, IHighlight } from 'vs/base/browser/ui/highlightedlabe
import
{
IClipboardService
}
from
'
vs/platform/clipboard/common/clipboardService
'
;
import
{
IContextKeyService
}
from
'
vs/platform/contextkey/common/contextkey
'
;
import
{
dispose
}
from
'
vs/base/common/lifecycle
'
;
import
{
SIDE_BAR_BACKGROUND
}
from
'
vs/workbench/common/theme
'
;
import
{
IViewDescriptorService
}
from
'
vs/workbench/common/views
'
;
import
{
IOpenerService
}
from
'
vs/platform/opener/common/opener
'
;
import
{
IThemeService
}
from
'
vs/platform/theme/common/themeService
'
;
...
...
@@ -102,7 +101,7 @@ export class VariablesView extends ViewPane {
identityProvider
:
{
getId
:
(
element
:
IExpression
|
IScope
)
=>
element
.
getId
()
},
keyboardNavigationLabelProvider
:
{
getKeyboardNavigationLabel
:
(
e
:
IExpression
|
IScope
)
=>
e
},
overrideStyles
:
{
listBackground
:
SIDE_BAR_BACKGROUND
listBackground
:
this
.
getBackgroundColor
()
}
});
...
...
@@ -148,6 +147,11 @@ export class VariablesView extends ViewPane {
this
.
tree
.
rerender
(
e
);
}
}));
this
.
_register
(
this
.
viewDescriptorService
.
onDidChangeLocation
(({
views
,
from
,
to
})
=>
{
if
(
views
.
some
(
v
=>
v
.
id
===
this
.
id
))
{
this
.
tree
.
updateOptions
({
overrideStyles
:
{
listBackground
:
this
.
getBackgroundColor
()
}
});
}
}));
}
layoutBody
(
width
:
number
,
height
:
number
):
void
{
...
...
src/vs/workbench/contrib/debug/browser/watchExpressionsView.ts
浏览文件 @
47813a3e
...
...
@@ -30,7 +30,6 @@ import { IHighlight } from 'vs/base/browser/ui/highlightedlabel/highlightedLabel
import
{
variableSetEmitter
,
VariablesRenderer
}
from
'
vs/workbench/contrib/debug/browser/variablesView
'
;
import
{
IContextKeyService
}
from
'
vs/platform/contextkey/common/contextkey
'
;
import
{
dispose
}
from
'
vs/base/common/lifecycle
'
;
import
{
SIDE_BAR_BACKGROUND
}
from
'
vs/workbench/common/theme
'
;
import
{
IViewDescriptorService
}
from
'
vs/workbench/common/views
'
;
import
{
IOpenerService
}
from
'
vs/platform/opener/common/opener
'
;
import
{
IThemeService
}
from
'
vs/platform/theme/common/themeService
'
;
...
...
@@ -89,7 +88,7 @@ export class WatchExpressionsView extends ViewPane {
},
dnd
:
new
WatchExpressionsDragAndDrop
(
this
.
debugService
),
overrideStyles
:
{
listBackground
:
SIDE_BAR_BACKGROUND
listBackground
:
this
.
getBackgroundColor
()
}
});
...
...
@@ -146,6 +145,11 @@ export class WatchExpressionsView extends ViewPane {
this
.
tree
.
rerender
(
e
);
}
}));
this
.
_register
(
this
.
viewDescriptorService
.
onDidChangeLocation
(({
views
,
from
,
to
})
=>
{
if
(
views
.
some
(
v
=>
v
.
id
===
this
.
id
))
{
this
.
tree
.
updateOptions
({
overrideStyles
:
{
listBackground
:
this
.
getBackgroundColor
()
}
});
}
}));
}
layoutBody
(
height
:
number
,
width
:
number
):
void
{
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录