<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>55824</bug_id>
          
          <creation_ts>2011-03-05 07:17:02 -0800</creation_ts>
          <short_desc>Web Inspector: [Chromium] Allow dynamic enabling of detailed heap profiles</short_desc>
          <delta_ts>2011-03-05 09:41:22 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Web Inspector (Deprecated)</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>50510</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Mikhail Naganov">mnaganov</reporter>
          <assigned_to name="Mikhail Naganov">mnaganov</assigned_to>
          <cc>apavlov</cc>
    
    <cc>bweinstein</cc>
    
    <cc>joepeck</cc>
    
    <cc>keishi</cc>
    
    <cc>loislo</cc>
    
    <cc>pfeldman</cc>
    
    <cc>pmuellr</cc>
    
    <cc>rik</cc>
    
    <cc>timothy</cc>
    
    <cc>yurys</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>362944</commentid>
    <comment_count>0</comment_count>
    <who name="Mikhail Naganov">mnaganov</who>
    <bug_when>2011-03-05 07:17:02 -0800</bug_when>
    <thetext>The current approach that requires editing DevTools.js is inconvenient -- it should be allowed to enable detailed heap profiles from Inspector UI.

The proposal is to introduce a keyboard combo (e.g. &quot;leakz&quot;) that enables detailed heap profiles.
The setting isn&apos;t stored anywhere. Instead, after loading the first profile from renderer, its type
is determined, and the mode got switched appropriately.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>362948</commentid>
    <comment_count>1</comment_count>
      <attachid>84864</attachid>
    <who name="Mikhail Naganov">mnaganov</who>
    <bug_when>2011-03-05 07:20:08 -0800</bug_when>
    <thetext>Created attachment 84864
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>362949</commentid>
    <comment_count>2</comment_count>
      <attachid>84864</attachid>
    <who name="Alexander Pavlov (apavlov)">apavlov</who>
    <bug_when>2011-03-05 07:27:32 -0800</bug_when>
    <thetext>Comment on attachment 84864
patch

View in context: https://bugs.webkit.org/attachment.cgi?id=84864&amp;action=review

&gt; Source/WebCore/inspector/front-end/ProfilesPanel.js:475
&gt; +            if (!Preferences.detailedHeapProfiles

We do not break lines in this way - everything should be on the same line

&gt; Source/WebCore/inspector/front-end/ProfilesPanel.js:727
&gt; +        setTimeout(HideHint, 2000);

function names are camelCase in WebKit</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>362957</commentid>
    <comment_count>3</comment_count>
      <attachid>84864</attachid>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2011-03-05 09:00:58 -0800</bug_when>
    <thetext>Comment on attachment 84864
patch

Looks good except for Alexander&apos;s comment. Also, could you factor out this shortcut handler as a separate method parametrized with the easter egg phrase?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>362962</commentid>
    <comment_count>4</comment_count>
    <who name="Mikhail Naganov">mnaganov</who>
    <bug_when>2011-03-05 09:33:24 -0800</bug_when>
    <thetext>(In reply to comment #2)
&gt; (From update of attachment 84864 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=84864&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/inspector/front-end/ProfilesPanel.js:475
&gt; &gt; +            if (!Preferences.detailedHeapProfiles
&gt; 
&gt; We do not break lines in this way - everything should be on the same line
&gt; 

Fixed.

&gt; &gt; Source/WebCore/inspector/front-end/ProfilesPanel.js:727
&gt; &gt; +        setTimeout(HideHint, 2000);
&gt; 
&gt; function names are camelCase in WebKit

Fixed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>362963</commentid>
    <comment_count>5</comment_count>
    <who name="Mikhail Naganov">mnaganov</who>
    <bug_when>2011-03-05 09:34:40 -0800</bug_when>
    <thetext>(In reply to comment #3)
&gt; (From update of attachment 84864 [details])
&gt; Looks good except for Alexander&apos;s comment. Also, could you factor out this shortcut handler as a separate method parametrized with the easter egg phrase?

I&apos;ve factored it out, but left it as ProfilesPanel method. But it&apos;s now easy to extract the method to any other common class.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>362966</commentid>
    <comment_count>6</comment_count>
    <who name="Mikhail Naganov">mnaganov</who>
    <bug_when>2011-03-05 09:41:22 -0800</bug_when>
    <thetext>Manually committed as http://trac.webkit.org/changeset/80425

2011-03-05  Mikhail Naganov  &lt;mnaganov@chromium.org&gt;

        Reviewed by Pavel Feldman.

        Web Inspector: [Chromium] Allow dynamic enabling of detailed heap profiles.
        https://bugs.webkit.org/show_bug.cgi?id=55824

        Detailed heap profiles can be now enabled by typing &quot;leakz&quot; in Profiles tab.

        * inspector/front-end/DetailedHeapshotView.js:
        (WebInspector.DetailedHeapshotView.prototype.isDetailedSnapshot):
        * inspector/front-end/ProfilesPanel.js:
        (WebInspector.ProfilesPanel.prototype._finishHeapSnapshot.doParse):
        (WebInspector.ProfilesPanel.prototype._finishHeapSnapshot):
        (WebInspector.ProfilesPanel.prototype._reportHeapSnapshotProgress):
        (WebInspector.ProfilesPanel.prototype.handleShortcut):
        (WebInspector.ProfilesPanel.prototype._displayDetailedHeapProfilesEnabledHint.hideHint):
        (WebInspector.ProfilesPanel.prototype._displayDetailedHeapProfilesEnabledHint):
        (WebInspector.ProfilesPanel.prototype._enableDetailedHeapProfiles):
        (WebInspector.ProfilesPanel.prototype._recognizeKeyboardCombo):</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>84864</attachid>
            <date>2011-03-05 07:20:08 -0800</date>
            <delta_ts>2011-03-05 09:00:58 -0800</delta_ts>
            <desc>patch</desc>
            <filename>patch-55824</filename>
            <type>text/plain</type>
            <size>5164</size>
            <attacher name="Mikhail Naganov">mnaganov</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA4NTBiMzUxLi42ZGEwYTJlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjMg
QEAKKzIwMTEtMDMtMDUgIE1pa2hhaWwgTmFnYW5vdiAgPG1uYWdhbm92QGNocm9taXVtLm9yZz4K
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBXZWIgSW5z
cGVjdG9yOiBbQ2hyb21pdW1dIEFsbG93IGR5bmFtaWMgZW5hYmxpbmcgb2YgZGV0YWlsZWQgaGVh
cCBwcm9maWxlcy4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTU1ODI0CisKKyAgICAgICAgRGV0YWlsZWQgaGVhcCBwcm9maWxlcyBjYW4gYmUgbm93IGVu
YWJsZWQgYnkgdHlwaW5nICJsZWFreiIgaW4gUHJvZmlsZXMgdGFiLgorCisgICAgICAgICogaW5z
cGVjdG9yL2Zyb250LWVuZC9EZXRhaWxlZEhlYXBzaG90Vmlldy5qczoKKyAgICAgICAgKFdlYklu
c3BlY3Rvci5EZXRhaWxlZEhlYXBzaG90Vmlldy5wcm90b3R5cGUuaXNEZXRhaWxlZFNuYXBzaG90
KToKKyAgICAgICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5kL1Byb2ZpbGVzUGFuZWwuanM6CisgICAg
ICAgIChXZWJJbnNwZWN0b3IuUHJvZmlsZXNQYW5lbC5wcm90b3R5cGUuX2ZpbmlzaEhlYXBTbmFw
c2hvdC5kb1BhcnNlKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5Qcm9maWxlc1BhbmVsLnByb3Rv
dHlwZS5fZmluaXNoSGVhcFNuYXBzaG90KToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5Qcm9maWxl
c1BhbmVsLnByb3RvdHlwZS5fcmVwb3J0SGVhcFNuYXBzaG90UHJvZ3Jlc3MpOgorICAgICAgICAo
V2ViSW5zcGVjdG9yLlByb2ZpbGVzUGFuZWwucHJvdG90eXBlLmhhbmRsZVNob3J0Y3V0KToKKyAg
ICAgICAgKFdlYkluc3BlY3Rvci5Qcm9maWxlc1BhbmVsLnByb3RvdHlwZS5fZGlzcGxheURldGFp
bGVkSGVhcFByb2ZpbGVzRW5hYmxlZEhpbnQuSGlkZUhpbnQpOgorICAgICAgICAoV2ViSW5zcGVj
dG9yLlByb2ZpbGVzUGFuZWwucHJvdG90eXBlLl9kaXNwbGF5RGV0YWlsZWRIZWFwUHJvZmlsZXNF
bmFibGVkSGludCk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuUHJvZmlsZXNQYW5lbC5wcm90b3R5
cGUuX2VuYWJsZURldGFpbGVkSGVhcFByb2ZpbGVzKToKKwogMjAxMS0wMy0wNSAgQWRhbSBCYXJ0
aCAgPGFiYXJ0aEB3ZWJraXQub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IERpbWl0cmkgR2xh
emtvdi4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvRGV0
YWlsZWRIZWFwc2hvdFZpZXcuanMgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5k
L0RldGFpbGVkSGVhcHNob3RWaWV3LmpzCmluZGV4IDlmNTFhNGYuLmZmY2UxZGQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvRGV0YWlsZWRIZWFwc2hvdFZp
ZXcuanMKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9EZXRhaWxlZEhl
YXBzaG90Vmlldy5qcwpAQCAtNjk3LDYgKzY5NywxNSBAQCBXZWJJbnNwZWN0b3IuRGV0YWlsZWRI
ZWFwc2hvdFZpZXcucHJvdG90eXBlID0gewogICAgICAgICBXZWJJbnNwZWN0b3IucGFuZWxzLnBy
b2ZpbGVzLmxvYWRIZWFwU25hcHNob3QocHJvZmlsZVVpZCwgY2FsbGJhY2spOwogICAgIH0sCiAK
KyAgICBpc0RldGFpbGVkU25hcHNob3Q6IGZ1bmN0aW9uKHNuYXBzaG90KQorICAgIHsKKyAgICAg
ICAgdmFyIHMgPSBuZXcgV2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hvdChzbmFwc2hvdCk7CisgICAg
ICAgIGZvciAodmFyIGl0ZXIgPSBzLnJvb3ROb2RlLmVkZ2VzOyBpdGVyLmhhc05leHQoKTsgaXRl
ci5uZXh0KCkpCisgICAgICAgICAgICBpZiAoaXRlci5lZGdlLm5vZGUubmFtZSA9PT0gIihHQyBy
b290cykiKQorICAgICAgICAgICAgICAgIHJldHVybiB0cnVlOworICAgICAgICByZXR1cm4gZmFs
c2U7CisgICAgfSwKKwogICAgIHByb2Nlc3NMb2FkZWRTbmFwc2hvdDogZnVuY3Rpb24ocHJvZmls
ZSwgc25hcHNob3QpCiAgICAgewogICAgICAgICBwcm9maWxlLm5vZGVzID0gc25hcHNob3Qubm9k
ZXM7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1Byb2Zp
bGVzUGFuZWwuanMgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1Byb2ZpbGVz
UGFuZWwuanMKaW5kZXggNTk0MGRkMC4uMzk2YjcwNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvaW5zcGVjdG9yL2Zyb250LWVuZC9Qcm9maWxlc1BhbmVsLmpzCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2luc3BlY3Rvci9mcm9udC1lbmQvUHJvZmlsZXNQYW5lbC5qcwpAQCAtNDcxLDYgKzQ3MSwx
MyBAQCBXZWJJbnNwZWN0b3IuUHJvZmlsZXNQYW5lbC5wcm90b3R5cGUgPSB7CiAgICAgICAgICAg
ICBkZWxldGUgcHJvZmlsZS5faXNfbG9hZGluZzsKICAgICAgICAgICAgIHByb2ZpbGUuX2xvYWRl
ZCA9IHRydWU7CiAgICAgICAgICAgICBwcm9maWxlLnNpZGVCYXJFbGVtZW50LnN1YnRpdGxlID0g
IiI7CisKKyAgICAgICAgICAgIGlmICghUHJlZmVyZW5jZXMuZGV0YWlsZWRIZWFwUHJvZmlsZXMK
KyAgICAgICAgICAgICAgICAmJiBXZWJJbnNwZWN0b3IuRGV0YWlsZWRIZWFwc2hvdFZpZXcucHJv
dG90eXBlLmlzRGV0YWlsZWRTbmFwc2hvdChsb2FkZWRTbmFwc2hvdCkpIHsKKyAgICAgICAgICAg
ICAgICBXZWJJbnNwZWN0b3IucGFuZWxzLnByb2ZpbGVzLl9lbmFibGVEZXRhaWxlZEhlYXBQcm9m
aWxlcyhmYWxzZSk7CisgICAgICAgICAgICAgICAgcmV0dXJuOworICAgICAgICAgICAgfQorCiAg
ICAgICAgICAgICBpZiAoIVByZWZlcmVuY2VzLmRldGFpbGVkSGVhcFByb2ZpbGVzKQogICAgICAg
ICAgICAgICAgIFdlYkluc3BlY3Rvci5IZWFwU25hcHNob3RWaWV3LnByb3RvdHlwZS5wcm9jZXNz
TG9hZGVkU25hcHNob3QocHJvZmlsZSwgbG9hZGVkU25hcHNob3QpOwogICAgICAgICAgICAgZWxz
ZQpAQCAtNjg0LDYgKzY5MSw1NSBAQCBXZWJJbnNwZWN0b3IuUHJvZmlsZXNQYW5lbC5wcm90b3R5
cGUgPSB7CiAgICAgICAgICAgICBpZiAoZG9uZSA+PSB0b3RhbCkKICAgICAgICAgICAgICAgICB0
aGlzLl9yZW1vdmVQcm9maWxlSGVhZGVyKHRoaXMuX3RlbXBvcmFyeVRha2luZ1NuYXBzaG90KTsK
ICAgICAgICAgfQorICAgIH0sCisKKyAgICBoYW5kbGVTaG9ydGN1dDogZnVuY3Rpb24oZXZlbnQp
CisgICAgeworICAgICAgICBpZiAoIVByZWZlcmVuY2VzLmhlYXBQcm9maWxlclByZXNlbnQgfHwg
UHJlZmVyZW5jZXMuZGV0YWlsZWRIZWFwUHJvZmlsZXMpCisgICAgICAgICAgICByZXR1cm47Cisg
ICAgICAgIHZhciBjb21ibyA9IFsiVSswMDRDIiwgIlUrMDA0NSIsICJVKzAwNDEiLCAiVSswMDRC
IiwgIlUrMDA1QSJdOyAgLy8gIkxFQUtaIgorICAgICAgICBpZiAoIXRoaXMuX2FjdGl2YXRlRGV0
YWlsZWRIZWFwUHJvZmlsZXMpIHsKKyAgICAgICAgICAgIGlmIChldmVudC5rZXlJZGVudGlmaWVy
ID09PSBjb21ib1swXSkKKyAgICAgICAgICAgICAgICB0aGlzLl9hY3RpdmF0ZURldGFpbGVkSGVh
cFByb2ZpbGVzID0gMTsKKyAgICAgICAgfSBlbHNlIGlmIChldmVudC5rZXlJZGVudGlmaWVyID09
PSBjb21ib1t0aGlzLl9hY3RpdmF0ZURldGFpbGVkSGVhcFByb2ZpbGVzXSkgeworICAgICAgICAg
ICAgaWYgKCsrdGhpcy5fYWN0aXZhdGVEZXRhaWxlZEhlYXBQcm9maWxlcyA9PT0gY29tYm8ubGVu
Z3RoKSB7CisgICAgICAgICAgICAgICAgdGhpcy5fZGlzcGxheURldGFpbGVkSGVhcFByb2ZpbGVz
RW5hYmxlZEhpbnQoKTsgICAgICAgICAgCisgICAgICAgICAgICAgICAgdGhpcy5fZW5hYmxlRGV0
YWlsZWRIZWFwUHJvZmlsZXModHJ1ZSk7CisgICAgICAgICAgICB9CisgICAgICAgIH0gZWxzZQor
ICAgICAgICAgICAgZGVsZXRlIHRoaXMuX2FjdGl2YXRlRGV0YWlsZWRIZWFwUHJvZmlsZXM7Cisg
ICAgICAgIGlmICh0aGlzLl9hY3RpdmF0ZURldGFpbGVkSGVhcFByb2ZpbGVzKQorICAgICAgICAg
ICAgZXZlbnQuaGFuZGxlZCA9IHRydWU7CisgICAgfSwKKyAgICAKKyAgICBfZGlzcGxheURldGFp
bGVkSGVhcFByb2ZpbGVzRW5hYmxlZEhpbnQ6IGZ1bmN0aW9uKCkKKyAgICB7CisgICAgICAgIHZh
ciBtZXNzYWdlID0gbmV3IFdlYkluc3BlY3Rvci5IZWxwU2NyZWVuKCJDb25ncmF0dWxhdGlvbnMh
Iik7CisgICAgICAgIG1lc3NhZ2UuY29udGVudEVsZW1lbnQuYWRkU3R5bGVDbGFzcygiaGVscC10
YWJsZSIpOworICAgICAgICBtZXNzYWdlLmNvbnRlbnRFbGVtZW50LnRleHRDb250ZW50ID0gIkRl
dGFpbGVkIEhlYXAgc25hcHNob3RzIGFyZSBub3cgZW5hYmxlZC4iOworICAgICAgICBtZXNzYWdl
LnNob3coKTsKKworICAgICAgICBmdW5jdGlvbiBIaWRlSGludCgpCisgICAgICAgIHsKKyAgICAg
ICAgICAgIG1lc3NhZ2UuX2hpZGUoKTsKKyAgICAgICAgfQorCisgICAgICAgIHNldFRpbWVvdXQo
SGlkZUhpbnQsIDIwMDApOworICAgIH0sCisKKyAgICBfZW5hYmxlRGV0YWlsZWRIZWFwUHJvZmls
ZXM6IGZ1bmN0aW9uKHJlc2V0QWdlbnQpCisgICAgeworICAgICAgICBpZiAocmVzZXRBZ2VudCkK
KyAgICAgICAgICAgIHRoaXMuX2NsZWFyUHJvZmlsZXMoKTsKKyAgICAgICAgZWxzZQorICAgICAg
ICAgICAgdGhpcy5fcmVzZXQoKTsKKyAgICAgICAgdmFyIG9sZFByb2ZpbGVUeXBlID0gdGhpcy5f
cHJvZmlsZVR5cGVzQnlJZE1hcFtXZWJJbnNwZWN0b3IuSGVhcFNuYXBzaG90UHJvZmlsZVR5cGUu
VHlwZUlkXTsKKyAgICAgICAgdmFyIHByb2ZpbGVUeXBlID0gbmV3IFdlYkluc3BlY3Rvci5EZXRh
aWxlZEhlYXBzaG90UHJvZmlsZVR5cGUoKTsKKyAgICAgICAgcHJvZmlsZVR5cGUudHJlZUVsZW1l
bnQgPSBvbGRQcm9maWxlVHlwZS50cmVlRWxlbWVudDsKKyAgICAgICAgdGhpcy5fcHJvZmlsZVR5
cGVzQnlJZE1hcFtwcm9maWxlVHlwZS5pZF0gPSBwcm9maWxlVHlwZTsKKyAgICAgICAgUHJlZmVy
ZW5jZXMuZGV0YWlsZWRIZWFwUHJvZmlsZXMgPSB0cnVlOworICAgICAgICB0aGlzLmhpZGUoKTsK
KyAgICAgICAgdGhpcy5zaG93KCk7CiAgICAgfQogfQogCg==
</data>
<flag name="review"
          id="76904"
          type_id="1"
          status="+"
          setter="pfeldman"
    />
    <flag name="commit-queue"
          id="76905"
          type_id="3"
          status="-"
          setter="mnaganov"
    />
          </attachment>
      

    </bug>

</bugzilla>