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

Unified Diff: third_party/WebKit/Source/devtools/front_end/bindings/NetworkProject.js

Issue 2408203007: DevTools: teach network UISourceCodes to return metadata (Closed)
Patch Set: address 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 side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/Source/devtools/front_end/bindings/NetworkProject.js
diff --git a/third_party/WebKit/Source/devtools/front_end/bindings/NetworkProject.js b/third_party/WebKit/Source/devtools/front_end/bindings/NetworkProject.js
index 59d20d4c8588678a6fd8f287e0472a16b0859635..5f8b5580d4835b48ad957129424c186afb48ffc0 100644
--- a/third_party/WebKit/Source/devtools/front_end/bindings/NetworkProject.js
+++ b/third_party/WebKit/Source/devtools/front_end/bindings/NetworkProject.js
@@ -197,13 +197,15 @@ WebInspector.NetworkProject.prototype = {
/**
* @param {!WebInspector.ContentProvider} contentProvider
* @param {?WebInspector.ResourceTreeFrame} frame
- * @param {boolean=} isContentScript
+ * @param {boolean} isContentScript
+ * @param {?number} contentSize
* @return {!WebInspector.UISourceCode}
*/
- addFile: function(contentProvider, frame, isContentScript)
+ addFile: function(contentProvider, frame, isContentScript, contentSize)
{
var uiSourceCode = this._createFile(contentProvider, frame, isContentScript || false);
- this._addUISourceCodeWithProvider(uiSourceCode, contentProvider);
+ var metadata = typeof contentSize === "number" ? new WebInspector.UISourceCodeMetadata(null, contentSize) : null;
+ this._addUISourceCodeWithProvider(uiSourceCode, contentProvider, metadata);
return uiSourceCode;
},
@@ -244,10 +246,11 @@ WebInspector.NetworkProject.prototype = {
/**
* @param {!WebInspector.UISourceCode} uiSourceCode
* @param {!WebInspector.ContentProvider} contentProvider
+ * @param {?WebInspector.UISourceCodeMetadata} metadata
*/
- _addUISourceCodeWithProvider: function(uiSourceCode, contentProvider)
+ _addUISourceCodeWithProvider: function(uiSourceCode, contentProvider, metadata)
{
- /** @type {!WebInspector.ContentProviderBasedProject} */ (uiSourceCode.project()).addUISourceCodeWithProvider(uiSourceCode, contentProvider);
+ /** @type {!WebInspector.ContentProviderBasedProject} */ (uiSourceCode.project()).addUISourceCodeWithProvider(uiSourceCode, contentProvider, metadata);
},
/**
@@ -266,7 +269,8 @@ WebInspector.NetworkProject.prototype = {
}
var uiSourceCode = this._createFile(script, WebInspector.ResourceTreeFrame.fromScript(script), script.isContentScript());
uiSourceCode[WebInspector.NetworkProject._scriptSymbol] = script;
- this._addUISourceCodeWithProvider(uiSourceCode, script);
+ var resource = WebInspector.ResourceTreeModel.resourceForURL(uiSourceCode.url());
+ this._addUISourceCodeWithProvider(uiSourceCode, script, this._resourceMetadata(resource));
},
/**
@@ -281,7 +285,8 @@ WebInspector.NetworkProject.prototype = {
var originalContentProvider = header.originalContentProvider();
var uiSourceCode = this._createFile(originalContentProvider, WebInspector.ResourceTreeFrame.fromStyleSheet(header), false);
uiSourceCode[WebInspector.NetworkProject._styleSheetSymbol] = header;
- this._addUISourceCodeWithProvider(uiSourceCode, originalContentProvider);
+ var resource = WebInspector.ResourceTreeModel.resourceForURL(uiSourceCode.url());
+ this._addUISourceCodeWithProvider(uiSourceCode, originalContentProvider, this._resourceMetadata(resource));
},
/**
@@ -333,7 +338,7 @@ WebInspector.NetworkProject.prototype = {
var uiSourceCode = this._createFile(resource, WebInspector.ResourceTreeFrame.fromResource(resource), false);
uiSourceCode[WebInspector.NetworkProject._resourceSymbol] = resource;
- this._addUISourceCodeWithProvider(uiSourceCode, resource);
+ this._addUISourceCodeWithProvider(uiSourceCode, resource, this._resourceMetadata(resource));
},
/**
@@ -382,6 +387,17 @@ WebInspector.NetworkProject.prototype = {
return uiSourceCode;
},
+ /**
+ * @param {?WebInspector.Resource} resource
+ * @return {?WebInspector.UISourceCodeMetadata}
+ */
+ _resourceMetadata: function(resource)
+ {
+ if (!resource || (typeof resource.contentSize() !== "number" && !resource.lastModified()))
+ return null;
+ return new WebInspector.UISourceCodeMetadata(resource.lastModified(), resource.contentSize());
+ },
+
_dispose: function()
{
this._reset();

Powered by Google App Engine
This is Rietveld 408576698