Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(122)

Unified Diff: runtime/observatory/lib/src/elements/script_inset.dart

Issue 1079163009: Fix script-view. Hide annotations except the current position when debugging. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 5 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: runtime/observatory/lib/src/elements/script_inset.dart
diff --git a/runtime/observatory/lib/src/elements/script_inset.dart b/runtime/observatory/lib/src/elements/script_inset.dart
index 41b5bd3f90eefdb33f5e948eafc4ea61613ec7d7..cdbd077c649444c04e6b99bb019e8445fc8a177f 100644
--- a/runtime/observatory/lib/src/elements/script_inset.dart
+++ b/runtime/observatory/lib/src/elements/script_inset.dart
@@ -218,11 +218,12 @@ class ScriptInsetElement extends ObservatoryElement {
@published int currentPos;
@published int startPos;
@published int endPos;
+ @published bool inDebuggerContext = false;
- @observable int currentLine;
- @observable int currentCol;
- @observable int startLine;
- @observable int endLine;
+ int _currentLine;
+ int _currentCol;
+ int _startLine;
+ int _endLine;
var annotations = [];
var annotationsCursor;
@@ -234,7 +235,7 @@ class ScriptInsetElement extends ObservatoryElement {
}
void _scrollToCurrentPos() {
- var line = querySelector('#${makeLineId(currentLine)}');
+ var line = querySelector('#${makeLineId(_currentLine)}');
if (line != null) {
line.scrollIntoView();
}
@@ -332,45 +333,47 @@ class ScriptInsetElement extends ObservatoryElement {
}
void computeAnnotations() {
- startLine = (startPos != null
- ? script.tokenToLine(startPos)
- : 1);
- currentLine = (currentPos != null
- ? script.tokenToLine(currentPos)
+ _startLine = (startPos != null
+ ? script.tokenToLine(startPos)
+ : 1);
+ _currentLine = (currentPos != null
+ ? script.tokenToLine(currentPos)
+ : null);
+ _currentCol = (currentPos != null
+ ? (script.tokenToCol(currentPos) - 1) // make this 0-based.
: null);
- currentCol = (currentPos != null
- ? (script.tokenToCol(currentPos) - 1) // make this 0-based.
- : null);
- endLine = (endPos != null
- ? script.tokenToLine(endPos)
- : script.lines.length);
+ _endLine = (endPos != null
+ ? script.tokenToLine(endPos)
+ : script.lines.length);
annotations.clear();
- if (currentLine != null) {
+ if (_currentLine != null) {
var a = new CurrentExecutionAnnotation();
- a.line = currentLine;
- a.columnStart = currentCol;
- a.columnStop = currentCol + 1;
+ a.line = _currentLine;
+ a.columnStart = _currentCol;
+ a.columnStop = _currentCol + 1;
annotations.add(a);
}
- loadFunctionsOf(script.library);
+ if (!inDebuggerContext) {
+ loadFunctionsOf(script.library);
- for (var func in script.library.functions) {
- if (func.script == script) {
- annotations.add(new FunctionDeclarationAnnotation(func));
- }
- }
- for (var cls in script.library.classes) {
- for (var func in cls.functions) {
+ for (var func in script.library.functions) {
if (func.script == script) {
annotations.add(new FunctionDeclarationAnnotation(func));
}
}
- }
+ for (var cls in script.library.classes) {
+ for (var func in cls.functions) {
+ if (func.script == script) {
+ annotations.add(new FunctionDeclarationAnnotation(func));
+ }
+ }
+ }
- for (var callSite in script.callSites) {
- annotations.add(new CallSiteAnnotation(callSite));
+ for (var callSite in script.callSites) {
+ annotations.add(new CallSiteAnnotation(callSite));
+ }
}
annotations.sort();
@@ -383,7 +386,7 @@ class ScriptInsetElement extends ObservatoryElement {
annotationsCursor = 0;
int blankLineCount = 0;
- for (int i = (startLine - 1); i <= (endLine - 1); i++) {
+ for (int i = (_startLine - 1); i <= (_endLine - 1); i++) {
if (script.lines[i].isBlank) {
// Try to introduce elipses if there are 4 or more contiguous
// blank lines.
@@ -517,7 +520,7 @@ class ScriptInsetElement extends ObservatoryElement {
e.classes.add("sourceItem");
if (line != null) {
- if (line.line == currentLine) {
+ if (line.line == _currentLine) {
e.classes.add("currentLine");
}
« no previous file with comments | « runtime/observatory/lib/src/elements/debugger.html ('k') | runtime/observatory/lib/src/elements/script_view.html » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698