<?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>27171</bug_id>
          
          <creation_ts>2009-07-10 19:56:31 -0700</creation_ts>
          <short_desc>[Gtk] REGRESSION (r45440): fails at fast/events/frame-programmatic-focus.html</short_desc>
          <delta_ts>2009-07-13 03:12:21 -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>WebKitGTK</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>Gtk</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Jan Alonzo">jmalonzo</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>131052</commentid>
    <comment_count>0</comment_count>
    <who name="Jan Alonzo">jmalonzo</who>
    <bug_when>2009-07-10 19:56:31 -0700</bug_when>
    <thetext>Changeset: http://trac.webkit.org/changeset/45440

Test: fast/events/frame-programmatic-focus.html

Test diff:
 &lt;input&gt; focused
 &lt;input&gt; blurred
 main frame blurred
-iframe focused
 &lt;input&gt; in iframe focused
 &lt;input&gt; in frame blurred
 iframe blurred
-main frame focused
 &lt;input&gt; focused

The fix in http://trac.webkit.org/changeset/45470 is incomplete. focus-in and focus-out events seem to only happen when there&apos;s user interaction.

The fix is to implement grab_focus in the WebView as well so it will work when focus is set programmatically.

Patch coming...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>131054</commentid>
    <comment_count>1</comment_count>
      <attachid>32605</attachid>
    <who name="Jan Alonzo">jmalonzo</who>
    <bug_when>2009-07-10 20:04:39 -0700</bug_when>
    <thetext>Created attachment 32605
implement grab-focus</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>131168</commentid>
    <comment_count>2</comment_count>
      <attachid>32605</attachid>
    <who name="Gustavo Noronha (kov)">gustavo</who>
    <bug_when>2009-07-12 04:40:57 -0700</bug_when>
    <thetext>Comment on attachment 32605
implement grab-focus

&gt; -        core(webView)-&gt;focusController()-&gt;setActive(frame);
&gt; -        core(webView)-&gt;focusController()-&gt;setFocused(true);
&gt; +        focusController-&gt;setActive(true);
&gt; +        focusController-&gt;setFocused(true);

The only change that makes me a bit nervous is going from frame to true here. I believe there might have been a reason to not set it unconditionally? r=me, but please either revert this specific change, or add a comment here on the bug so that we have a way of tracking this down.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>131287</commentid>
    <comment_count>3</comment_count>
    <who name="Jan Alonzo">jmalonzo</who>
    <bug_when>2009-07-13 03:12:21 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; (From update of attachment 32605 [details])
&gt; &gt; -        core(webView)-&gt;focusController()-&gt;setActive(frame);
&gt; &gt; -        core(webView)-&gt;focusController()-&gt;setFocused(true);
&gt; &gt; +        focusController-&gt;setActive(true);
&gt; &gt; +        focusController-&gt;setFocused(true);
&gt; 
&gt; The only change that makes me a bit nervous is going from frame to true here. I
&gt; believe there might have been a reason to not set it unconditionally? r=me, but
&gt; please either revert this specific change, or add a comment here on the bug so
&gt; that we have a way of tracking this down.

Thanks. I reverted the change and landed it in http://trac.webkit.org/changeset/45802.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>32605</attachid>
            <date>2009-07-10 20:04:39 -0700</date>
            <delta_ts>2009-07-12 04:40:57 -0700</delta_ts>
            <desc>implement grab-focus</desc>
            <filename>programmaticfocus.patch</filename>
            <type>text/plain</type>
            <size>3196</size>
            <attacher name="Jan Alonzo">jmalonzo</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYktpdC9ndGsvQ2hhbmdlTG9nIGIvV2ViS2l0L2d0ay9DaGFuZ2VMb2cK
aW5kZXggNGMzMjk5Yy4uZWYxMDUwOCAxMDA2NDQKLS0tIGEvV2ViS2l0L2d0ay9DaGFuZ2VMb2cK
KysrIGIvV2ViS2l0L2d0ay9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMSBAQAorMjAwOS0wNy0xMCAg
SmFuIE1pY2hhZWwgQWxvbnpvICA8am1hbG9uem9Ad2Via2l0Lm9yZz4KKworICAgICAgICA8aHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI3MTcxPiBbR3RrXQorICAgICAg
ICBSRUdSRVNTSU9OIChyNDU0NDApOiBmYWlscyBhdCBmYXN0L2V2ZW50cy9mcmFtZS1wcm9ncmFt
bWF0aWMtZm9jdXMuaHRtbAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIGZvY3VzLWluIGFuZCBmb2N1cy1vdXQgZXZlbnRzIG9ubHkgZ2V0IHRyaWdnZXJl
ZCB3aGVuIHRoZXJlJ3MgdXNlcgorICAgICAgICBpbnRlcmFjdGlvbiwgaGVuY2Ugc2V0Rm9jdXNl
ZChib29sKSBuZXZlciBnZXRzIGNhbGxlZCB3aGVuCisgICAgICAgIGZvY3VzRXZlbnQgaXMgdHJp
Z2dlcmVkIHdoZW4gcnVubmluZyB0aGUgbGF5b3V0IHRlc3RzLiBUaGUKKyAgICAgICAgc29sdXRp
b24gc2VlbXMgdG8gYmUgdG8gaW1wbGVtZW50IGdyYWItZm9jdXMgdG9vIHNvIHdlIGNhbiBjYWxs
CisgICAgICAgIHNldEZvY3VzZWQoYm9vbCkgd2hlbiBhIHdpZGdldCBoYXMgZm9jdXMuCisKKyAg
ICAgICAgKiB3ZWJraXQvd2Via2l0d2Vidmlldy5jcHA6CisgICAgICAgICh3ZWJraXRfd2ViX3Zp
ZXdfZ3JhYl9mb2N1cyk6CisgICAgICAgICh3ZWJraXRfd2ViX3ZpZXdfZm9jdXNfaW5fZXZlbnQp
OgorICAgICAgICAod2Via2l0X3dlYl92aWV3X2NsYXNzX2luaXQpOgorCiAyMDA5LTA3LTA5ICBC
ZXRoIERha2luIGFuZCBKb24gSG9uZXljdXR0IDxiZGFraW5AYXBwbGUuY29tPgogCiAgICAgICAg
IFJldmlld2VkIGJ5IERhdmUgSHlhdHQuCmRpZmYgLS1naXQgYS9XZWJLaXQvZ3RrL3dlYmtpdC93
ZWJraXR3ZWJ2aWV3LmNwcCBiL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnZpZXcuY3BwCmlu
ZGV4IGM1MDc1N2YuLjE4NDE3NTggMTAwNjQ0Ci0tLSBhL1dlYktpdC9ndGsvd2Via2l0L3dlYmtp
dHdlYnZpZXcuY3BwCisrKyBiL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnZpZXcuY3BwCkBA
IC01NTksNiArNTU5LDE3IEBAIHN0YXRpYyB2b2lkIHdlYmtpdF93ZWJfdmlld19zaXplX2FsbG9j
YXRlKEd0a1dpZGdldCogd2lkZ2V0LCBHdGtBbGxvY2F0aW9uKiBhbGxvCiAgICAgZnJhbWUtPnZp
ZXcoKS0+YWRqdXN0Vmlld1NpemUoKTsKIH0KIAorc3RhdGljIHZvaWQgd2Via2l0X3dlYl92aWV3
X2dyYWJfZm9jdXMoR3RrV2lkZ2V0KiB3aWRnZXQpCit7CisgICAgaWYgKEdUS19XSURHRVRfSVNf
U0VOU0lUSVZFKHdpZGdldCkpIHsKKyAgICAgICAgV2ViS2l0V2ViVmlldyogd2ViVmlldyA9IFdF
QktJVF9XRUJfVklFVyh3aWRnZXQpOworICAgICAgICBGb2N1c0NvbnRyb2xsZXIqIGZvY3VzQ29u
dHJvbGxlciA9IGNvcmUod2ViVmlldyktPmZvY3VzQ29udHJvbGxlcigpOworICAgICAgICBjb3Jl
KHdlYlZpZXcpLT5mb2N1c0NvbnRyb2xsZXIoKS0+c2V0Rm9jdXNlZCh0cnVlKTsKKyAgICB9CisK
KyAgICByZXR1cm4gR1RLX1dJREdFVF9DTEFTUyh3ZWJraXRfd2ViX3ZpZXdfcGFyZW50X2NsYXNz
KS0+Z3JhYl9mb2N1cyh3aWRnZXQpOworfQorCiBzdGF0aWMgZ2Jvb2xlYW4gd2Via2l0X3dlYl92
aWV3X2ZvY3VzX2luX2V2ZW50KEd0a1dpZGdldCogd2lkZ2V0LCBHZGtFdmVudEZvY3VzKiBldmVu
dCkKIHsKICAgICAvLyBUT0RPOiBJbXByb3ZlIGZvY3VzIGhhbmRsaW5nIGFzIHN1Z2dlc3RlZCBp
bgpAQCAtNTY2LDEwICs1NzcsMTAgQEAgc3RhdGljIGdib29sZWFuIHdlYmtpdF93ZWJfdmlld19m
b2N1c19pbl9ldmVudChHdGtXaWRnZXQqIHdpZGdldCwgR2RrRXZlbnRGb2N1cyoKICAgICBHdGtX
aWRnZXQqIHRvcGxldmVsID0gZ3RrX3dpZGdldF9nZXRfdG9wbGV2ZWwod2lkZ2V0KTsKICAgICBp
ZiAoR1RLX1dJREdFVF9UT1BMRVZFTCh0b3BsZXZlbCkgJiYgZ3RrX3dpbmRvd19oYXNfdG9wbGV2
ZWxfZm9jdXMoR1RLX1dJTkRPVyh0b3BsZXZlbCkpKSB7CiAgICAgICAgIFdlYktpdFdlYlZpZXcq
IHdlYlZpZXcgPSBXRUJLSVRfV0VCX1ZJRVcod2lkZ2V0KTsKKyAgICAgICAgRm9jdXNDb250cm9s
bGVyKiBmb2N1c0NvbnRyb2xsZXIgPSBjb3JlKHdlYlZpZXcpLT5mb2N1c0NvbnRyb2xsZXIoKTsK
IAotICAgICAgICBGcmFtZSogZnJhbWUgPSBjb3JlKHdlYlZpZXcpLT5tYWluRnJhbWUoKTsKLSAg
ICAgICAgY29yZSh3ZWJWaWV3KS0+Zm9jdXNDb250cm9sbGVyKCktPnNldEFjdGl2ZShmcmFtZSk7
Ci0gICAgICAgIGNvcmUod2ViVmlldyktPmZvY3VzQ29udHJvbGxlcigpLT5zZXRGb2N1c2VkKHRy
dWUpOworICAgICAgICBmb2N1c0NvbnRyb2xsZXItPnNldEFjdGl2ZSh0cnVlKTsKKyAgICAgICAg
Zm9jdXNDb250cm9sbGVyLT5zZXRGb2N1c2VkKHRydWUpOwogICAgIH0KICAgICByZXR1cm4gR1RL
X1dJREdFVF9DTEFTUyh3ZWJraXRfd2ViX3ZpZXdfcGFyZW50X2NsYXNzKS0+Zm9jdXNfaW5fZXZl
bnQod2lkZ2V0LCBldmVudCk7CiB9CkBAIC0xNzQ5LDYgKzE3NjAsNyBAQCBzdGF0aWMgdm9pZCB3
ZWJraXRfd2ViX3ZpZXdfY2xhc3NfaW5pdChXZWJLaXRXZWJWaWV3Q2xhc3MqIHdlYlZpZXdDbGFz
cykKICAgICB3aWRnZXRDbGFzcy0+c2Nyb2xsX2V2ZW50ID0gd2Via2l0X3dlYl92aWV3X3Njcm9s
bF9ldmVudDsKICAgICB3aWRnZXRDbGFzcy0+c2l6ZV9hbGxvY2F0ZSA9IHdlYmtpdF93ZWJfdmll
d19zaXplX2FsbG9jYXRlOwogICAgIHdpZGdldENsYXNzLT5wb3B1cF9tZW51ID0gd2Via2l0X3dl
Yl92aWV3X3BvcHVwX21lbnVfaGFuZGxlcjsKKyAgICB3aWRnZXRDbGFzcy0+Z3JhYl9mb2N1cyA9
IHdlYmtpdF93ZWJfdmlld19ncmFiX2ZvY3VzOwogICAgIHdpZGdldENsYXNzLT5mb2N1c19pbl9l
dmVudCA9IHdlYmtpdF93ZWJfdmlld19mb2N1c19pbl9ldmVudDsKICAgICB3aWRnZXRDbGFzcy0+
Zm9jdXNfb3V0X2V2ZW50ID0gd2Via2l0X3dlYl92aWV3X2ZvY3VzX291dF9ldmVudDsKICAgICB3
aWRnZXRDbGFzcy0+Z2V0X2FjY2Vzc2libGUgPSB3ZWJraXRfd2ViX3ZpZXdfZ2V0X2FjY2Vzc2li
bGU7Cg==
</data>
<flag name="review"
          id="17019"
          type_id="1"
          status="+"
          setter="gustavo"
    />
          </attachment>
      

    </bug>

</bugzilla>