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

Unified Diff: Source/devtools/front_end/profiler/ProfilesPanel.js

Issue 720223002: DevTools: only allow status bar items in status bars. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: rebaselined Created 6 years, 1 month 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: Source/devtools/front_end/profiler/ProfilesPanel.js
diff --git a/Source/devtools/front_end/profiler/ProfilesPanel.js b/Source/devtools/front_end/profiler/ProfilesPanel.js
index 01d40dee977d0cb9758dacd8efa318616fb8f216..76540791d4c6d0b6b252057b5458375c95ed3d8d 100644
--- a/Source/devtools/front_end/profiler/ProfilesPanel.js
+++ b/Source/devtools/front_end/profiler/ProfilesPanel.js
@@ -80,7 +80,10 @@ WebInspector.ProfileType.prototype = {
return null;
},
- get statusBarItems()
+ /**
+ * @return {!Array.<!WebInspector.StatusBarItem>}
+ */
+ statusBarItems: function()
{
return [];
},
@@ -453,25 +456,24 @@ WebInspector.ProfilesPanel = function()
this.profileViews.classList.add("vbox");
mainView.element.appendChild(this.profileViews);
- var statusBarContainer = createElementWithClass("div", "profiles-status-bar");
- mainView.element.insertBefore(statusBarContainer, mainView.element.firstChild);
- this._statusBarElement = statusBarContainer.createChild("div", "status-bar");
+ this._statusBarElement = createElementWithClass("div", "profiles-status-bar");
+ mainView.element.insertBefore(this._statusBarElement, mainView.element.firstChild);
this.sidebarElement().classList.add("profiles-sidebar-tree-box");
var statusBarContainerLeft = createElementWithClass("div", "profiles-status-bar");
this.sidebarElement().insertBefore(statusBarContainerLeft, this.sidebarElement().firstChild);
- this._statusBarButtons = statusBarContainerLeft.createChild("div", "status-bar");
+ var statusBar = new WebInspector.StatusBar(statusBarContainerLeft);
this.recordButton = new WebInspector.StatusBarButton("", "record-profile-status-bar-item");
this.recordButton.addEventListener("click", this.toggleRecordButton, this);
- this._statusBarButtons.appendChild(this.recordButton.element);
+ statusBar.appendStatusBarItem(this.recordButton);
this.clearResultsButton = new WebInspector.StatusBarButton(WebInspector.UIString("Clear all profiles."), "clear-status-bar-item");
this.clearResultsButton.addEventListener("click", this._reset, this);
- this._statusBarButtons.appendChild(this.clearResultsButton.element);
+ statusBar.appendStatusBarItem(this.clearResultsButton);
- this._profileTypeStatusBarItemsContainer = this._statusBarElement.createChild("div");
- this._profileViewStatusBarItemsContainer = this._statusBarElement.createChild("div");
+ this._profileTypeStatusBar = new WebInspector.StatusBar(this._statusBarElement);
+ this._profileViewStatusBar = new WebInspector.StatusBar(this._statusBarElement);
this._profileGroups = {};
this._launcherView = new WebInspector.MultiProfileLauncherView(this);
@@ -499,7 +501,7 @@ WebInspector.ProfilesPanel.prototype = {
*/
searchableView: function()
{
- return this.visibleView.searchableView();
+ return this.visibleView ? this.visibleView.searchableView() : null;
},
_createFileSelectorElement: function()
@@ -617,12 +619,10 @@ WebInspector.ProfilesPanel.prototype = {
_updateProfileTypeSpecificUI: function()
{
this._updateRecordButton(this.recordButton.toggled());
- this._profileTypeStatusBarItemsContainer.removeChildren();
- var statusBarItems = this._selectedProfileType.statusBarItems;
- if (statusBarItems) {
- for (var i = 0; i < statusBarItems.length; ++i)
- this._profileTypeStatusBarItemsContainer.appendChild(statusBarItems[i]);
- }
+ this._profileTypeStatusBar.removeStatusBarItems();
+ var statusBarItems = this._selectedProfileType.statusBarItems();
+ for (var i = 0; i < statusBarItems.length; ++i)
+ this._profileTypeStatusBar.appendStatusBarItem(statusBarItems[i]);
},
_reset: function()
@@ -643,12 +643,12 @@ WebInspector.ProfilesPanel.prototype = {
this._launcherView.detach();
this.profileViews.removeChildren();
- this._profileViewStatusBarItemsContainer.removeChildren();
+ this._profileViewStatusBar.removeStatusBarItems();
this.removeAllListeners();
this.recordButton.setVisible(true);
- this._profileViewStatusBarItemsContainer.classList.remove("hidden");
+ this._profileViewStatusBar.element.classList.remove("hidden");
this.clearResultsButton.element.classList.remove("hidden");
this.profilesItemTreeElement.select();
this._showLauncherView();
@@ -657,7 +657,7 @@ WebInspector.ProfilesPanel.prototype = {
_showLauncherView: function()
{
this.closeVisibleView();
- this._profileViewStatusBarItemsContainer.removeChildren();
+ this._profileViewStatusBar.removeStatusBarItems();
this._launcherView.show(this.profileViews);
this.visibleView = this._launcherView;
},
@@ -800,12 +800,11 @@ WebInspector.ProfilesPanel.prototype = {
var sidebarElement = profileTypeSection.sidebarElementForProfile(profile);
sidebarElement.revealAndSelect();
- this._profileViewStatusBarItemsContainer.removeChildren();
+ this._profileViewStatusBar.removeStatusBarItems();
- var statusBarItems = view.statusBarItems;
- if (statusBarItems)
- for (var i = 0; i < statusBarItems.length; ++i)
- this._profileViewStatusBarItemsContainer.appendChild(statusBarItems[i]);
+ var statusBarItems = view.statusBarItems();
+ for (var i = 0; i < statusBarItems.length; ++i)
+ this._profileViewStatusBar.appendStatusBarItem(statusBarItems[i]);
return view;
},
« no previous file with comments | « Source/devtools/front_end/profiler/HeapSnapshotView.js ('k') | Source/devtools/front_end/profiler/profilesPanel.css » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698