Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
xxadev
vscode
提交
13b45dba
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,发现更多精彩内容 >>
提交
13b45dba
编写于
11月 12, 2018
作者:
I
isidor
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
repl: Ignore inactive sessions which got cleared - so they are not shown any more
fixes #62418
上级
95ca89ba
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
13 addition
and
2 deletion
+13
-2
src/vs/workbench/parts/debug/electron-browser/repl.ts
src/vs/workbench/parts/debug/electron-browser/repl.ts
+13
-2
未找到文件。
src/vs/workbench/parts/debug/electron-browser/repl.ts
浏览文件 @
13b45dba
...
...
@@ -49,6 +49,7 @@ import { transparent, editorForeground } from 'vs/platform/theme/common/colorReg
import
{
ICodeEditorService
}
from
'
vs/editor/browser/services/codeEditorService
'
;
import
{
FocusSessionActionItem
}
from
'
vs/workbench/parts/debug/browser/debugActionItems
'
;
import
{
CompletionContext
,
CompletionList
,
CompletionProviderRegistry
}
from
'
vs/editor/common/modes
'
;
import
{
first
}
from
'
vs/base/common/arrays
'
;
const
$
=
dom
.
$
;
...
...
@@ -69,6 +70,7 @@ export interface IPrivateReplService {
clearRepl
():
void
;
}
const
sessionsToIgnore
=
new
Set
<
IDebugSession
>
();
export
class
Repl
extends
Panel
implements
IPrivateReplService
,
IHistoryNavigationWidget
{
_serviceBrand
:
any
;
...
...
@@ -112,6 +114,7 @@ export class Repl extends Panel implements IPrivateReplService, IHistoryNavigati
private
registerListeners
():
void
{
this
.
_register
(
this
.
debugService
.
getViewModel
().
onDidFocusSession
(
session
=>
{
sessionsToIgnore
.
delete
(
session
);
this
.
selectSession
(
session
);
}));
this
.
_register
(
this
.
debugService
.
onDidNewSession
(()
=>
this
.
updateTitleArea
()));
...
...
@@ -185,6 +188,14 @@ export class Repl extends Panel implements IPrivateReplService, IHistoryNavigati
const
session
:
IDebugSession
=
this
.
tree
.
getInput
();
if
(
session
)
{
session
.
removeReplExpressions
();
if
(
session
.
state
===
State
.
Inactive
)
{
// Ignore inactive sessions which got cleared - so they are not shown any more
sessionsToIgnore
.
add
(
session
);
const
focusedSession
=
this
.
debugService
.
getViewModel
().
focusedSession
;
// If there is a focusedSession focus on that one, otherwise just show any other not ignored session
this
.
selectSession
(
focusedSession
||
first
(
this
.
debugService
.
getModel
().
getSessions
(
true
),
s
=>
!
sessionsToIgnore
.
has
(
s
)));
this
.
updateTitleArea
();
}
}
this
.
replInput
.
focus
();
}
...
...
@@ -242,7 +253,7 @@ export class Repl extends Panel implements IPrivateReplService, IHistoryNavigati
getActions
():
IAction
[]
{
const
result
:
IAction
[]
=
[];
if
(
this
.
debugService
.
getModel
().
getSessions
(
true
).
length
>
1
)
{
if
(
this
.
debugService
.
getModel
().
getSessions
(
true
).
filter
(
s
=>
!
sessionsToIgnore
.
has
(
s
)).
length
>
1
)
{
result
.
push
(
this
.
selectReplAction
);
}
result
.
push
(
this
.
clearReplAction
);
...
...
@@ -482,7 +493,7 @@ registerEditorCommand(new SuggestCommand({
class
SelectReplActionItem
extends
FocusSessionActionItem
{
protected
getSessions
():
ReadonlyArray
<
IDebugSession
>
{
return
this
.
debugService
.
getModel
().
getSessions
(
true
);
return
this
.
debugService
.
getModel
().
getSessions
(
true
)
.
filter
(
s
=>
!
sessionsToIgnore
.
has
(
s
))
;
}
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录