OLD | NEW |
---|---|
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 * @implements {SDK.SDKModelObserver<!SDK.CSSModel>} | 6 * @implements {SDK.SDKModelObserver<!SDK.CSSModel>} |
7 */ | 7 */ |
8 Bindings.CSSWorkspaceBinding = class { | 8 Bindings.CSSWorkspaceBinding = class { |
9 /** | 9 /** |
10 * @param {!SDK.TargetManager} targetManager | 10 * @param {!SDK.TargetManager} targetManager |
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
72 return null; | 72 return null; |
73 | 73 |
74 var lineNumber = range.startLine; | 74 var lineNumber = range.startLine; |
75 var columnNumber = range.startColumn; | 75 var columnNumber = range.startColumn; |
76 var rawLocation = new SDK.CSSLocation( | 76 var rawLocation = new SDK.CSSLocation( |
77 header, header.lineNumberInSource(lineNumber), header.columnNumberInSour ce(lineNumber, columnNumber)); | 77 header, header.lineNumberInSource(lineNumber), header.columnNumberInSour ce(lineNumber, columnNumber)); |
78 return this.rawLocationToUILocation(rawLocation); | 78 return this.rawLocationToUILocation(rawLocation); |
79 } | 79 } |
80 | 80 |
81 /** | 81 /** |
82 * @param {?SDK.CSSLocation} rawLocation | 82 * @param {!SDK.CSSLocation} rawLocation |
83 * @return {?Workspace.UILocation} | 83 * @return {?Workspace.UILocation} |
84 */ | 84 */ |
85 rawLocationToUILocation(rawLocation) { | 85 rawLocationToUILocation(rawLocation) { |
86 if (!rawLocation) | |
dgozman
2017/05/04 17:44:37
Seems unrelated :-)
caseq
2017/05/04 17:46:49
It's a drive-by. Compiler, code search and tests t
| |
87 return null; | |
88 for (var i = this._sourceMappings.length - 1; i >= 0; --i) { | 86 for (var i = this._sourceMappings.length - 1; i >= 0; --i) { |
89 var uiLocation = this._sourceMappings[i].rawLocationToUILocation(rawLocati on); | 87 var uiLocation = this._sourceMappings[i].rawLocationToUILocation(rawLocati on); |
90 if (uiLocation) | 88 if (uiLocation) |
91 return uiLocation; | 89 return uiLocation; |
92 } | 90 } |
93 return this._modelToInfo.get(rawLocation.cssModel())._rawLocationToUILocatio n(rawLocation); | 91 return this._modelToInfo.get(rawLocation.cssModel())._rawLocationToUILocatio n(rawLocation); |
94 } | 92 } |
95 | 93 |
96 /** | 94 /** |
95 * @param {!Workspace.UILocation} uiLocation | |
96 * @return {!Array<!SDK.CSSLocation>} | |
97 */ | |
98 uiLocationToRawLocations(uiLocation) { | |
99 for (var i = this._sourceMappings.length - 1; i >= 0; --i) { | |
100 var rawLocations = this._sourceMappings[i].uiLocationToRawLocations(uiLoca tion); | |
101 if (rawLocations.length) | |
102 return rawLocations; | |
103 } | |
104 var rawLocations = []; | |
105 for (var modelInfo of this._modelToInfo.values()) | |
106 rawLocations.pushAll(modelInfo._uiLocationToRawLocations(uiLocation)); | |
107 return rawLocations; | |
108 } | |
109 | |
110 /** | |
97 * @param {!Bindings.CSSWorkspaceBinding.SourceMapping} sourceMapping | 111 * @param {!Bindings.CSSWorkspaceBinding.SourceMapping} sourceMapping |
98 */ | 112 */ |
99 addSourceMapping(sourceMapping) { | 113 addSourceMapping(sourceMapping) { |
100 this._sourceMappings.push(sourceMapping); | 114 this._sourceMappings.push(sourceMapping); |
101 } | 115 } |
102 }; | 116 }; |
103 | 117 |
104 /** | 118 /** |
105 * @interface | 119 * @interface |
106 */ | 120 */ |
107 Bindings.CSSWorkspaceBinding.SourceMapping = function() {}; | 121 Bindings.CSSWorkspaceBinding.SourceMapping = function() {}; |
108 | 122 |
109 Bindings.CSSWorkspaceBinding.SourceMapping.prototype = { | 123 Bindings.CSSWorkspaceBinding.SourceMapping.prototype = { |
110 /** | 124 /** |
111 * @param {!SDK.CSSLocation} rawLocation | 125 * @param {!SDK.CSSLocation} rawLocation |
112 * @return {?Workspace.UILocation} | 126 * @return {?Workspace.UILocation} |
113 */ | 127 */ |
114 rawLocationToUILocation(rawLocation) {}, | 128 rawLocationToUILocation(rawLocation) {}, |
129 | |
130 /** | |
131 * @param {!Workspace.UILocation} uiLocation | |
132 * @return {!Array<!SDK.CSSLocation>} | |
133 */ | |
134 uiLocationToRawLocations(uiLocation) {}, | |
115 }; | 135 }; |
116 | 136 |
117 Bindings.CSSWorkspaceBinding.ModelInfo = class { | 137 Bindings.CSSWorkspaceBinding.ModelInfo = class { |
118 /** | 138 /** |
119 * @param {!SDK.CSSModel} cssModel | 139 * @param {!SDK.CSSModel} cssModel |
120 * @param {!Workspace.Workspace} workspace | 140 * @param {!Workspace.Workspace} workspace |
121 */ | 141 */ |
122 constructor(cssModel, workspace) { | 142 constructor(cssModel, workspace) { |
123 this._eventListeners = [ | 143 this._eventListeners = [ |
124 cssModel.addEventListener(SDK.CSSModel.Events.StyleSheetAdded, this._style SheetAdded, this), | 144 cssModel.addEventListener(SDK.CSSModel.Events.StyleSheetAdded, this._style SheetAdded, this), |
(...skipping 81 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
206 * @param {!SDK.CSSLocation} rawLocation | 226 * @param {!SDK.CSSLocation} rawLocation |
207 * @return {?Workspace.UILocation} | 227 * @return {?Workspace.UILocation} |
208 */ | 228 */ |
209 _rawLocationToUILocation(rawLocation) { | 229 _rawLocationToUILocation(rawLocation) { |
210 var uiLocation = null; | 230 var uiLocation = null; |
211 uiLocation = uiLocation || this._sassSourceMapping.rawLocationToUILocation(r awLocation); | 231 uiLocation = uiLocation || this._sassSourceMapping.rawLocationToUILocation(r awLocation); |
212 uiLocation = uiLocation || this._stylesSourceMapping.rawLocationToUILocation (rawLocation); | 232 uiLocation = uiLocation || this._stylesSourceMapping.rawLocationToUILocation (rawLocation); |
213 return uiLocation; | 233 return uiLocation; |
214 } | 234 } |
215 | 235 |
236 /** | |
237 * @param {!Workspace.UILocation} uiLocation | |
238 * @return {!Array<!SDK.CSSLocation>} | |
239 */ | |
240 _uiLocationToRawLocations(uiLocation) { | |
241 var rawLocations = this._sassSourceMapping.uiLocationToRawLocations(uiLocati on); | |
242 if (rawLocations.length) | |
243 return rawLocations; | |
244 return this._stylesSourceMapping.uiLocationToRawLocations(uiLocation); | |
245 } | |
246 | |
247 | |
216 _dispose() { | 248 _dispose() { |
217 Common.EventTarget.removeEventListeners(this._eventListeners); | 249 Common.EventTarget.removeEventListeners(this._eventListeners); |
218 this._stylesSourceMapping.dispose(); | 250 this._stylesSourceMapping.dispose(); |
219 this._sassSourceMapping.dispose(); | 251 this._sassSourceMapping.dispose(); |
220 } | 252 } |
221 }; | 253 }; |
222 | 254 |
223 /** | 255 /** |
224 * @unrestricted | 256 * @unrestricted |
225 */ | 257 */ |
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
264 */ | 296 */ |
265 isBlackboxed() { | 297 isBlackboxed() { |
266 return false; | 298 return false; |
267 } | 299 } |
268 }; | 300 }; |
269 | 301 |
270 /** | 302 /** |
271 * @type {!Bindings.CSSWorkspaceBinding} | 303 * @type {!Bindings.CSSWorkspaceBinding} |
272 */ | 304 */ |
273 Bindings.cssWorkspaceBinding; | 305 Bindings.cssWorkspaceBinding; |
OLD | NEW |