Changeset 102574 in webkit


Ignore:
Timestamp:
Dec 12, 2011 5:58:56 AM (12 years ago)
Author:
loislo@chromium.org
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):

Location:
trunk/Source/WebCore
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/ChangeLog

    r102572 r102574  
     12011-12-12  Ilya Tikhonovsky  <loislo@chromium.org>
     2
     3        Web Inspector: chromium: UI: Detailed Heap snapshot shows too many objects' hidden properties.
     4        https://bugs.webkit.org/show_bug.cgi?id=74289
     5
     6        WebCore objects have many hidden properties.
     7        The Detailed Heap shapshot view shows all these props for a selected object.
     8        The result view looks too heavy and users usually failed to find a useful information about the object.
     9        Looks like such ability is unnecessary in the most cases.
     10        I'd like to introduce a configurable property that will show/hide these props from the view.
     11
     12        Reviewed by Yury Semikhatsky.
     13
     14        * English.lproj/localizedStrings.js:
     15        * inspector/front-end/DetailedHeapshotGridNodes.js:
     16        * inspector/front-end/DetailedHeapshotView.js:
     17        * inspector/front-end/HeapSnapshotProxy.js:
     18        (WebInspector.HeapSnapshotProxy.prototype.createPathFinder):
     19        * inspector/front-end/SettingsScreen.js:
     20        (WebInspector.SettingsScreen):
     21
    1222011-12-12  Kentaro Hara  <haraken@chromium.org>
    223
  • trunk/Source/WebCore/inspector/front-end/DetailedHeapshotGridNodes.js

    r97961 r102574  
    344344    _createProvider: function(snapshot, nodeIndex)
    345345    {
    346         var showHiddenData = WebInspector.DetailedHeapshotView.prototype.showHiddenData;
     346        var showHiddenData = WebInspector.settings.showHeapSnapshotObjectsHiddenProperties.get();
    347347        return snapshot.createEdgesProvider(
    348348            nodeIndex,
  • trunk/Source/WebCore/inspector/front-end/DetailedHeapshotView.js

    r99217 r102574  
    395395WebInspector.HeapSnapshotPathFinderState = function(snapshot, nodeIndex, rootFilter)
    396396{
    397     this._pathFinder = snapshot.createPathFinder(nodeIndex, !WebInspector.DetailedHeapshotView.prototype.showHiddenData);
     397    this._pathFinder = snapshot.createPathFinder(nodeIndex, !WebInspector.settings.showHeapSnapshotObjectsHiddenProperties.get());
    398398    this._pathFinder.updateRoots(rootFilter);
    399399    this._foundCount = 0;
     
    12941294WebInspector.DetailedHeapshotView.prototype.__proto__ = WebInspector.View.prototype;
    12951295
    1296 WebInspector.DetailedHeapshotView.prototype.showHiddenData = true;
     1296WebInspector.settings.showHeapSnapshotObjectsHiddenProperties = WebInspector.settings.createSetting("showHeaSnapshotObjectsHiddenProperties", false);
    12971297
    12981298WebInspector.DetailedHeapshotProfileType = function()
  • trunk/Source/WebCore/inspector/front-end/HeapSnapshotProxy.js

    r97855 r102574  
    341341    },
    342342
    343     createPathFinder: function(targetNodeIndex)
    344     {
    345         return this.callFactoryMethod(null, "createPathFinder", "WebInspector.HeapSnapshotPathFinderProxy", targetNodeIndex);
     343    createPathFinder: function(targetNodeIndex, skipHidden)
     344    {
     345        return this.callFactoryMethod(null, "createPathFinder", "WebInspector.HeapSnapshotPathFinderProxy", targetNodeIndex, skipHidden);
    346346    },
    347347
  • trunk/Source/WebCore/inspector/front-end/SettingsScreen.js

    r101671 r102574  
    6868    p.appendChild(this._createCheckboxSetting(WebInspector.UIString("Search in content scripts"), WebInspector.settings.searchInContentScripts));
    6969
     70    p = this._appendSection(WebInspector.UIString("Profiler"), true);
     71    p.appendChild(this._createCheckboxSetting(WebInspector.UIString("Show objects' hidden properties"), WebInspector.settings.showHeapSnapshotObjectsHiddenProperties));
     72
    7073    p = this._appendSection(WebInspector.UIString("Console"), true);
    7174    p.appendChild(this._createCheckboxSetting(WebInspector.UIString("Log XMLHttpRequests"), WebInspector.settings.monitoringXHREnabled));
Note: See TracChangeset for help on using the changeset viewer.