Title: [102574] trunk/Source/WebCore
Revision
102574
Author
[email protected]
Date
2011-12-12 05:58:56 -0800 (Mon, 12 Dec 2011)

Log Message

Web Inspector: chromium: UI: Detailed Heap snapshot shows too many objects' hidden properties.
https://bugs.webkit.org/show_bug.cgi?id=74289

WebCore objects have many hidden properties.
The Detailed Heap shapshot view shows all these props for a selected object.
The result view looks too heavy and users usually failed to find a useful information about the object.
Looks like such ability is unnecessary in the most cases.
I'd like to introduce a configurable property that will show/hide these props from the view.

Reviewed by Yury Semikhatsky.

* English.lproj/localizedStrings.js:
* inspector/front-end/DetailedHeapshotGridNodes.js:
* inspector/front-end/DetailedHeapshotView.js:
* inspector/front-end/HeapSnapshotProxy.js:
(WebInspector.HeapSnapshotProxy.prototype.createPathFinder):
* inspector/front-end/SettingsScreen.js:
(WebInspector.SettingsScreen):

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (102573 => 102574)


--- trunk/Source/WebCore/ChangeLog	2011-12-12 13:53:13 UTC (rev 102573)
+++ trunk/Source/WebCore/ChangeLog	2011-12-12 13:58:56 UTC (rev 102574)
@@ -1,3 +1,24 @@
+2011-12-12  Ilya Tikhonovsky  <[email protected]>
+
+        Web Inspector: chromium: UI: Detailed Heap snapshot shows too many objects' hidden properties.
+        https://bugs.webkit.org/show_bug.cgi?id=74289
+
+        WebCore objects have many hidden properties.
+        The Detailed Heap shapshot view shows all these props for a selected object.
+        The result view looks too heavy and users usually failed to find a useful information about the object.
+        Looks like such ability is unnecessary in the most cases.
+        I'd like to introduce a configurable property that will show/hide these props from the view.
+
+        Reviewed by Yury Semikhatsky.
+
+        * English.lproj/localizedStrings.js:
+        * inspector/front-end/DetailedHeapshotGridNodes.js:
+        * inspector/front-end/DetailedHeapshotView.js:
+        * inspector/front-end/HeapSnapshotProxy.js:
+        (WebInspector.HeapSnapshotProxy.prototype.createPathFinder):
+        * inspector/front-end/SettingsScreen.js:
+        (WebInspector.SettingsScreen):
+
 2011-12-12  Kentaro Hara  <[email protected]>
 
         Unreviewed, rolling out r102556.

Modified: trunk/Source/WebCore/English.lproj/localizedStrings.js


(Binary files differ)

Modified: trunk/Source/WebCore/inspector/front-end/DetailedHeapshotGridNodes.js (102573 => 102574)


--- trunk/Source/WebCore/inspector/front-end/DetailedHeapshotGridNodes.js	2011-12-12 13:53:13 UTC (rev 102573)
+++ trunk/Source/WebCore/inspector/front-end/DetailedHeapshotGridNodes.js	2011-12-12 13:58:56 UTC (rev 102574)
@@ -343,7 +343,7 @@
 
     _createProvider: function(snapshot, nodeIndex)
     {
-        var showHiddenData = WebInspector.DetailedHeapshotView.prototype.showHiddenData;
+        var showHiddenData = WebInspector.settings.showHeapSnapshotObjectsHiddenProperties.get();
         return snapshot.createEdgesProvider(
             nodeIndex,
             "function(edge) {" +

Modified: trunk/Source/WebCore/inspector/front-end/DetailedHeapshotView.js (102573 => 102574)


--- trunk/Source/WebCore/inspector/front-end/DetailedHeapshotView.js	2011-12-12 13:53:13 UTC (rev 102573)
+++ trunk/Source/WebCore/inspector/front-end/DetailedHeapshotView.js	2011-12-12 13:58:56 UTC (rev 102574)
@@ -394,7 +394,7 @@
 
 WebInspector.HeapSnapshotPathFinderState = function(snapshot, nodeIndex, rootFilter)
 {
-    this._pathFinder = snapshot.createPathFinder(nodeIndex, !WebInspector.DetailedHeapshotView.prototype.showHiddenData);
+    this._pathFinder = snapshot.createPathFinder(nodeIndex, !WebInspector.settings.showHeapSnapshotObjectsHiddenProperties.get());
     this._pathFinder.updateRoots(rootFilter);
     this._foundCount = 0;
     this._foundCountMax = null;
@@ -1293,7 +1293,7 @@
 
 WebInspector.DetailedHeapshotView.prototype.__proto__ = WebInspector.View.prototype;
 
-WebInspector.DetailedHeapshotView.prototype.showHiddenData = true;
+WebInspector.settings.showHeapSnapshotObjectsHiddenProperties = WebInspector.settings.createSetting("showHeaSnapshotObjectsHiddenProperties", false);
 
 WebInspector.DetailedHeapshotProfileType = function()
 {

Modified: trunk/Source/WebCore/inspector/front-end/HeapSnapshotProxy.js (102573 => 102574)


--- trunk/Source/WebCore/inspector/front-end/HeapSnapshotProxy.js	2011-12-12 13:53:13 UTC (rev 102573)
+++ trunk/Source/WebCore/inspector/front-end/HeapSnapshotProxy.js	2011-12-12 13:58:56 UTC (rev 102574)
@@ -340,9 +340,9 @@
         return this.callFactoryMethod(null, "createNodesProviderForDominator", "WebInspector.HeapSnapshotProviderProxy", nodeIndex, filter);
     },
 
-    createPathFinder: function(targetNodeIndex)
+    createPathFinder: function(targetNodeIndex, skipHidden)
     {
-        return this.callFactoryMethod(null, "createPathFinder", "WebInspector.HeapSnapshotPathFinderProxy", targetNodeIndex);
+        return this.callFactoryMethod(null, "createPathFinder", "WebInspector.HeapSnapshotPathFinderProxy", targetNodeIndex, skipHidden);
     },
 
     dispose: function()

Modified: trunk/Source/WebCore/inspector/front-end/SettingsScreen.js (102573 => 102574)


--- trunk/Source/WebCore/inspector/front-end/SettingsScreen.js	2011-12-12 13:53:13 UTC (rev 102573)
+++ trunk/Source/WebCore/inspector/front-end/SettingsScreen.js	2011-12-12 13:58:56 UTC (rev 102574)
@@ -67,6 +67,9 @@
     p.appendChild(this._createCheckboxSetting(WebInspector.UIString("Show script folders"), WebInspector.settings.showScriptFolders));
     p.appendChild(this._createCheckboxSetting(WebInspector.UIString("Search in content scripts"), WebInspector.settings.searchInContentScripts));
 
+    p = this._appendSection(WebInspector.UIString("Profiler"), true);
+    p.appendChild(this._createCheckboxSetting(WebInspector.UIString("Show objects' hidden properties"), WebInspector.settings.showHeapSnapshotObjectsHiddenProperties));
+
     p = this._appendSection(WebInspector.UIString("Console"), true);
     p.appendChild(this._createCheckboxSetting(WebInspector.UIString("Log XMLHttpRequests"), WebInspector.settings.monitoringXHREnabled));
     p.appendChild(this._createCheckboxSetting(WebInspector.UIString("Preserve log upon navigation"), WebInspector.settings.preserveConsoleLog));
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to