<?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>52880</bug_id>
          
          <creation_ts>2011-01-21 03:17:42 -0800</creation_ts>
          <short_desc>[GTK] Implement PlatformKeyboardEvent::getCurrentModifierState()</short_desc>
          <delta_ts>2011-02-20 01:28:39 -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>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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Carlos Garcia Campos">cgarcia</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>kling</cc>
    
    <cc>mrobinson</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>337982</commentid>
    <comment_count>0</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2011-01-21 03:17:42 -0800</bug_when>
    <thetext>While working on bug #52878 I noticed that PlatformKeyboardEvent::getCurrentModifierState() is currently unimplemented in the gtk port. I don&apos;t know if any test is failing because of this, but it could be easily implemented.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>337984</commentid>
    <comment_count>1</comment_count>
      <attachid>79719</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2011-01-21 03:20:36 -0800</bug_when>
    <thetext>Created attachment 79719
Patch implementing getCurrentModifierState()</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>338632</commentid>
    <comment_count>2</comment_count>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2011-01-22 14:17:40 -0800</bug_when>
    <thetext>I grepped the entire source tree an only found implementations with no callers. Perhaps it makes more sense just to remove this method, as it appears to be dead code.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>338643</commentid>
    <comment_count>3</comment_count>
      <attachid>79719</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2011-01-22 15:04:02 -0800</bug_when>
    <thetext>Comment on attachment 79719
Patch implementing getCurrentModifierState()

This does the current global event, not the actual object in question, right?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>338868</commentid>
    <comment_count>4</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2011-01-23 23:57:55 -0800</bug_when>
    <thetext>(In reply to comment #3)
&gt; (From update of attachment 79719 [details])
&gt; This does the current global event, not the actual object in question, right?

Yes, it takes the event from the global event list</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>342388</commentid>
    <comment_count>5</comment_count>
    <who name="Andreas Kling">kling</who>
    <bug_when>2011-01-30 15:34:49 -0800</bug_when>
    <thetext>(In reply to comment #2)
&gt; I grepped the entire source tree an only found implementations with no callers. Perhaps it makes more sense just to remove this method, as it appears to be dead code.

Sounds like a good idea to me.

About this patch.. is the MOD1 key guaranteed to be Alt?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>342483</commentid>
    <comment_count>6</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2011-01-30 23:40:51 -0800</bug_when>
    <thetext>(In reply to comment #5)
&gt; (In reply to comment #2)
&gt; &gt; I grepped the entire source tree an only found implementations with no callers. Perhaps it makes more sense just to remove this method, as it appears to be dead code.
&gt; 
&gt; Sounds like a good idea to me.
&gt; 
&gt; About this patch.. is the MOD1 key guaranteed to be Alt?

GTK docs says:

&quot;It depends on the modifier mapping of the X server which key is interpreted as this modifier, but normally it is the Alt key&quot;

we are currently using it everywhere in gtk port, in MouseEventGtk.cpp we have a FIXME comment though:

// FIXME: Would be even better to figure out which modifier is Alt instead of always using GDK_MOD1_MASK.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>353194</commentid>
    <comment_count>7</comment_count>
      <attachid>79719</attachid>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2011-02-17 15:13:47 -0800</bug_when>
    <thetext>Comment on attachment 79719
Patch implementing getCurrentModifierState()

Seems this is used in DragController.cpp for createMouseEvent.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>354263</commentid>
    <comment_count>8</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2011-02-20 01:28:25 -0800</bug_when>
    <thetext>Committed r79151: &lt;http://trac.webkit.org/changeset/79151&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>79719</attachid>
            <date>2011-01-21 03:20:36 -0800</date>
            <delta_ts>2011-02-20 01:28:39 -0800</delta_ts>
            <desc>Patch implementing getCurrentModifierState()</desc>
            <filename>current-modifier-state.diff</filename>
            <type>text/plain</type>
            <size>1425</size>
            <attacher name="Carlos Garcia Campos">cgarcia</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBmYjYzODk0Li42ZTQ0YTQ4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMg
QEAKKzIwMTEtMDEtMjEgIENhcmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2FsaWEuY29t
PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFtHVEtd
IEltcGxlbWVudCBQbGF0Zm9ybUtleWJvYXJkRXZlbnQ6OmdldEN1cnJlbnRNb2RpZmllclN0YXRl
KCkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUyODgw
CisKKyAgICAgICAgKiBwbGF0Zm9ybS9ndGsvS2V5RXZlbnRHdGsuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6UGxhdGZvcm1LZXlib2FyZEV2ZW50OjpnZXRDdXJyZW50TW9kaWZpZXJTdGF0ZSk6CisK
IDIwMTAtMTItMTQgIFl1cnkgU2VtaWtoYXRza3kgIDx5dXJ5c0BjaHJvbWl1bS5vcmc+CiAKICAg
ICAgICAgUmV2aWV3ZWQgYnkgQWRhbSBCYXJ0aC4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2d0ay9LZXlFdmVudEd0ay5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
dGsvS2V5RXZlbnRHdGsuY3BwCmluZGV4IDVhMDM0ZDYuLjlmNGMyMGUgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9LZXlFdmVudEd0ay5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3RrL0tleUV2ZW50R3RrLmNwcApAQCAtNTg4LDExICs1ODgsMTMgQEAg
Ym9vbCBQbGF0Zm9ybUtleWJvYXJkRXZlbnQ6OmN1cnJlbnRDYXBzTG9ja1N0YXRlKCkKIAogdm9p
ZCBQbGF0Zm9ybUtleWJvYXJkRXZlbnQ6OmdldEN1cnJlbnRNb2RpZmllclN0YXRlKGJvb2wmIHNo
aWZ0S2V5LCBib29sJiBjdHJsS2V5LCBib29sJiBhbHRLZXksIGJvb2wmIG1ldGFLZXkpCiB7Ci0g
ICAgbm90SW1wbGVtZW50ZWQoKTsKLSAgICBzaGlmdEtleSA9IGZhbHNlOwotICAgIGN0cmxLZXkg
PSBmYWxzZTsKLSAgICBhbHRLZXkgPSBmYWxzZTsKLSAgICBtZXRhS2V5ID0gZmFsc2U7CisgICAg
R2RrTW9kaWZpZXJUeXBlIHN0YXRlOworICAgIGd0a19nZXRfY3VycmVudF9ldmVudF9zdGF0ZSgm
c3RhdGUpOworCisgICAgc2hpZnRLZXkgPSBzdGF0ZSAmIEdES19TSElGVF9NQVNLOworICAgIGN0
cmxLZXkgPSBzdGF0ZSAmIEdES19DT05UUk9MX01BU0s7CisgICAgYWx0S2V5ID0gc3RhdGUgJiBH
REtfTU9EMV9NQVNLOworICAgIG1ldGFLZXkgPSBzdGF0ZSAmIEdES19NRVRBX01BU0s7CiB9CiAK
IEdka0V2ZW50S2V5KiBQbGF0Zm9ybUtleWJvYXJkRXZlbnQ6Omdka0V2ZW50S2V5KCkgY29uc3QK
</data>

          </attachment>
      

    </bug>

</bugzilla>