Add a new TimelineOverview class that has a time ruler and tracks the current recording time. This class will eventually manage the timeline overview graphs and time window selection.
Created attachment 219458 [details] Patch
Comment on attachment 219458 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=219458&action=review r=me > Source/WebInspectorUI/UserInterface/TimelineContentView.js:189 > + var timespanSinceLastUpdate = (timestamp - this._lastUpdateTimestamp) / 1000 || 0; console.assert(timestamp > this._lastUpdateTimestamp)? > Source/WebInspectorUI/UserInterface/TimelineOverview.js:44 > + this.zeroTime = 0; > + this.secondsPerPixel = 0.0025; Is this suppose to be this.startTime = 0? There is no access to this.zeroTime and there is no getter/setter for it. > Source/WebInspectorUI/UserInterface/TimelineRecording.js:99 > + if (isNaN(this._startTime)) > + this._startTime = record.startTime; I think this is supposed to be: isNaN(record.startTime) > Source/WebInspectorUI/UserInterface/TimelineRuler.js:378 > + this._markerElementMap.forEach(function(markerElement, marker) { > + var newLeftPosition = (marker.time - this._startTime) / duration; > + > + this._updateLeftPositionOfElement(markerElement, newLeftPosition, visibleWidth); > + > + if (!markerElement.parentNode) > + this._markersElement.appendChild(markerElement); > + }.bind(this)); No need for the .bind(). You can use Map.prototype.forEach's second optional "thisObject" parameter. this._markerElementMap.forEach(function() { ... }, this);
https://trac.webkit.org/changeset/162408
<rdar://problem/15866319>