| Index: chrome/browser/resources/net_internals/details_view.js
|
| ===================================================================
|
| --- chrome/browser/resources/net_internals/details_view.js (revision 110334)
|
| +++ chrome/browser/resources/net_internals/details_view.js (working copy)
|
| @@ -5,35 +5,18 @@
|
| var DetailsView = (function() {
|
| 'use strict';
|
|
|
| - // We inherit from VerticalSplitView.
|
| - var superClass = VerticalSplitView;
|
| + // We inherit from DivView.
|
| + var superClass = DivView;
|
|
|
| /**
|
| - * The DetailsView handles the tabbed view that displays either the "log" or
|
| - * "timeline" view. This class keeps track of what the current view is, and
|
| - * invalidates the specific view each time the selected data has changed.
|
| + * The DetailsView displays the "log" view. This class keeps track of the
|
| + * selected SourceEntries, and repaints when they change.
|
| *
|
| * @constructor
|
| */
|
| - function DetailsView(tabHandlesContainerId,
|
| - logTabId,
|
| - timelineTabId,
|
| - logBoxId,
|
| - timelineBoxId) {
|
| - var tabSwitcher = new TabSwitcherView();
|
| -
|
| - superClass.call(this, new DivView(tabHandlesContainerId), tabSwitcher);
|
| -
|
| - this.tabSwitcher_ = tabSwitcher;
|
| -
|
| - this.logView_ = new DetailsLogView(logBoxId);
|
| - this.timelineView_ = new DetailsTimelineView(timelineBoxId);
|
| -
|
| - this.tabSwitcher_.addTab(logTabId, this.logView_, true, true);
|
| - this.tabSwitcher_.addTab(timelineTabId, this.timelineView_, true, true);
|
| -
|
| - // Default to the log view.
|
| - this.tabSwitcher_.switchToTab(logTabId, null);
|
| + function DetailsView(boxId) {
|
| + superClass.call(this, boxId);
|
| + this.sourceEntries_ = [];
|
| }
|
|
|
| // The delay between updates to repaint.
|
| @@ -43,17 +26,32 @@
|
| // Inherit the superclass's methods.
|
| __proto__: superClass.prototype,
|
|
|
| - /**
|
| - * Updates the data this view is using.
|
| - */
|
| - setData: function(currentData) {
|
| + setData: function(sourceEntries) {
|
| // Make a copy of the array (in case the caller mutates it), and sort it
|
| // by the source ID.
|
| - var sortedCurrentData = createSortedCopy(currentData);
|
| + this.sourceEntries_ = createSortedCopy(sourceEntries);
|
|
|
| - // TODO(eroman): Should not access private members of TabSwitcherView.
|
| - for (var i = 0; i < this.tabSwitcher_.tabs_.length; ++i)
|
| - this.tabSwitcher_.tabs_[i].contentView.setData(sortedCurrentData);
|
| + // Repaint the view.
|
| + if (this.isVisible() && !this.outstandingRepaint_) {
|
| + this.outstandingRepaint_ = true;
|
| + window.setTimeout(this.repaint.bind(this),
|
| + REPAINT_TIMEOUT_MS);
|
| + }
|
| + },
|
| +
|
| + repaint: function() {
|
| + this.outstandingRepaint_ = false;
|
| + this.getNode().innerHTML = '';
|
| + PaintLogView(this.sourceEntries_, this.getNode());
|
| + },
|
| +
|
| + show: function(isVisible) {
|
| + superClass.prototype.show.call(this, isVisible);
|
| + if (isVisible) {
|
| + this.repaint();
|
| + } else {
|
| + this.getNode().innerHTML = '';
|
| + }
|
| }
|
| };
|
|
|
| @@ -65,108 +63,5 @@
|
| return sortedArray;
|
| }
|
|
|
| - //---------------------------------------------------------------------------
|
| -
|
| - var DetailsSubView = (function() {
|
| - // We inherit from DivView.
|
| - var superClass = DivView;
|
| -
|
| - /**
|
| - * Base class for the Log view and Timeline view.
|
| - *
|
| - * @constructor
|
| - */
|
| - function DetailsSubView(boxId) {
|
| - superClass.call(this, boxId);
|
| - this.sourceEntries_ = [];
|
| - }
|
| -
|
| - DetailsSubView.prototype = {
|
| - // Inherit the superclass's methods.
|
| - __proto__: superClass.prototype,
|
| -
|
| - setData: function(sourceEntries) {
|
| - this.sourceEntries_ = sourceEntries;
|
| -
|
| - // Repaint the view.
|
| - if (this.isVisible() && !this.outstandingRepaint_) {
|
| - this.outstandingRepaint_ = true;
|
| - window.setTimeout(this.repaint.bind(this),
|
| - REPAINT_TIMEOUT_MS);
|
| - }
|
| - },
|
| -
|
| - repaint: function() {
|
| - this.outstandingRepaint_ = false;
|
| - this.getNode().innerHTML = '';
|
| - },
|
| -
|
| - show: function(isVisible) {
|
| - superClass.prototype.show.call(this, isVisible);
|
| - if (isVisible) {
|
| - this.repaint();
|
| - } else {
|
| - this.getNode().innerHTML = '';
|
| - }
|
| - }
|
| - };
|
| -
|
| - return DetailsSubView;
|
| - })();
|
| -
|
| - //---------------------------------------------------------------------------
|
| -
|
| - var DetailsLogView = (function() {
|
| - // We inherit from DetailsSubView.
|
| - var superClass = DetailsSubView;
|
| -
|
| - /**
|
| - * Subview that is displayed in the log tab.
|
| - * @constructor
|
| - */
|
| - function DetailsLogView(boxId) {
|
| - superClass.call(this, boxId);
|
| - }
|
| -
|
| - DetailsLogView.prototype = {
|
| - // Inherit the superclass's methods.
|
| - __proto__: superClass.prototype,
|
| -
|
| - repaint: function() {
|
| - superClass.prototype.repaint.call(this);
|
| - PaintLogView(this.sourceEntries_, this.getNode());
|
| - }
|
| - };
|
| -
|
| - return DetailsLogView;
|
| - })();
|
| -
|
| - //---------------------------------------------------------------------------
|
| -
|
| - var DetailsTimelineView = (function() {
|
| - // We inherit from DetailsSubView.
|
| - var superClass = DetailsSubView;
|
| -
|
| - /**
|
| - * Subview that is displayed in the timeline tab.
|
| - * @constructor
|
| - */
|
| - function DetailsTimelineView(boxId) {
|
| - superClass.call(this, boxId);
|
| - }
|
| -
|
| - DetailsTimelineView.prototype = {
|
| - // Inherit the superclass's methods.
|
| - __proto__: superClass.prototype,
|
| -
|
| - repaint: function() {
|
| - superClass.prototype.repaint.call(this);
|
| - PaintTimelineView(this.sourceEntries_, this.getNode());
|
| - }
|
| - };
|
| -
|
| - return DetailsTimelineView;
|
| - })();
|
| -
|
| return DetailsView;
|
| })();
|
|
|