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 205 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
216 var target = Bindings.NetworkProject.targetForUISourceCode(uiSourceCode); | 216 var target = Bindings.NetworkProject.targetForUISourceCode(uiSourceCode); |
217 var resourceTreeModel = target && target.model(SDK.ResourceTreeModel); | 217 var resourceTreeModel = target && target.model(SDK.ResourceTreeModel); |
218 var attribution = uiSourceCode[Bindings.NetworkProject._frameAttributionSymb
ol]; | 218 var attribution = uiSourceCode[Bindings.NetworkProject._frameAttributionSymb
ol]; |
219 if (!resourceTreeModel || !attribution) | 219 if (!resourceTreeModel || !attribution) |
220 return []; | 220 return []; |
221 var frames = Array.from(attribution.keys()).map(frameId => resourceTreeModel
.frameForId(frameId)); | 221 var frames = Array.from(attribution.keys()).map(frameId => resourceTreeModel
.frameForId(frameId)); |
222 return frames.filter(frame => !!frame); | 222 return frames.filter(frame => !!frame); |
223 } | 223 } |
224 | 224 |
225 /** | 225 /** |
226 * @param {!Workspace.UISourceCode} uiSourceCode | |
227 * @return {string} | |
228 */ | |
229 static uiSourceCodeMimeType(uiSourceCode) { | |
230 if (uiSourceCode[Bindings.NetworkProject._scriptSymbol] || uiSourceCode[Bind
ings.NetworkProject._styleSheetSymbol]) | |
231 return uiSourceCode.contentType().canonicalMimeType(); | |
232 | |
233 var resource = uiSourceCode[Bindings.NetworkProject._resourceSymbol]; | |
234 if (resource) | |
235 return resource.mimeType; | |
236 var mimeType = Common.ResourceType.mimeFromURL(uiSourceCode.url()); | |
237 return mimeType || uiSourceCode.contentType().canonicalMimeType(); | |
238 } | |
239 | |
240 /** | |
241 * @param {string} frameId | 226 * @param {string} frameId |
242 * @param {boolean} isContentScripts | 227 * @param {boolean} isContentScripts |
243 * @return {!Bindings.ContentProviderBasedProject} | 228 * @return {!Bindings.ContentProviderBasedProject} |
244 */ | 229 */ |
245 _workspaceProject(frameId, isContentScripts) { | 230 _workspaceProject(frameId, isContentScripts) { |
246 var projectId = Bindings.NetworkProject.projectId(this._target, frameId, isC
ontentScripts); | 231 var projectId = Bindings.NetworkProject.projectId(this._target, frameId, isC
ontentScripts); |
247 var projectType = isContentScripts ? Workspace.projectTypes.ContentScripts :
Workspace.projectTypes.Network; | 232 var projectType = isContentScripts ? Workspace.projectTypes.ContentScripts :
Workspace.projectTypes.Network; |
248 | 233 |
249 var project = this._workspaceProjects.get(projectId); | 234 var project = this._workspaceProjects.get(projectId); |
250 if (project) | 235 if (project) |
(...skipping 16 matching lines...) Expand all Loading... |
267 this._workspaceProjects.get(Bindings.NetworkProject.projectId(this._targ
et, frameId, isContentScript)); | 252 this._workspaceProjects.get(Bindings.NetworkProject.projectId(this._targ
et, frameId, isContentScript)); |
268 if (!project) | 253 if (!project) |
269 return; | 254 return; |
270 project.removeFile(url); | 255 project.removeFile(url); |
271 } | 256 } |
272 | 257 |
273 /** | 258 /** |
274 * @param {!Workspace.UISourceCode} uiSourceCode | 259 * @param {!Workspace.UISourceCode} uiSourceCode |
275 * @param {!Common.ContentProvider} contentProvider | 260 * @param {!Common.ContentProvider} contentProvider |
276 * @param {?Workspace.UISourceCodeMetadata} metadata | 261 * @param {?Workspace.UISourceCodeMetadata} metadata |
| 262 * @param {string} mimeType |
277 */ | 263 */ |
278 _addUISourceCodeWithProvider(uiSourceCode, contentProvider, metadata) { | 264 _addUISourceCodeWithProvider(uiSourceCode, contentProvider, metadata, mimeType
) { |
279 /** @type {!Bindings.ContentProviderBasedProject} */ (uiSourceCode.project()
) | 265 /** @type {!Bindings.ContentProviderBasedProject} */ (uiSourceCode.project()
) |
280 .addUISourceCodeWithProvider(uiSourceCode, contentProvider, metadata); | 266 .addUISourceCodeWithProvider(uiSourceCode, contentProvider, metadata, mi
meType); |
281 } | 267 } |
282 | 268 |
283 /** | 269 /** |
284 * @param {!SDK.Script} script | 270 * @param {!SDK.Script} script |
285 * @return {boolean} | 271 * @return {boolean} |
286 */ | 272 */ |
287 _acceptsScript(script) { | 273 _acceptsScript(script) { |
288 if (!script.sourceURL || script.isLiveEdit() || (script.isInlineScript() &&
!script.hasSourceURL)) | 274 if (!script.sourceURL || script.isLiveEdit() || (script.isInlineScript() &&
!script.hasSourceURL)) |
289 return false; | 275 return false; |
290 // Filter out embedder injected content scripts. | 276 // Filter out embedder injected content scripts. |
(...skipping 10 matching lines...) Expand all Loading... |
301 */ | 287 */ |
302 _parsedScriptSource(event) { | 288 _parsedScriptSource(event) { |
303 var script = /** @type {!SDK.Script} */ (event.data); | 289 var script = /** @type {!SDK.Script} */ (event.data); |
304 if (!this._acceptsScript(script)) | 290 if (!this._acceptsScript(script)) |
305 return; | 291 return; |
306 this._acceptedScripts.add(script); | 292 this._acceptedScripts.add(script); |
307 var originalContentProvider = script.originalContentProvider(); | 293 var originalContentProvider = script.originalContentProvider(); |
308 var frameId = Bindings.frameIdForScript(script); | 294 var frameId = Bindings.frameIdForScript(script); |
309 script[Bindings.NetworkProject._frameIdSymbol] = frameId; | 295 script[Bindings.NetworkProject._frameIdSymbol] = frameId; |
310 var uiSourceCode = this._createFile(originalContentProvider, frameId, script
.isContentScript()); | 296 var uiSourceCode = this._createFile(originalContentProvider, frameId, script
.isContentScript()); |
311 uiSourceCode[Bindings.NetworkProject._scriptSymbol] = script; | |
312 var metadata = this._fetchMetadata(frameId, uiSourceCode.url()); | 297 var metadata = this._fetchMetadata(frameId, uiSourceCode.url()); |
313 this._addUISourceCodeWithProvider(uiSourceCode, originalContentProvider, met
adata); | 298 this._addUISourceCodeWithProvider(uiSourceCode, originalContentProvider, met
adata, 'text/javascript'); |
314 } | 299 } |
315 | 300 |
316 /** | 301 /** |
317 * @param {!Common.Event} event | 302 * @param {!Common.Event} event |
318 */ | 303 */ |
319 _executionContextDestroyed(event) { | 304 _executionContextDestroyed(event) { |
320 var executionContext = /** @type {!SDK.ExecutionContext} */ (event.data); | 305 var executionContext = /** @type {!SDK.ExecutionContext} */ (event.data); |
321 var scripts = this._debuggerModel.scriptsForExecutionContext(executionContex
t); | 306 var scripts = this._debuggerModel.scriptsForExecutionContext(executionContex
t); |
322 this._removeScripts(scripts); | 307 this._removeScripts(scripts); |
323 } | 308 } |
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
358 */ | 343 */ |
359 _styleSheetAdded(event) { | 344 _styleSheetAdded(event) { |
360 var header = /** @type {!SDK.CSSStyleSheetHeader} */ (event.data); | 345 var header = /** @type {!SDK.CSSStyleSheetHeader} */ (event.data); |
361 if (!this._acceptsHeader(header)) | 346 if (!this._acceptsHeader(header)) |
362 return; | 347 return; |
363 | 348 |
364 var originalContentProvider = header.originalContentProvider(); | 349 var originalContentProvider = header.originalContentProvider(); |
365 var uiSourceCode = this._createFile(originalContentProvider, header.frameId,
false); | 350 var uiSourceCode = this._createFile(originalContentProvider, header.frameId,
false); |
366 uiSourceCode[Bindings.NetworkProject._styleSheetSymbol] = header; | 351 uiSourceCode[Bindings.NetworkProject._styleSheetSymbol] = header; |
367 var metadata = this._fetchMetadata(header.frameId, uiSourceCode.url()); | 352 var metadata = this._fetchMetadata(header.frameId, uiSourceCode.url()); |
368 this._addUISourceCodeWithProvider(uiSourceCode, originalContentProvider, met
adata); | 353 this._addUISourceCodeWithProvider(uiSourceCode, originalContentProvider, met
adata, 'text/css'); |
369 } | 354 } |
370 | 355 |
371 /** | 356 /** |
372 * @param {!Common.Event} event | 357 * @param {!Common.Event} event |
373 */ | 358 */ |
374 _styleSheetRemoved(event) { | 359 _styleSheetRemoved(event) { |
375 var header = /** @type {!SDK.CSSStyleSheetHeader} */ (event.data); | 360 var header = /** @type {!SDK.CSSStyleSheetHeader} */ (event.data); |
376 if (!this._acceptsHeader(header)) | 361 if (!this._acceptsHeader(header)) |
377 return; | 362 return; |
378 this._removeFileForURL(header.resourceURL(), header.frameId, false); | 363 this._removeFileForURL(header.resourceURL(), header.frameId, false); |
(...skipping 29 matching lines...) Expand all Loading... |
408 } | 393 } |
409 | 394 |
410 /** | 395 /** |
411 * @param {!SDK.Resource} resource | 396 * @param {!SDK.Resource} resource |
412 */ | 397 */ |
413 _addResource(resource) { | 398 _addResource(resource) { |
414 if (!this._acceptsResource(resource)) | 399 if (!this._acceptsResource(resource)) |
415 return; | 400 return; |
416 | 401 |
417 var uiSourceCode = this._createFile(resource, resource.frameId, false); | 402 var uiSourceCode = this._createFile(resource, resource.frameId, false); |
418 uiSourceCode[Bindings.NetworkProject._resourceSymbol] = resource; | 403 this._addUISourceCodeWithProvider(uiSourceCode, resource, Bindings.resourceM
etadata(resource), resource.mimeType); |
419 this._addUISourceCodeWithProvider(uiSourceCode, resource, Bindings.resourceM
etadata(resource)); | |
420 } | 404 } |
421 | 405 |
422 /** | 406 /** |
423 * @param {!SDK.ResourceTreeFrame} frame | 407 * @param {!SDK.ResourceTreeFrame} frame |
424 */ | 408 */ |
425 _removeFrameResources(frame) { | 409 _removeFrameResources(frame) { |
426 var regularProject = this._workspaceProject(frame.id, false); | 410 var regularProject = this._workspaceProject(frame.id, false); |
427 var contentScriptsProject = this._workspaceProject(frame.id, true); | 411 var contentScriptsProject = this._workspaceProject(frame.id, true); |
428 for (var resource of frame.resources()) { | 412 for (var resource of frame.resources()) { |
429 if (!this._acceptsResource(resource)) | 413 if (!this._acceptsResource(resource)) |
(...skipping 88 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
518 /** | 502 /** |
519 * @param {!Workspace.UISourceCode} uiSourceCode | 503 * @param {!Workspace.UISourceCode} uiSourceCode |
520 * @return {?SDK.CSSStyleSheetHeader} | 504 * @return {?SDK.CSSStyleSheetHeader} |
521 */ | 505 */ |
522 static styleHeaderForUISourceCode(uiSourceCode) { | 506 static styleHeaderForUISourceCode(uiSourceCode) { |
523 return uiSourceCode[Bindings.NetworkProject._styleSheetSymbol]; | 507 return uiSourceCode[Bindings.NetworkProject._styleSheetSymbol]; |
524 } | 508 } |
525 }; | 509 }; |
526 | 510 |
527 Bindings.NetworkProject._networkProjectSymbol = Symbol('networkProject'); | 511 Bindings.NetworkProject._networkProjectSymbol = Symbol('networkProject'); |
528 Bindings.NetworkProject._resourceSymbol = Symbol('resource'); | |
529 Bindings.NetworkProject._scriptSymbol = Symbol('script'); | |
530 Bindings.NetworkProject._styleSheetSymbol = Symbol('styleSheet'); | 512 Bindings.NetworkProject._styleSheetSymbol = Symbol('styleSheet'); |
531 Bindings.NetworkProject._targetSymbol = Symbol('target'); | 513 Bindings.NetworkProject._targetSymbol = Symbol('target'); |
532 Bindings.NetworkProject._frameIdSymbol = Symbol('frameid'); | 514 Bindings.NetworkProject._frameIdSymbol = Symbol('frameid'); |
533 | 515 |
534 Bindings.NetworkProject._frameAttributionSymbol = Symbol('Bindings.NetworkProjec
t._frameAttributionSymbol'); | 516 Bindings.NetworkProject._frameAttributionSymbol = Symbol('Bindings.NetworkProjec
t._frameAttributionSymbol'); |
OLD | NEW |