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

Side by Side Diff: third_party/WebKit/Source/devtools/front_end/sources/JavaScriptBreakpointsSidebarPane.js

Issue 2371133003: [Devtools] Lazily build reverse mappings (Closed)
Patch Set: Addressing comments Created 4 years, 2 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 unified diff | Download patch
OLDNEW
1 // Copyright (c) 2015 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 /** 5 /**
6 * @constructor 6 * @constructor
7 * @extends {WebInspector.VBox} 7 * @extends {WebInspector.VBox}
8 * @implements {WebInspector.ContextFlavorListener} 8 * @implements {WebInspector.ContextFlavorListener}
9 */ 9 */
10 WebInspector.JavaScriptBreakpointsSidebarPane = function() 10 WebInspector.JavaScriptBreakpointsSidebarPane = function()
(...skipping 79 matching lines...) Expand 10 before | Expand all | Expand 10 after
90 { 90 {
91 var lineNumber = uiLocation.lineNumber 91 var lineNumber = uiLocation.lineNumber
92 var columnNumber = uiLocation.columnNumber; 92 var columnNumber = uiLocation.columnNumber;
93 var text = new WebInspector.Text(content || ""); 93 var text = new WebInspector.Text(content || "");
94 if (lineNumber < text.lineCount()) { 94 if (lineNumber < text.lineCount()) {
95 var lineText = text.lineAt(lineNumber); 95 var lineText = text.lineAt(lineNumber);
96 var maxSnippetLength = 200; 96 var maxSnippetLength = 200;
97 var snippetStartIndex = columnNumber > 100 ? columnNumber : 0; 97 var snippetStartIndex = columnNumber > 100 ? columnNumber : 0;
98 snippetElement.textContent = lineText.substr(snippetStartIndex). trimEnd(maxSnippetLength); 98 snippetElement.textContent = lineText.substr(snippetStartIndex). trimEnd(maxSnippetLength);
99 } 99 }
100 this.didReceiveBreakpointLineForTest(uiLocation.uiSourceCode); 100 this.didReceiveBreakpointLineForTest(uiLocation.uiSourceCode, lineNu mber, columnNumber);
101 } 101 }
102 102
103 uiLocation.uiSourceCode.requestContent().then(didRequestContent.bind(thi s)); 103 uiLocation.uiSourceCode.requestContent().then(didRequestContent.bind(thi s));
104 104
105 element._data = uiLocation; 105 element._data = uiLocation;
106 var currentElement = this._listElement.firstChild; 106 var currentElement = this._listElement.firstChild;
107 while (currentElement) { 107 while (currentElement) {
108 if (currentElement._data && this._compareBreakpoints(currentElement. _data, element._data) > 0) 108 if (currentElement._data && this._compareBreakpoints(currentElement. _data, element._data) > 0)
109 break; 109 break;
110 currentElement = currentElement.nextSibling; 110 currentElement = currentElement.nextSibling;
111 } 111 }
112 this._addListElement(element, currentElement); 112 this._addListElement(element, currentElement);
113 113
114 var breakpointItem = { element: element, checkbox: checkboxLabel.checkbo xElement }; 114 var breakpointItem = { element: element, checkbox: checkboxLabel.checkbo xElement };
115 this._items.set(breakpoint, breakpointItem); 115 this._items.set(breakpoint, breakpointItem);
116 }, 116 },
117 117
118 /** 118 /**
119 * @param {!WebInspector.UISourceCode} uiSourceCode 119 * @param {!WebInspector.UISourceCode} uiSourceCode
120 * @param {number} lineNumber
121 * @param {number} columnNumber
120 */ 122 */
121 didReceiveBreakpointLineForTest: function(uiSourceCode) 123 didReceiveBreakpointLineForTest: function(uiSourceCode, lineNumber, columnNu mber)
122 { 124 {
123 }, 125 },
124 126
125 /** 127 /**
126 * @param {!WebInspector.Event} event 128 * @param {!WebInspector.Event} event
127 */ 129 */
128 _breakpointRemoved: function(event) 130 _breakpointRemoved: function(event)
129 { 131 {
130 var breakpoint = /** @type {!WebInspector.BreakpointManager.Breakpoint} */ (event.data.breakpoint); 132 var breakpoint = /** @type {!WebInspector.BreakpointManager.Breakpoint} */ (event.data.breakpoint);
131 var breakpointItem = this._items.get(breakpoint); 133 var breakpointItem = this._items.get(breakpoint);
(...skipping 134 matching lines...) Expand 10 before | Expand all | Expand 10 after
266 this._listElement.removeChildren(); 268 this._listElement.removeChildren();
267 if (this._listElement.parentElement) { 269 if (this._listElement.parentElement) {
268 this.element.removeChild(this._listElement); 270 this.element.removeChild(this._listElement);
269 this.element.appendChild(this.emptyElement); 271 this.element.appendChild(this.emptyElement);
270 } 272 }
271 this._items.clear(); 273 this._items.clear();
272 }, 274 },
273 275
274 __proto__: WebInspector.VBox.prototype 276 __proto__: WebInspector.VBox.prototype
275 } 277 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698