Index: third_party/WebKit/Source/devtools/front_end/components_lazy/FilmStripModel.js |
diff --git a/third_party/WebKit/Source/devtools/front_end/components_lazy/FilmStripModel.js b/third_party/WebKit/Source/devtools/front_end/components_lazy/FilmStripModel.js |
index c335527d8700d535a4f28edef2032a211a75d772..7b416245b39978c913ccf00bf1592f9e50be192f 100644 |
--- a/third_party/WebKit/Source/devtools/front_end/components_lazy/FilmStripModel.js |
+++ b/third_party/WebKit/Source/devtools/front_end/components_lazy/FilmStripModel.js |
@@ -11,34 +11,7 @@ |
*/ |
WebInspector.FilmStripModel = function(tracingModel, zeroTime) |
{ |
- this._tracingModel = tracingModel; |
- this._zeroTime = zeroTime || tracingModel.minimumRecordTime(); |
- |
- /** @type {!Array<!WebInspector.FilmStripModel.Frame>} */ |
- this._frames = []; |
- |
- var browserProcess = tracingModel.processByName("Browser"); |
- if (!browserProcess) |
- return; |
- var mainThread = browserProcess.threadByName("CrBrowserMain"); |
- if (!mainThread) |
- return; |
- |
- var events = mainThread.events(); |
- for (var i = 0; i < events.length; ++i) { |
- var event = events[i]; |
- if (event.startTime < this._zeroTime) |
- continue; |
- if (!event.hasCategory(WebInspector.FilmStripModel._category)) |
- continue; |
- if (event.name === WebInspector.FilmStripModel.TraceEvents.CaptureFrame) { |
- var data = event.args["data"]; |
- if (data) |
- this._frames.push(WebInspector.FilmStripModel.Frame._fromEvent(this, event, this._frames.length)); |
- } else if (event.name === WebInspector.FilmStripModel.TraceEvents.Screenshot) { |
- this._frames.push(WebInspector.FilmStripModel.Frame._fromSnapshot(this, /** @type {!WebInspector.TracingModel.ObjectSnapshot} */ (event), this._frames.length)); |
- } |
- } |
+ this.reset(tracingModel, zeroTime); |
} |
WebInspector.FilmStripModel._category = "disabled-by-default-devtools.screenshot"; |
@@ -50,6 +23,42 @@ WebInspector.FilmStripModel.TraceEvents = { |
WebInspector.FilmStripModel.prototype = { |
/** |
+ * @param {!WebInspector.TracingModel} tracingModel |
+ * @param {number=} zeroTime |
+ */ |
+ reset: function(tracingModel, zeroTime) |
alph
2016/09/08 00:03:07
you don't need to pass tracingModel all the time.
|
+ { |
+ this._zeroTime = zeroTime || tracingModel.minimumRecordTime(); |
+ this._spanTime = tracingModel.maximumRecordTime() - this._zeroTime; |
+ |
+ /** @type {!Array<!WebInspector.FilmStripModel.Frame>} */ |
+ this._frames = []; |
+ |
+ var browserProcess = tracingModel.processByName("Browser"); |
+ if (!browserProcess) |
+ return; |
+ var mainThread = browserProcess.threadByName("CrBrowserMain"); |
+ if (!mainThread) |
+ return; |
+ |
+ var events = mainThread.events(); |
+ for (var i = 0; i < events.length; ++i) { |
+ var event = events[i]; |
+ if (event.startTime < this._zeroTime) |
+ continue; |
+ if (!event.hasCategory(WebInspector.FilmStripModel._category)) |
+ continue; |
+ if (event.name === WebInspector.FilmStripModel.TraceEvents.CaptureFrame) { |
+ var data = event.args["data"]; |
+ if (data) |
+ this._frames.push(WebInspector.FilmStripModel.Frame._fromEvent(this, event, this._frames.length)); |
+ } else if (event.name === WebInspector.FilmStripModel.TraceEvents.Screenshot) { |
+ this._frames.push(WebInspector.FilmStripModel.Frame._fromSnapshot(this, /** @type {!WebInspector.TracingModel.ObjectSnapshot} */ (event), this._frames.length)); |
+ } |
+ } |
+ }, |
+ |
+ /** |
* @return {!Array<!WebInspector.FilmStripModel.Frame>} |
*/ |
frames: function() |
@@ -66,6 +75,14 @@ WebInspector.FilmStripModel.prototype = { |
}, |
/** |
+ * @return {number} |
+ */ |
+ spanTime: function() |
+ { |
+ return this._spanTime; |
+ }, |
+ |
+ /** |
* @param {number} timestamp |
* @return {?WebInspector.FilmStripModel.Frame} |
*/ |