<?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>30663</bug_id>
          
          <creation_ts>2009-10-21 23:20:24 -0700</creation_ts>
          <short_desc>Web Inspector: windowFocused and windowBlured Fail to Clear/Mark Inspector as &quot;inactive&quot;</short_desc>
          <delta_ts>2009-10-22 14:09:31 -0700</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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Joseph Pecoraro">joepeck</reporter>
          <assigned_to name="Joseph Pecoraro">joepeck</assigned_to>
          <cc>aroben</cc>
    
    <cc>bweinstein</cc>
    
    <cc>joepeck</cc>
    
    <cc>pfeldman</cc>
    
    <cc>rik</cc>
    
    <cc>timothy</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>156797</commentid>
    <comment_count>0</comment_count>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2009-10-21 23:20:24 -0700</bug_when>
    <thetext>The style class &quot;inactive&quot; is not getting added to the body. It is used numerous times in the CSS.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>156800</commentid>
    <comment_count>1</comment_count>
      <attachid>41639</attachid>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2009-10-21 23:24:21 -0700</bug_when>
    <thetext>Created attachment 41639
[PATCH] Check document.defaultView

The events are registered on a doc.defaultView:

  doc.defaultView.addEventListener(&quot;focus&quot;, this.windowFocused.bind(this), true);
  doc.defaultView.addEventListener(&quot;blur&quot;, this.windowBlured.bind(this), true);

The doc.defaultView is a DOMWindow. Old behavior always fails:

  if (event.target.nodeType === Node.DOCUMENT_NODE)

New behavior tests against the defaultView:

  if (event.target === document.defaultView)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>156801</commentid>
    <comment_count>2</comment_count>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2009-10-21 23:38:14 -0700</bug_when>
    <thetext>NOTE TO SELF: the function should be renamed to &quot;windowBlurred&quot; to fix the typo.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>156882</commentid>
    <comment_count>3</comment_count>
      <attachid>41639</attachid>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2009-10-22 07:41:14 -0700</bug_when>
    <thetext>Comment on attachment 41639
[PATCH] Check document.defaultView

Fix the Reviewed by :P.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>156886</commentid>
    <comment_count>4</comment_count>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2009-10-22 08:29:31 -0700</bug_when>
    <thetext>Landed in http://trac.webkit.org/changeset/49939
r49939 = 4a2c682da0e4de665ca85ef024415a8bdaf830b0</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>156898</commentid>
    <comment_count>5</comment_count>
      <attachid>41639</attachid>
    <who name="Timothy Hatcher">timothy</who>
    <bug_when>2009-10-22 08:56:01 -0700</bug_when>
    <thetext>Comment on attachment 41639
[PATCH] Check document.defaultView

The WebInspector.windowFocused and WebInspector.windowBlured functions are registered on iframes too.

So this will break break for iframes. Try clicking in a Resource source frame, the Inspector should not become &quot;inactive&quot; then.

SourceFrame.js _loaded calls:

        WebInspector.addMainEventListeners(this.element.contentDocument);</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>156899</commentid>
    <comment_count>6</comment_count>
    <who name="Timothy Hatcher">timothy</who>
    <bug_when>2009-10-22 08:57:02 -0700</bug_when>
    <thetext>Maybe you were seeing it fire twice because you were testing with a source frame?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>156995</commentid>
    <comment_count>7</comment_count>
      <attachid>41680</attachid>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2009-10-22 13:35:58 -0700</bug_when>
    <thetext>Created attachment 41680
[PATCH] Handle Focus/Blur of inner &lt;iframe&gt;s

Because focus/blur do not tell you _what_ they are focusing on there has to be a bit of co-dependence between the focus/blur:

- Blur runs first, if you&apos;re blurring any inner document, always add &quot;inactive&quot;
- Focus runs next, if you&apos;re focusing on any inner document, remove &quot;inactive&quot;

Changing useCapture to false no longer fires duplicate blur/focus events.  This was happening when clicking a toolbar (when they were in their :active state). Could be a bug in itself, and may require some investigation.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>156997</commentid>
    <comment_count>8</comment_count>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2009-10-22 13:39:22 -0700</bug_when>
    <thetext>(In reply to comment #7)
&gt; Changing useCapture to false no longer fires duplicate blur/focus events.

Oh, this also makes it so event.target is what we expect it to be (doc.defaultView a DOMWindow) so the following should never blow up with an undefined for document:

  event.target.document.nodeType</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>157006</commentid>
    <comment_count>9</comment_count>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2009-10-22 14:09:31 -0700</bug_when>
    <thetext>Landed Second Patch in http://trac.webkit.org/changeset/49956
r49956 = 3ba0b1d4a6414ecd8dc61d94fe35153b36c04eae</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>41639</attachid>
            <date>2009-10-21 23:24:21 -0700</date>
            <delta_ts>2009-10-22 13:35:58 -0700</delta_ts>
            <desc>[PATCH] Check document.defaultView</desc>
            <filename>blur.patch</filename>
            <type>text/plain</type>
            <size>1314</size>
            <attacher name="Joseph Pecoraro">joepeck</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
MmRlYWI0YS4uNTBmNDgxMSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAwOS0xMC0yMSAgSm9zZXBoIFBlY29y
YXJvICA8am9lcGVja0B3ZWJraXQub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IFRpbW90aHkg
SGF0Y2hlci4KKworICAgICAgICBXZWIgSW5zcGVjdG9yOiB3aW5kb3dGb2N1c2VkIGFuZCB3aW5k
b3dCbHVyZWQgRmFpbCB0byBDbGVhci9NYXJrIEluc3BlY3RvciBhcyAiaW5hY3RpdmUiCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zMDY2MworCisgICAg
ICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9pbnNwZWN0b3IuanM6CisgICAgICAgIChXZWJJbnNw
ZWN0b3Iud2luZG93Rm9jdXNlZCk6CisgICAgICAgIChXZWJJbnNwZWN0b3Iud2luZG93Qmx1cmVk
KToKKwogMjAwOS0xMC0yMCAgSm9zZXBoIFBlY29yYXJvICA8am9lcGVja0B3ZWJraXQub3JnPgog
CiAgICAgICAgIFJldmlld2VkIGJ5IFRpbW90aHkgSGF0Y2hlci4KZGlmZiAtLWdpdCBhL1dlYkNv
cmUvaW5zcGVjdG9yL2Zyb250LWVuZC9pbnNwZWN0b3IuanMgYi9XZWJDb3JlL2luc3BlY3Rvci9m
cm9udC1lbmQvaW5zcGVjdG9yLmpzCmluZGV4IDE3YjAyYTEuLjlhMTI0MGMgMTAwNjQ0Ci0tLSBh
L1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9pbnNwZWN0b3IuanMKKysrIGIvV2ViQ29yZS9p
bnNwZWN0b3IvZnJvbnQtZW5kL2luc3BlY3Rvci5qcwpAQCAtNTExLDEzICs1MTEsMTMgQEAgV2Vi
SW5zcGVjdG9yLndpbmRvd1Jlc2l6ZSA9IGZ1bmN0aW9uKGV2ZW50KQogCiBXZWJJbnNwZWN0b3Iu
d2luZG93Rm9jdXNlZCA9IGZ1bmN0aW9uKGV2ZW50KQogewotICAgIGlmIChldmVudC50YXJnZXQu
bm9kZVR5cGUgPT09IE5vZGUuRE9DVU1FTlRfTk9ERSkKKyAgICBpZiAoZXZlbnQudGFyZ2V0ID09
PSBkb2N1bWVudC5kZWZhdWx0VmlldykKICAgICAgICAgZG9jdW1lbnQuYm9keS5yZW1vdmVTdHls
ZUNsYXNzKCJpbmFjdGl2ZSIpOwogfQogCiBXZWJJbnNwZWN0b3Iud2luZG93Qmx1cmVkID0gZnVu
Y3Rpb24oZXZlbnQpCiB7Ci0gICAgaWYgKGV2ZW50LnRhcmdldC5ub2RlVHlwZSA9PT0gTm9kZS5E
T0NVTUVOVF9OT0RFKQorICAgIGlmIChldmVudC50YXJnZXQgPT09IGRvY3VtZW50LmRlZmF1bHRW
aWV3KQogICAgICAgICBkb2N1bWVudC5ib2R5LmFkZFN0eWxlQ2xhc3MoImluYWN0aXZlIik7CiB9
CiAK
</data>
<flag name="review"
          id="23066"
          type_id="1"
          status="+"
          setter="pfeldman"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>41680</attachid>
            <date>2009-10-22 13:35:58 -0700</date>
            <delta_ts>2009-10-22 13:57:18 -0700</delta_ts>
            <desc>[PATCH] Handle Focus/Blur of inner &lt;iframe&gt;s</desc>
            <filename>handle_iframes.patch</filename>
            <type>text/plain</type>
            <size>2495</size>
            <attacher name="Joseph Pecoraro">joepeck</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
Y2UzNDk5My4uYWViODViYSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNyBAQAorMjAwOS0xMC0yMiAgSm9zZXBoIFBlY29y
YXJvICA8am9lcGVja0B3ZWJraXQub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIFdlYiBJbnNwZWN0b3I6IHdpbmRvd0ZvY3VzZWQgYW5kIHdpbmRv
d0JsdXJlZCBGYWlsIHRvIENsZWFyL01hcmsgSW5zcGVjdG9yIGFzICJpbmFjdGl2ZSIKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTMwNjYzCisKKyAgICAg
ICAgICBDb3JyZWN0bHkgaGFuZGxlIGZvY3VzaW5nL2JsdXJyaW5nIG9uIGlubmVyIDxpZnJhbWU+
J3Mgc3VjaCBhcyBTb3VyY2UgRnJhbWVzLgorCisgICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVu
ZC9pbnNwZWN0b3IuanM6CisgICAgICAgIChXZWJJbnNwZWN0b3Iud2luZG93Rm9jdXNlZCk6IGZp
eCBmb3IgaW5uZXIgaWZyYW1lcworICAgICAgICAoV2ViSW5zcGVjdG9yLndpbmRvd0JsdXJyZWQp
OiBmaXggZm9yIGlubmVyIGlmcmFtZXMKKyAgICAgICAgKFdlYkluc3BlY3Rvci5hZGRNYWluRXZl
bnRMaXN0ZW5lcnMpOiBjaGFuZ2UgdXNlQ2FwdHVyZSB0byBmYWxzZQorCiAyMDA5LTEwLTIxICBK
b3NlcGggUGVjb3Jhcm8gIDxqb2VwZWNrQHdlYmtpdC5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQg
YnkgUGF2ZWwgRmVsZG1hbi4KZGlmZiAtLWdpdCBhL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVu
ZC9pbnNwZWN0b3IuanMgYi9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvaW5zcGVjdG9yLmpz
CmluZGV4IGY1MWYzMWIuLmE1NmJlOTIgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvaW5zcGVjdG9yL2Zy
b250LWVuZC9pbnNwZWN0b3IuanMKKysrIGIvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL2lu
c3BlY3Rvci5qcwpAQCAtNTExLDEzICs1MTEsMTkgQEAgV2ViSW5zcGVjdG9yLndpbmRvd1Jlc2l6
ZSA9IGZ1bmN0aW9uKGV2ZW50KQogCiBXZWJJbnNwZWN0b3Iud2luZG93Rm9jdXNlZCA9IGZ1bmN0
aW9uKGV2ZW50KQogewotICAgIGlmIChldmVudC50YXJnZXQgPT09IGRvY3VtZW50LmRlZmF1bHRW
aWV3KQorICAgIC8vIEZpcmVzIGFmdGVyIGJsdXIsIHNvIHdoZW4gZm9jdXNpbmcgb24gZWl0aGVy
IHRoZSBtYWluIGluc3BlY3RvcgorICAgIC8vIG9yIGFuIDxpZnJhbWU+IHdpdGhpbiB0aGUgaW5z
cGVjdG9yIHdlIHNob3VsZCBhbHdheXMgcmVtb3ZlIHRoZQorICAgIC8vICJpbmFjdGl2ZSIgY2xh
c3MuCisgICAgaWYgKGV2ZW50LnRhcmdldC5kb2N1bWVudC5ub2RlVHlwZSA9PT0gTm9kZS5ET0NV
TUVOVF9OT0RFKQogICAgICAgICBkb2N1bWVudC5ib2R5LnJlbW92ZVN0eWxlQ2xhc3MoImluYWN0
aXZlIik7CiB9CiAKIFdlYkluc3BlY3Rvci53aW5kb3dCbHVycmVkID0gZnVuY3Rpb24oZXZlbnQp
CiB7Ci0gICAgaWYgKGV2ZW50LnRhcmdldCA9PT0gZG9jdW1lbnQuZGVmYXVsdFZpZXcpCisgICAg
Ly8gTGVhdmluZyB0aGUgbWFpbiBpbnNwZWN0b3Igb3IgYW4gPGlmcmFtZT4gd2l0aGluIHRoZSBp
bnNwZWN0b3IuCisgICAgLy8gV2UgY2FuIGFkZCAiaW5hY3RpdmUiIG5vdywgYW5kIGlmIHdlIGFy
ZSBtb3ZpbmcgdGhlIGZvY3VzIHRvIGFub3RoZXIKKyAgICAvLyBwYXJ0IG9mIHRoZSBpbnNwZWN0
b3IgdGhlbiB3aW5kb3dGb2N1c2VkIHdpbGwgY29ycmVjdCB0aGlzLgorICAgIGlmIChldmVudC50
YXJnZXQuZG9jdW1lbnQubm9kZVR5cGUgPT09IE5vZGUuRE9DVU1FTlRfTk9ERSkKICAgICAgICAg
ZG9jdW1lbnQuYm9keS5hZGRTdHlsZUNsYXNzKCJpbmFjdGl2ZSIpOwogfQogCkBAIC0xNDIzLDgg
KzE0MjksOCBAQCBXZWJJbnNwZWN0b3IubGlua2lmeVVSTCA9IGZ1bmN0aW9uKHVybCwgbGlua1Rl
eHQsIGNsYXNzZXMsIGlzRXh0ZXJuYWwpCiAKIFdlYkluc3BlY3Rvci5hZGRNYWluRXZlbnRMaXN0
ZW5lcnMgPSBmdW5jdGlvbihkb2MpCiB7Ci0gICAgZG9jLmRlZmF1bHRWaWV3LmFkZEV2ZW50TGlz
dGVuZXIoImZvY3VzIiwgdGhpcy53aW5kb3dGb2N1c2VkLmJpbmQodGhpcyksIHRydWUpOwotICAg
IGRvYy5kZWZhdWx0Vmlldy5hZGRFdmVudExpc3RlbmVyKCJibHVyIiwgdGhpcy53aW5kb3dCbHVy
cmVkLmJpbmQodGhpcyksIHRydWUpOworICAgIGRvYy5kZWZhdWx0Vmlldy5hZGRFdmVudExpc3Rl
bmVyKCJmb2N1cyIsIHRoaXMud2luZG93Rm9jdXNlZC5iaW5kKHRoaXMpLCBmYWxzZSk7CisgICAg
ZG9jLmRlZmF1bHRWaWV3LmFkZEV2ZW50TGlzdGVuZXIoImJsdXIiLCB0aGlzLndpbmRvd0JsdXJy
ZWQuYmluZCh0aGlzKSwgZmFsc2UpOwogICAgIGRvYy5hZGRFdmVudExpc3RlbmVyKCJjbGljayIs
IHRoaXMuZG9jdW1lbnRDbGljay5iaW5kKHRoaXMpLCB0cnVlKTsKIH0KIAo=
</data>
<flag name="review"
          id="23120"
          type_id="1"
          status="+"
          setter="timothy"
    />
          </attachment>
      

    </bug>

</bugzilla>