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

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

Issue 2886053002: DevTools: do not use Bindings.NetworkProject.styleHeaderForUISourceCode in SourceFormatter (Closed)
Patch Set: kill trailing space! Created 3 years, 7 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
« no previous file with comments | « third_party/WebKit/LayoutTests/inspector/sources/formatter-css.html ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2017 The Chromium Authors. All rights reserved. 1 // Copyright 2017 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 Sources.SourceFormatData = class { 5 Sources.SourceFormatData = class {
6 /** 6 /**
7 * @param {!Workspace.UISourceCode} originalSourceCode 7 * @param {!Workspace.UISourceCode} originalSourceCode
8 * @param {!Workspace.UISourceCode} formattedSourceCode 8 * @param {!Workspace.UISourceCode} formattedSourceCode
9 * @param {!Sources.FormatterSourceMapping} mapping 9 * @param {!Sources.FormatterSourceMapping} mapping
10 */ 10 */
(...skipping 221 matching lines...) Expand 10 before | Expand all | Expand 10 after
232 return []; 232 return [];
233 } 233 }
234 }; 234 };
235 235
236 /** 236 /**
237 * @implements {Bindings.CSSWorkspaceBinding.SourceMapping} 237 * @implements {Bindings.CSSWorkspaceBinding.SourceMapping}
238 */ 238 */
239 Sources.SourceFormatter.StyleMapping = class { 239 Sources.SourceFormatter.StyleMapping = class {
240 constructor() { 240 constructor() {
241 Bindings.cssWorkspaceBinding.addSourceMapping(this); 241 Bindings.cssWorkspaceBinding.addSourceMapping(this);
242 this._styleHeaderSymbol = Symbol('Sources.SourceFormatter.StyleMapping');
242 } 243 }
243 244
244 /** 245 /**
245 * @override 246 * @override
246 * @param {!SDK.CSSLocation} rawLocation 247 * @param {!SDK.CSSLocation} rawLocation
247 * @return {?Workspace.UILocation} 248 * @return {?Workspace.UILocation}
248 */ 249 */
249 rawLocationToUILocation(rawLocation) { 250 rawLocationToUILocation(rawLocation) {
250 var styleHeader = rawLocation.header(); 251 var styleHeader = rawLocation.header();
251 var formatData = styleHeader && Sources.SourceFormatData._for(styleHeader); 252 var formatData = styleHeader && Sources.SourceFormatData._for(styleHeader);
252 if (!formatData) 253 if (!formatData)
253 return null; 254 return null;
254 var formattedLocation = 255 var formattedLocation =
255 formatData.mapping.originalToFormatted(rawLocation.lineNumber, rawLocati on.columnNumber || 0); 256 formatData.mapping.originalToFormatted(rawLocation.lineNumber, rawLocati on.columnNumber || 0);
256 return formatData.formattedSourceCode.uiLocation(formattedLocation[0], forma ttedLocation[1]); 257 return formatData.formattedSourceCode.uiLocation(formattedLocation[0], forma ttedLocation[1]);
257 } 258 }
258 259
259 /** 260 /**
260 * @override 261 * @override
261 * @param {!Workspace.UILocation} uiLocation 262 * @param {!Workspace.UILocation} uiLocation
262 * @return {!Array<!SDK.CSSLocation>} 263 * @return {!Array<!SDK.CSSLocation>}
263 */ 264 */
264 uiLocationToRawLocations(uiLocation) { 265 uiLocationToRawLocations(uiLocation) {
265 var formatData = Sources.SourceFormatData._for(uiLocation.uiSourceCode); 266 var formatData = Sources.SourceFormatData._for(uiLocation.uiSourceCode);
266 if (!formatData) 267 if (!formatData)
267 return []; 268 return [];
268 var originalLocation = formatData.mapping.formattedToOriginal(uiLocation.lin eNumber, uiLocation.columnNumber); 269 var originalLocation = formatData.mapping.formattedToOriginal(uiLocation.lin eNumber, uiLocation.columnNumber);
269 var header = Bindings.NetworkProject.styleHeaderForUISourceCode(formatData.o riginalSourceCode); 270 var header = formatData.originalSourceCode[this._styleHeaderSymbol];
270 if (!header) 271 if (!header)
271 return []; 272 return [];
272 return [new SDK.CSSLocation(header, originalLocation[0], originalLocation[1] )]; 273 return [new SDK.CSSLocation(header, originalLocation[0], originalLocation[1] )];
273 } 274 }
274 275
275 /** 276 /**
276 * @param {!Sources.SourceFormatData} formatData 277 * @param {!Sources.SourceFormatData} formatData
277 * @param {boolean} enable 278 * @param {boolean} enable
278 */ 279 */
279 _setSourceMappingEnabled(formatData, enable) { 280 _setSourceMappingEnabled(formatData, enable) {
280 var original = formatData.originalSourceCode; 281 var original = formatData.originalSourceCode;
281 var styleHeader = Bindings.NetworkProject.styleHeaderForUISourceCode(origina l); 282 var rawLocations = Bindings.cssWorkspaceBinding.uiLocationToRawLocations(ori ginal.uiLocation(0, 0));
283 var styleHeader = rawLocations.length ? rawLocations[0].header() : null;
caseq 2017/05/16 23:54:30 Let's take care of all possible headers here?
lushnikov 2017/05/17 00:17:49 Sure!
282 if (!styleHeader) 284 if (!styleHeader)
283 return; 285 return;
284 if (enable) 286 if (enable) {
287 original[this._styleHeaderSymbol] = styleHeader;
285 styleHeader[Sources.SourceFormatData._formatDataSymbol] = formatData; 288 styleHeader[Sources.SourceFormatData._formatDataSymbol] = formatData;
286 else 289 } else {
290 original[this._styleHeaderSymbol] = null;
287 delete styleHeader[Sources.SourceFormatData._formatDataSymbol]; 291 delete styleHeader[Sources.SourceFormatData._formatDataSymbol];
292 }
288 Bindings.cssWorkspaceBinding.updateLocations(styleHeader); 293 Bindings.cssWorkspaceBinding.updateLocations(styleHeader);
289 } 294 }
290 }; 295 };
291 296
292 Sources.sourceFormatter = new Sources.SourceFormatter(); 297 Sources.sourceFormatter = new Sources.SourceFormatter();
OLDNEW
« no previous file with comments | « third_party/WebKit/LayoutTests/inspector/sources/formatter-css.html ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698