| Index: third_party/WebKit/Source/devtools/front_end/network/NetworkLogViewColumns.js
|
| diff --git a/third_party/WebKit/Source/devtools/front_end/network/NetworkLogViewColumns.js b/third_party/WebKit/Source/devtools/front_end/network/NetworkLogViewColumns.js
|
| index ae611c8b343b8bd218f6a6f33f55066734ecceca..a5c13a817902a20980f863eb314f7eb576d5d92e 100644
|
| --- a/third_party/WebKit/Source/devtools/front_end/network/NetworkLogViewColumns.js
|
| +++ b/third_party/WebKit/Source/devtools/front_end/network/NetworkLogViewColumns.js
|
| @@ -34,6 +34,10 @@ WebInspector.NetworkLogViewColumns = function(networkLogView, timeCalculator, du
|
| /** @type {!Array<{time: number, element: !Element}>} */
|
| this._eventDividers = [];
|
|
|
| + /** @type {!Map<string, !Array<number>>} */
|
| + this._shownEventDividers = new Map();
|
| + this._eventDividersShown = false;
|
| +
|
| this._gridMode = true;
|
|
|
| /** @type {!Array.<!WebInspector.NetworkLogViewColumns.Descriptor>} */
|
| @@ -360,6 +364,8 @@ WebInspector.NetworkLogViewColumns._defaultColumns = [
|
| }
|
| ];
|
|
|
| +WebInspector.NetworkLogViewColumns._filmStripDividerColor = "#fccc49";
|
| +
|
| /**
|
| * @param {!WebInspector.NetworkLogViewColumns.Descriptor} columnConfig
|
| * @return {!WebInspector.DataGrid.ColumnDescriptor}
|
| @@ -392,6 +398,7 @@ WebInspector.NetworkLogViewColumns.prototype = {
|
| if (this._popoverHelper)
|
| this._popoverHelper.hidePopover();
|
| this._timelineGrid.removeEventDividers();
|
| + this._shownEventDividers.clear();
|
| this.updateDividersIfNeeded();
|
| },
|
|
|
| @@ -504,7 +511,7 @@ WebInspector.NetworkLogViewColumns.prototype = {
|
| {
|
| if (!this._timelineRequestsAreStale) {
|
| this._updateScrollerWidthIfNeeded();
|
| - this._timelineColumn.update(this._activeScroller.scrollTop);
|
| + this._timelineColumn.update(this._activeScroller.scrollTop, this._eventDividersShown ? this._shownEventDividers : undefined);
|
| return;
|
| }
|
| var currentNode = this._dataGrid.rootNode();
|
| @@ -517,7 +524,7 @@ WebInspector.NetworkLogViewColumns.prototype = {
|
| requestData.navigationRequest = currentNode.request();
|
| requestData.requests.push(currentNode.request());
|
| }
|
| - this._timelineColumn.update(this._activeScroller.scrollTop, requestData);
|
| + this._timelineColumn.update(this._activeScroller.scrollTop, this._shownEventDividers, requestData);
|
| },
|
|
|
| /**
|
| @@ -994,8 +1001,26 @@ WebInspector.NetworkLogViewColumns.prototype = {
|
| */
|
| addEventDividers: function(times, className)
|
| {
|
| - if (Runtime.experiments.isEnabled("canvasNetworkTimeline"))
|
| + if (Runtime.experiments.isEnabled("canvasNetworkTimeline")) {
|
| + // TODO(allada) When we remove old timeline remove this and pass in the color.
|
| + var color = "transparent";
|
| + switch (className) {
|
| + case "network-blue-divider":
|
| + color = "hsla(240, 100%, 80%, 0.7)";
|
| + break;
|
| + case "network-red-divider":
|
| + color = "rgba(255, 0, 0, 0.5)";
|
| + break;
|
| + default:
|
| + return;
|
| + }
|
| + var currentTimes = this._shownEventDividers.get(color) || [];
|
| + this._shownEventDividers.set(color, currentTimes.concat(times));
|
| +
|
| + this._networkLogView.scheduleRefresh();
|
| return;
|
| + }
|
| +
|
| for (var i = 0; i < times.length; ++i) {
|
| var element = createElementWithClass("div", "network-event-divider " + className);
|
| this._timelineGrid.addEventDivider(element);
|
| @@ -1021,15 +1046,21 @@ WebInspector.NetworkLogViewColumns.prototype = {
|
|
|
| hideEventDividers: function()
|
| {
|
| - if (Runtime.experiments.isEnabled("canvasNetworkTimeline"))
|
| + this._eventDividersShown = true;
|
| + if (Runtime.experiments.isEnabled("canvasNetworkTimeline")) {
|
| + this._redrawTimelineColumn();
|
| return;
|
| + }
|
| this._timelineGrid.hideEventDividers();
|
| },
|
|
|
| showEventDividers: function()
|
| {
|
| - if (Runtime.experiments.isEnabled("canvasNetworkTimeline"))
|
| + this._eventDividersShown = false;
|
| + if (Runtime.experiments.isEnabled("canvasNetworkTimeline")) {
|
| + this._redrawTimelineColumn();
|
| return;
|
| + }
|
| this._timelineGrid.showEventDividers();
|
| },
|
|
|
| @@ -1038,12 +1069,22 @@ WebInspector.NetworkLogViewColumns.prototype = {
|
| */
|
| selectFilmStripFrame: function(time)
|
| {
|
| + if (Runtime.experiments.isEnabled("canvasNetworkTimeline")) {
|
| + this._shownEventDividers.set(WebInspector.NetworkLogViewColumns._filmStripDividerColor, [time]);
|
| + this._redrawTimelineColumn();
|
| + return;
|
| + }
|
| for (var divider of this._eventDividers)
|
| divider.element.classList.toggle("network-frame-divider-selected", divider.time === time);
|
| },
|
|
|
| clearFilmStripFrame: function()
|
| {
|
| + if (Runtime.experiments.isEnabled("canvasNetworkTimeline")) {
|
| + this._shownEventDividers.delete(WebInspector.NetworkLogViewColumns._filmStripDividerColor);
|
| + this._redrawTimelineColumn();
|
| + return;
|
| + }
|
| for (var divider of this._eventDividers)
|
| divider.element.classList.toggle("network-frame-divider-selected", false);
|
| }
|
|
|