Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
徽霖
Vscode
提交
cdced4d7
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,发现更多精彩内容 >>
提交
cdced4d7
编写于
11月 11, 2016
作者:
I
isidor
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
debug: simplify breakopint line number - no longer show how the line number jumped
上级
e3020d00
变更
7
隐藏空白更改
内联
并排
Showing
7 changed file
with
12 addition
and
18 deletion
+12
-18
src/vs/workbench/parts/debug/browser/debugEditorActions.ts
src/vs/workbench/parts/debug/browser/debugEditorActions.ts
+1
-1
src/vs/workbench/parts/debug/common/debug.ts
src/vs/workbench/parts/debug/common/debug.ts
+0
-1
src/vs/workbench/parts/debug/common/debugModel.ts
src/vs/workbench/parts/debug/common/debugModel.ts
+4
-5
src/vs/workbench/parts/debug/electron-browser/debugService.ts
...vs/workbench/parts/debug/electron-browser/debugService.ts
+5
-7
src/vs/workbench/parts/debug/electron-browser/debugViewer.ts
src/vs/workbench/parts/debug/electron-browser/debugViewer.ts
+1
-1
src/vs/workbench/parts/debug/electron-browser/debugViews.ts
src/vs/workbench/parts/debug/electron-browser/debugViews.ts
+1
-1
src/vs/workbench/parts/debug/test/node/debugModel.test.ts
src/vs/workbench/parts/debug/test/node/debugModel.test.ts
+0
-2
未找到文件。
src/vs/workbench/parts/debug/browser/debugEditorActions.ts
浏览文件 @
cdced4d7
...
...
@@ -101,7 +101,7 @@ class RunToCursorAction extends EditorAction {
const
oneTimeListener
=
debugService
.
getViewModel
().
focusedProcess
.
session
.
onDidEvent
(
event
=>
{
if
(
event
.
event
===
'
stopped
'
||
event
.
event
===
'
exit
'
)
{
const
toRemove
=
debugService
.
getModel
().
getBreakpoints
()
.
filter
(
bp
=>
bp
.
desiredL
ineNumber
===
lineNumber
&&
bp
.
uri
.
toString
()
===
uri
.
toString
()).
pop
();
.
filter
(
bp
=>
bp
.
l
ineNumber
===
lineNumber
&&
bp
.
uri
.
toString
()
===
uri
.
toString
()).
pop
();
if
(
toRemove
)
{
debugService
.
removeBreakpoints
(
toRemove
.
getId
());
}
...
...
src/vs/workbench/parts/debug/common/debug.ts
浏览文件 @
cdced4d7
...
...
@@ -186,7 +186,6 @@ export interface IRawBreakpoint {
export
interface
IBreakpoint
extends
IEnablement
{
uri
:
uri
;
lineNumber
:
number
;
desiredLineNumber
:
number
;
condition
:
string
;
hitCondition
:
string
;
verified
:
boolean
;
...
...
src/vs/workbench/parts/debug/common/debugModel.ts
浏览文件 @
cdced4d7
...
...
@@ -570,7 +570,6 @@ export class Process implements debug.IProcess {
export
class
Breakpoint
implements
debug
.
IBreakpoint
{
public
lineNumber
:
number
;
public
verified
:
boolean
;
public
idFromAdapter
:
number
;
public
message
:
string
;
...
...
@@ -578,7 +577,7 @@ export class Breakpoint implements debug.IBreakpoint {
constructor
(
public
uri
:
uri
,
public
desiredL
ineNumber
:
number
,
public
l
ineNumber
:
number
,
public
enabled
:
boolean
,
public
condition
:
string
,
public
hitCondition
:
string
...
...
@@ -586,7 +585,6 @@ export class Breakpoint implements debug.IBreakpoint {
if
(
enabled
===
undefined
)
{
this
.
enabled
=
true
;
}
this
.
lineNumber
=
this
.
desiredLineNumber
;
this
.
verified
=
false
;
this
.
id
=
generateUuid
();
}
...
...
@@ -755,6 +753,9 @@ export class Model implements debug.IModel {
bp
.
message
=
bpData
.
message
;
}
});
// Remove duplicate breakpoints. This can happen when an adapter updates a line number of a breakpoint
this
.
breakpoints
=
distinct
(
this
.
breakpoints
,
bp
=>
bp
.
uri
.
toString
()
+
bp
.
lineNumber
);
this
.
_onDidChangeBreakpoints
.
fire
();
}
...
...
@@ -762,7 +763,6 @@ export class Model implements debug.IModel {
element
.
enabled
=
enable
;
if
(
element
instanceof
Breakpoint
&&
!
element
.
enabled
)
{
var
breakpoint
=
<
Breakpoint
>
element
;
breakpoint
.
lineNumber
=
breakpoint
.
desiredLineNumber
;
breakpoint
.
verified
=
false
;
}
...
...
@@ -773,7 +773,6 @@ export class Model implements debug.IModel {
this
.
breakpoints
.
forEach
(
bp
=>
{
bp
.
enabled
=
enable
;
if
(
!
enable
)
{
bp
.
lineNumber
=
bp
.
desiredLineNumber
;
bp
.
verified
=
false
;
}
});
...
...
src/vs/workbench/parts/debug/electron-browser/debugService.ts
浏览文件 @
cdced4d7
...
...
@@ -375,7 +375,7 @@ export class DebugService implements debug.IDebugService {
let
result
:
Breakpoint
[];
try
{
result
=
JSON
.
parse
(
this
.
storageService
.
get
(
DEBUG_BREAKPOINTS_KEY
,
StorageScope
.
WORKSPACE
,
'
[]
'
)).
map
((
breakpoint
:
any
)
=>
{
return
new
Breakpoint
(
uri
.
parse
(
breakpoint
.
uri
.
external
||
breakpoint
.
source
.
uri
.
external
),
breakpoint
.
desiredLineNumber
||
breakpoint
.
lineNumber
,
breakpoint
.
enabled
,
breakpoint
.
condition
,
breakpoint
.
hitCondition
);
return
new
Breakpoint
(
uri
.
parse
(
breakpoint
.
uri
.
external
||
breakpoint
.
source
.
uri
.
external
),
breakpoint
.
lineNumber
,
breakpoint
.
enabled
,
breakpoint
.
condition
,
breakpoint
.
hitCondition
);
});
}
catch
(
e
)
{
}
...
...
@@ -943,10 +943,8 @@ export class DebugService implements debug.IDebugService {
return
TPromise
.
as
(
null
);
}
const
breakpointsToSend
=
distinct
(
this
.
model
.
getBreakpoints
().
filter
(
bp
=>
this
.
model
.
areBreakpointsActivated
()
&&
bp
.
enabled
&&
bp
.
uri
.
toString
()
===
modelUri
.
toString
()),
bp
=>
`
${
bp
.
desiredLineNumber
}
`
);
const
breakpointsToSend
=
distinct
(
this
.
model
.
getBreakpoints
().
filter
(
bp
=>
this
.
model
.
areBreakpointsActivated
()
&&
bp
.
enabled
&&
bp
.
uri
.
toString
()
===
modelUri
.
toString
()),
bp
=>
bp
.
lineNumber
.
toString
());
let
rawSource
:
DebugProtocol
.
Source
;
for
(
let
t
of
process
.
getAllThreads
())
{
...
...
@@ -964,8 +962,8 @@ export class DebugService implements debug.IDebugService {
return
session
.
setBreakpoints
({
source
:
rawSource
,
lines
:
breakpointsToSend
.
map
(
bp
=>
bp
.
desiredL
ineNumber
),
breakpoints
:
breakpointsToSend
.
map
(
bp
=>
({
line
:
bp
.
desiredL
ineNumber
,
condition
:
bp
.
condition
,
hitCondition
:
bp
.
hitCondition
})),
lines
:
breakpointsToSend
.
map
(
bp
=>
bp
.
l
ineNumber
),
breakpoints
:
breakpointsToSend
.
map
(
bp
=>
({
line
:
bp
.
l
ineNumber
,
condition
:
bp
.
condition
,
hitCondition
:
bp
.
hitCondition
})),
sourceModified
}).
then
(
response
=>
{
if
(
!
response
||
!
response
.
body
)
{
...
...
src/vs/workbench/parts/debug/electron-browser/debugViewer.ts
浏览文件 @
cdced4d7
...
...
@@ -1257,7 +1257,7 @@ export class BreakpointsRenderer implements IRenderer {
this
.
debugService
.
getModel
().
areBreakpointsActivated
()
?
tree
.
removeTraits
(
'
disabled
'
,
[
breakpoint
])
:
tree
.
addTraits
(
'
disabled
'
,
[
breakpoint
]);
data
.
name
.
textContent
=
getPathLabel
(
paths
.
basename
(
breakpoint
.
uri
.
fsPath
),
this
.
contextService
);
data
.
lineNumber
.
textContent
=
breakpoint
.
desiredLineNumber
!==
breakpoint
.
lineNumber
?
breakpoint
.
desiredLineNumber
+
'
\
u2192
'
+
breakpoint
.
lineNumber
:
''
+
breakpoint
.
lineNumber
;
data
.
lineNumber
.
textContent
=
breakpoint
.
lineNumber
.
toString
()
;
data
.
filePath
.
textContent
=
getPathLabel
(
paths
.
dirname
(
breakpoint
.
uri
.
fsPath
),
this
.
contextService
);
data
.
checkbox
.
checked
=
breakpoint
.
enabled
;
data
.
actionBar
.
context
=
breakpoint
;
...
...
src/vs/workbench/parts/debug/electron-browser/debugViews.ts
浏览文件 @
cdced4d7
...
...
@@ -382,7 +382,7 @@ export class BreakpointsView extends AdaptiveCollapsibleViewletView {
return
paths
.
basename
(
first
.
uri
.
fsPath
).
localeCompare
(
paths
.
basename
(
second
.
uri
.
fsPath
));
}
return
first
.
desiredLineNumber
-
second
.
desiredL
ineNumber
;
return
first
.
lineNumber
-
second
.
l
ineNumber
;
}
}
},
debugTreeOptions
(
nls
.
localize
({
comment
:
[
'
Debug is a noun in this context, not a verb.
'
],
key
:
'
breakpointsAriaTreeLabel
'
},
"
Debug Breakpoints
"
)));
...
...
src/vs/workbench/parts/debug/test/node/debugModel.test.ts
浏览文件 @
cdced4d7
...
...
@@ -57,12 +57,10 @@ suite('Debug - Model', () => {
assert
.
equal
(
model
.
getBreakpoints
().
length
,
5
);
var
bp
=
model
.
getBreakpoints
()[
0
];
var
originalLineLumber
=
bp
.
lineNumber
;
const
update
:
any
=
{};
update
[
bp
.
getId
()]
=
{
line
:
100
,
verified
:
false
};
model
.
updateBreakpoints
(
update
);
assert
.
equal
(
bp
.
lineNumber
,
100
);
assert
.
equal
(
bp
.
desiredLineNumber
,
originalLineLumber
);
model
.
enableOrDisableAllBreakpoints
(
false
);
model
.
getBreakpoints
().
forEach
(
bp
=>
{
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录