OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2012 Google Inc. All rights reserved. | 2 * Copyright (C) 2012 Google Inc. All rights reserved. |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
6 * met: | 6 * met: |
7 * | 7 * |
8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
(...skipping 184 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
195 project[WebInspector.NetworkProject._targetSymbol] = this.target(); | 195 project[WebInspector.NetworkProject._targetSymbol] = this.target(); |
196 project[WebInspector.NetworkProject._frameSymbol] = frame; | 196 project[WebInspector.NetworkProject._frameSymbol] = frame; |
197 this._workspaceProjects.set(projectId, project); | 197 this._workspaceProjects.set(projectId, project); |
198 return project; | 198 return project; |
199 }, | 199 }, |
200 | 200 |
201 /** | 201 /** |
202 * @param {!WebInspector.ContentProvider} contentProvider | 202 * @param {!WebInspector.ContentProvider} contentProvider |
203 * @param {?WebInspector.ResourceTreeFrame} frame | 203 * @param {?WebInspector.ResourceTreeFrame} frame |
204 * @param {boolean=} isContentScript | 204 * @param {boolean=} isContentScript |
205 * @return {?WebInspector.UISourceCode} | 205 * @return {!WebInspector.UISourceCode} |
206 */ | 206 */ |
207 addFile: function(contentProvider, frame, isContentScript) | 207 addFile: function(contentProvider, frame, isContentScript) |
208 { | 208 { |
209 var uiSourceCode = this._createFile(contentProvider, frame, isContentScr
ipt || false); | 209 var uiSourceCode = this._createFile(contentProvider, frame, isContentScr
ipt || false); |
210 if (uiSourceCode) | 210 this._addUISourceCodeWithProvider(uiSourceCode, contentProvider); |
211 this._addUISourceCodeWithProvider(uiSourceCode, contentProvider); | |
212 return uiSourceCode; | 211 return uiSourceCode; |
213 }, | 212 }, |
214 | 213 |
215 /** | 214 /** |
216 * @param {?WebInspector.ResourceTreeFrame} frame | 215 * @param {?WebInspector.ResourceTreeFrame} frame |
217 * @param {string} url | 216 * @param {string} url |
218 */ | 217 */ |
219 _removeFileForURL: function(frame, url) | 218 _removeFileForURL: function(frame, url) |
220 { | 219 { |
221 var project = this._workspaceProjects.get(WebInspector.NetworkProject.pr
ojectId(this.target(), frame, false)); | 220 var project = this._workspaceProjects.get(WebInspector.NetworkProject.pr
ojectId(this.target(), frame, false)); |
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
263 var script = /** @type {!WebInspector.Script} */ (event.data); | 262 var script = /** @type {!WebInspector.Script} */ (event.data); |
264 if (!script.sourceURL || script.isLiveEdit() || (script.isInlineScript()
&& !script.hasSourceURL)) | 263 if (!script.sourceURL || script.isLiveEdit() || (script.isInlineScript()
&& !script.hasSourceURL)) |
265 return; | 264 return; |
266 // Filter out embedder injected content scripts. | 265 // Filter out embedder injected content scripts. |
267 if (script.isContentScript() && !script.hasSourceURL) { | 266 if (script.isContentScript() && !script.hasSourceURL) { |
268 var parsedURL = new WebInspector.ParsedURL(script.sourceURL); | 267 var parsedURL = new WebInspector.ParsedURL(script.sourceURL); |
269 if (!parsedURL.isValid) | 268 if (!parsedURL.isValid) |
270 return; | 269 return; |
271 } | 270 } |
272 var uiSourceCode = this._createFile(script, WebInspector.ResourceTreeFra
me.fromScript(script), script.isContentScript()); | 271 var uiSourceCode = this._createFile(script, WebInspector.ResourceTreeFra
me.fromScript(script), script.isContentScript()); |
273 if (uiSourceCode) { | 272 uiSourceCode[WebInspector.NetworkProject._scriptSymbol] = script; |
274 uiSourceCode[WebInspector.NetworkProject._scriptSymbol] = script; | 273 this._addUISourceCodeWithProvider(uiSourceCode, script); |
275 this._addUISourceCodeWithProvider(uiSourceCode, script); | |
276 } | |
277 }, | 274 }, |
278 | 275 |
279 /** | 276 /** |
280 * @param {!WebInspector.Event} event | 277 * @param {!WebInspector.Event} event |
281 */ | 278 */ |
282 _styleSheetAdded: function(event) | 279 _styleSheetAdded: function(event) |
283 { | 280 { |
284 var header = /** @type {!WebInspector.CSSStyleSheetHeader} */ (event.dat
a); | 281 var header = /** @type {!WebInspector.CSSStyleSheetHeader} */ (event.dat
a); |
285 if (header.isInline && !header.hasSourceURL && header.origin !== "inspec
tor") | 282 if (header.isInline && !header.hasSourceURL && header.origin !== "inspec
tor") |
286 return; | 283 return; |
287 | 284 |
288 var originalContentProvider = header.originalContentProvider(); | 285 var originalContentProvider = header.originalContentProvider(); |
289 var uiSourceCode = this._createFile(originalContentProvider, WebInspecto
r.ResourceTreeFrame.fromStyleSheet(header), false); | 286 var uiSourceCode = this._createFile(originalContentProvider, WebInspecto
r.ResourceTreeFrame.fromStyleSheet(header), false); |
290 if (uiSourceCode) { | 287 uiSourceCode[WebInspector.NetworkProject._styleSheetSymbol] = header; |
291 uiSourceCode[WebInspector.NetworkProject._styleSheetSymbol] = header
; | 288 this._addUISourceCodeWithProvider(uiSourceCode, originalContentProvider)
; |
292 this._addUISourceCodeWithProvider(uiSourceCode, originalContentProvi
der); | |
293 } | |
294 }, | 289 }, |
295 | 290 |
296 /** | 291 /** |
297 * @param {!WebInspector.Event} event | 292 * @param {!WebInspector.Event} event |
298 */ | 293 */ |
299 _styleSheetRemoved: function(event) | 294 _styleSheetRemoved: function(event) |
300 { | 295 { |
301 var header = /** @type {!WebInspector.CSSStyleSheetHeader} */ (event.dat
a); | 296 var header = /** @type {!WebInspector.CSSStyleSheetHeader} */ (event.dat
a); |
302 if (header.isInline && !header.hasSourceURL && header.origin !== "inspec
tor") | 297 if (header.isInline && !header.hasSourceURL && header.origin !== "inspec
tor") |
303 return; | 298 return; |
(...skipping 30 matching lines...) Expand all Loading... |
334 if (resourceType === WebInspector.resourceTypes.Font && resource.mimeTyp
e && !resource.mimeType.includes("font")) | 329 if (resourceType === WebInspector.resourceTypes.Font && resource.mimeTyp
e && !resource.mimeType.includes("font")) |
335 return; | 330 return; |
336 if ((resourceType === WebInspector.resourceTypes.Image || resourceType =
== WebInspector.resourceTypes.Font) && resource.contentURL().startsWith("data:")
) | 331 if ((resourceType === WebInspector.resourceTypes.Image || resourceType =
== WebInspector.resourceTypes.Font) && resource.contentURL().startsWith("data:")
) |
337 return; | 332 return; |
338 | 333 |
339 // Never load document twice. | 334 // Never load document twice. |
340 if (this._workspace.uiSourceCodeForURL(resource.url)) | 335 if (this._workspace.uiSourceCodeForURL(resource.url)) |
341 return; | 336 return; |
342 | 337 |
343 var uiSourceCode = this._createFile(resource, WebInspector.ResourceTreeF
rame.fromResource(resource), false); | 338 var uiSourceCode = this._createFile(resource, WebInspector.ResourceTreeF
rame.fromResource(resource), false); |
344 if (uiSourceCode) { | 339 uiSourceCode[WebInspector.NetworkProject._resourceSymbol] = resource; |
345 uiSourceCode[WebInspector.NetworkProject._resourceSymbol] = resource
; | 340 this._addUISourceCodeWithProvider(uiSourceCode, resource); |
346 this._addUISourceCodeWithProvider(uiSourceCode, resource); | |
347 } | |
348 }, | 341 }, |
349 | 342 |
350 /** | 343 /** |
351 * @param {!WebInspector.Event} event | 344 * @param {!WebInspector.Event} event |
352 */ | 345 */ |
353 _frameWillNavigate: function(event) | 346 _frameWillNavigate: function(event) |
354 { | 347 { |
355 var frame = /** @type {!WebInspector.ResourceTreeFrame} */ (event.data); | 348 var frame = /** @type {!WebInspector.ResourceTreeFrame} */ (event.data); |
356 var project = this._workspaceProject(frame, false); | 349 var project = this._workspaceProject(frame, false); |
357 for (var resource of frame.resources()) | 350 for (var resource of frame.resources()) |
(...skipping 17 matching lines...) Expand all Loading... |
375 if (this.target().targetManager().allTargetsSuspended()) | 368 if (this.target().targetManager().allTargetsSuspended()) |
376 this._reset(); | 369 this._reset(); |
377 else | 370 else |
378 this._populate(); | 371 this._populate(); |
379 }, | 372 }, |
380 | 373 |
381 /** | 374 /** |
382 * @param {!WebInspector.ContentProvider} contentProvider | 375 * @param {!WebInspector.ContentProvider} contentProvider |
383 * @param {?WebInspector.ResourceTreeFrame} frame | 376 * @param {?WebInspector.ResourceTreeFrame} frame |
384 * @param {boolean} isContentScript | 377 * @param {boolean} isContentScript |
385 * @return {?WebInspector.UISourceCode} | 378 * @return {!WebInspector.UISourceCode} |
386 */ | 379 */ |
387 _createFile: function(contentProvider, frame, isContentScript) | 380 _createFile: function(contentProvider, frame, isContentScript) |
388 { | 381 { |
389 var url = contentProvider.contentURL(); | 382 var url = contentProvider.contentURL(); |
390 if (this._networkMapping.hasMappingForNetworkURL(url)) | |
391 return null; | |
392 | |
393 var project = this._workspaceProject(frame, isContentScript); | 383 var project = this._workspaceProject(frame, isContentScript); |
394 var uiSourceCode = project.createUISourceCode(url, contentProvider.conte
ntType()); | 384 var uiSourceCode = project.createUISourceCode(url, contentProvider.conte
ntType()); |
395 uiSourceCode[WebInspector.NetworkProject._targetSymbol] = this.target(); | 385 uiSourceCode[WebInspector.NetworkProject._targetSymbol] = this.target(); |
396 return uiSourceCode; | 386 return uiSourceCode; |
397 }, | 387 }, |
398 | 388 |
399 _dispose: function() | 389 _dispose: function() |
400 { | 390 { |
401 this._reset(); | 391 this._reset(); |
402 WebInspector.EventTarget.removeEventListeners(this._eventListeners); | 392 WebInspector.EventTarget.removeEventListeners(this._eventListeners); |
403 delete this.target()[WebInspector.NetworkProject._networkProjectSymbol]; | 393 delete this.target()[WebInspector.NetworkProject._networkProjectSymbol]; |
404 }, | 394 }, |
405 | 395 |
406 _reset: function() | 396 _reset: function() |
407 { | 397 { |
408 for (var project of this._workspaceProjects.values()) | 398 for (var project of this._workspaceProjects.values()) |
409 project.removeProject(); | 399 project.removeProject(); |
410 this._workspaceProjects.clear(); | 400 this._workspaceProjects.clear(); |
411 }, | 401 }, |
412 | 402 |
413 __proto__: WebInspector.SDKObject.prototype | 403 __proto__: WebInspector.SDKObject.prototype |
414 } | 404 } |
OLD | NEW |