<?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>15189</bug_id>
          
          <creation_ts>2007-09-12 08:44:18 -0700</creation_ts>
          <short_desc>REGRESSION (Safari 2-&gt;3?): should support oninput event</short_desc>
          <delta_ts>2009-06-21 01:38:47 -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>Forms</component>
          <version>523.x (Safari 3)</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="Michael A. Puls II">shadow2531</reporter>
          <assigned_to name="Adele Peterson">adele</assigned_to>
          <cc>abarth</cc>
    
    <cc>ap</cc>
    
    <cc>arv</cc>
    
    <cc>ovafai</cc>
    
    <cc>vicki</cc>
    
    <cc>wdm</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>614</commentid>
    <comment_count>0</comment_count>
    <who name="Michael A. Puls II">shadow2531</who>
    <bug_when>2007-09-12 08:44:18 -0700</bug_when>
    <thetext>Every element that supports onchange should support the input event.

The input event should be fired whenever the value of the control is *changed* to a *different* value by *any* *user-initiated* action.

User-initiated actions would be for example: cut, paste, delete, clear, undo, redo, drag-n-drop (as-in anything you can drag and drop into a textarea) or any other user action that changes the value with the keyboard or mouse or whatever input device the user is using.

You should be able to use the input event with element.addEventListener(&quot;input&quot;, function, false), element.oninput = function and the oninput attribute.

See &quot;4.2. The change and input events&quot; at &lt; http://www.whatwg.org/specs/web-forms/current-work/#the-click &gt; for more info.

Opera and Firefox have partially supported it for a while and IE supports onpropertychange (which works kind of like input). This means that other browsers have a way to use one event to listen for all user-initiated changes.

Notes:

[Firefox bugs]
https://bugzilla.mozilla.org/buglist.cgi?quicksearch=oninput

[Opera 9.5a bugs]
Fires the event twice for each change. Firefox doesn&apos;t. This has been filed for Opera.

Fires the event even when the value doesn&apos;t change (like hitting the del key in an empty textarea). This has been filed also.

Dragging and dropping doesn&apos;t work for all things yet and sometimes you have to click outside the textarea (like onchange) to get the event to fire. Also filed.

Even with those quirks, having oninput is essential and very useful today (at least with textareas) and will be in HTML5 once the form stuff is merged in.

Hixie&apos;s live DOM viewer makes use of it for a textarea. &lt; http://software.hixie.ch/utilities/js/live-dom-viewer/ &gt;.

My JS URI creator makes use of it for a textarea. &lt; http://shadow2531.com/js/jsuri.html &gt;. I make a crappy workaround for Safari by turning on paste, change, keydown, keyup, keypress and textInput events, but it&apos;s not the same. See &lt; http://shadow2531.com/js/jsuri.js &gt;.

Although oninput should work for any control that supports onchange, textareas are the most important here so authors don&apos;t have to use workarounds for webkit.

You can test some very basic demos at &lt; http://shadow2531.com/opera/testcases/oninput/ &gt; in Firefox and Opera.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>600</commentid>
    <comment_count>1</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2007-09-12 10:47:58 -0700</bug_when>
    <thetext>Confirmed with a local debug build of WebKit r25505 with Safari 3 Public Beta v. 3.0.3 (522.12.1) on Mac OS X 10.4.10 (8R218).

</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>586</commentid>
    <comment_count>2</comment_count>
    <who name="Michael A. Puls II">shadow2531</who>
    <bug_when>2007-09-12 14:57:47 -0700</bug_when>
    <thetext>aside/fyi:

addEventListener(&quot;DOMControlValueChanged&quot; will catch not only user-initiated changes, but all changes including changes a script makes. See &lt; http://www.whatwg.org/specs/web-forms/current-work/#the-domcontrolvaluechanged &gt;. Opera is the only one that supports this so far though.

Since oninput is kind of like a user-initiated-filtered version of DOMControlValueChanged, it *might* make sense to add DOMControlValueChanged and oninput support at the same time.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>70462</commentid>
    <comment_count>3</comment_count>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2008-02-12 17:06:24 -0800</bug_when>
    <thetext>We used to support oninput.  If that no longer works it would be a regression (perhaps it broke going from Safari 2 to 3 when we rewrote the form controls).

</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>70464</commentid>
    <comment_count>4</comment_count>
    <who name="Erik Arvidsson">erik.arvidsson</who>
    <bug_when>2008-02-12 17:09:24 -0800</bug_when>
    <thetext>It works fine on input[type=text] but it never worked on textarea as far as I know.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>70465</commentid>
    <comment_count>5</comment_count>
      <attachid>19099</attachid>
    <who name="Erik Arvidsson">erik.arvidsson</who>
    <bug_when>2008-02-12 17:12:05 -0800</bug_when>
    <thetext>Created attachment 19099
Test case</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>70468</commentid>
    <comment_count>6</comment_count>
    <who name="Adele Peterson">adele</who>
    <bug_when>2008-02-12 17:27:56 -0800</bug_when>
    <thetext>If my Safari 2.0.4 version isn&apos;t totally horked, I don&apos;t see the input event working for text fields or textareas in that version.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>70469</commentid>
    <comment_count>7</comment_count>
      <attachid>19101</attachid>
    <who name="Adele Peterson">adele</who>
    <bug_when>2008-02-12 17:41:00 -0800</bug_when>
    <thetext>Created attachment 19101
tentative patch

needs more testing, but here&apos;s a tentative patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>81814</commentid>
    <comment_count>8</comment_count>
    <who name="Michael A. Puls II">shadow2531</who>
    <bug_when>2008-05-28 22:08:07 -0700</bug_when>
    <thetext>(In reply to comment #7)
&gt; Created an attachment (id=19101) [edit]
&gt; tentative patch
&gt; 
&gt; needs more testing, but here&apos;s a tentative patch

That works and makes the input event fire on textareas. However,

1. It doesn&apos;t work if you use the oninput attribute on the textarea. (only .oninput and addEventListener(&quot;input&quot;, func, false) work. oninput=&quot;&quot; works for the input element though.)

2. Hitting Del in an empty textarea still fires the event. It should not because the value didn&apos;t change. (This is a problem for input elements also.)

3. It doesn&apos;t fix the input event firing for the select element and possibly other controls.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>94981</commentid>
    <comment_count>9</comment_count>
    <who name="Michael A. Puls II">shadow2531</who>
    <bug_when>2008-10-11 01:39:09 -0700</bug_when>
    <thetext>(In reply to comment #8)
&gt; (In reply to comment #7)
&gt; &gt; Created an attachment (id=19101) [edit]
&gt; &gt; tentative patch
&gt; &gt; 
&gt; &gt; needs more testing, but here&apos;s a tentative patch
&gt; 
&gt; That works and makes the input event fire on textareas. However,

Actually, if the patch is O.K., I think it&apos;d be good to put it in now so at least oninput works on textareas via addEventListener. (The part about firing when pressing del in an empty textarea is a minor issue.)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>125372</commentid>
    <comment_count>10</comment_count>
    <who name="Michael A. Puls II">shadow2531</who>
    <bug_when>2009-06-11 14:09:20 -0700</bug_when>
    <thetext>(In reply to comment #8)
&gt; 3. It doesn&apos;t fix the input event firing for the select element and possibly
&gt; other controls.

Since part of WebForms was merged into HTML5 and HTML5 defines the event only for text field controls, no need to worry about this part.

</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>125423</commentid>
    <comment_count>11</comment_count>
    <who name="Erik Arvidsson">arv</who>
    <bug_when>2009-06-11 18:09:22 -0700</bug_when>
    <thetext>I got a fix for this that does oninput attribute as well. Patch coming...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>125436</commentid>
    <comment_count>12</comment_count>
      <attachid>31192</attachid>
    <who name="Erik Arvidsson">arv</who>
    <bug_when>2009-06-11 21:45:07 -0700</bug_when>
    <thetext>Created attachment 31192
incomplete patch

 4 files changed, 30 insertions(+), 0 deletions(-)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>125437</commentid>
    <comment_count>13</comment_count>
      <attachid>31192</attachid>
    <who name="Erik Arvidsson">arv</who>
    <bug_when>2009-06-11 21:47:54 -0700</bug_when>
    <thetext>Comment on attachment 31192
incomplete patch

I&apos;ll retry this with the SVN version for now</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>125713</commentid>
    <comment_count>14</comment_count>
      <attachid>31249</attachid>
    <who name="Erik Arvidsson">arv</who>
    <bug_when>2009-06-13 20:07:00 -0700</bug_when>
    <thetext>Created attachment 31249
Adds support for oninput attribute as well as dispatching of the event.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>125740</commentid>
    <comment_count>15</comment_count>
      <attachid>31249</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2009-06-13 23:05:52 -0700</bug_when>
    <thetext>Comment on attachment 31249
Adds support for oninput attribute as well as dispatching of the event.

LGTM</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>125746</commentid>
    <comment_count>16</comment_count>
      <attachid>31249</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2009-06-14 00:13:34 -0700</bug_when>
    <thetext>Comment on attachment 31249
Adds support for oninput attribute as well as dispatching of the event.

I don&apos;t think that it&apos;s appropriate to land this without better test coverage. The discussion above suggests many tests that we could add:
- test other input types (e.g. single line inputs, radio buttons);
- test the event&apos;s behavior with SELECT elements;
- test that programmatic manipulation doesn&apos;t fire the event;
- test that keypresses that don&apos;t change the value (such as hitting the &quot;delete&quot; key in an empty text field, or replacing some text in the field with text from the clipboard that happens to be exactly the same text) don&apos;t fire the event;
- test that the event is not dispatched too often, as in Opera.

Furthermore, HTML5 says that the event should be dispatched asynchronously, not synchronously - and it even says that multiple events should be coalesced.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>125770</commentid>
    <comment_count>17</comment_count>
    <who name="Michael A. Puls II">shadow2531</who>
    <bug_when>2009-06-14 08:51:24 -0700</bug_when>
    <thetext>About the &quot;no change happened&quot; scenario, pressing del or backspace in an empty textarea shouldn&apos;t fire the event. Firefox and Opera honor this on pressing del.

However, Opera doesn&apos;t follow this for backspace yet (I assume they will) and Firefox has problems following this for backspace. For example, if a textarea is blank on load, pressing backspace in it won&apos;t fire &apos;input&apos; in Firefox. However, after inserting a character and then clearing the textarea by deleting the last character in it, pressing backspace in the then empty textarea will fire &apos;input&apos; in Firefox. You have to (ctrl +a) and delete in Firefox to totally clear the textarea (there&apos;s a hidden character or something internally). Then backspace won&apos;t fire &apos;input&apos; in the empty textarea again. I don&apos;t think FF&apos;s quirk should be followed.

As for selecting all text in the textarea and replacing it with the same exact value, that fires &apos;input&apos; in both Firefox and Opera. I assume this is because the value is technically cleared (behind the scenes) before pasting, so there is indeed a change *technically*. However, it seems like it really shouldn&apos;t fire, but that&apos;s just my opinion and it might be safer to just do as FF and Opera.

As for &lt;select&gt; elements, Opera basically fires &apos;input&apos; for any form element that can fire &apos;change&apos;. However, that&apos;s from Web Forms 2 and HTML5 currently is only covering textareas and certain types of input elements. The HTML5 spec has a list of what types of input elements fire &apos;input&apos;. 

It looks like HTML5 says that only the following input element types should fire &apos;input&apos;:

type=&quot;text&quot;, type=&quot;url&quot;, type=&quot;search&quot;, type=&quot;tel&quot;, type=&quot;email&quot;, type=&quot;password&quot;, type=&quot;datetime&quot;, type=&quot;date&quot;, type=&quot;month&quot;, type=&quot;week&quot;, type=&quot;time&quot;, type=&quot;datetime-local&quot;, type=&quot;number&quot;, type=&quot;range&quot;, type=&quot;color&quot;, type=&quot;checkbox&quot;, type=&quot;radio&quot;

, which, according to the table at &lt;http://www.whatwg.org/specs/web-apps/current-work/multipage/forms.html#the-input-element&gt;  (scroll down a little to see the @type/event table), is the same for the &apos;change&apos; event except &apos;change&apos; also fires for type=&quot;file&quot; while &apos;input&apos; should not.

As for firing &apos;input&apos; on contentEditable stuff, I don&apos;t think HTML5 has mentioned anything on that yet. But, it seems like it should the same way it would for a textarea. It would seem useful anyway.

As for firing twice like Opera does. That&apos;s just a bug. The extra &apos;input&apos; event gets triggered by Opera&apos;s &apos;change&apos; event processing somehow. I don&apos;t think this will be a problem with Webkit&apos;s code. But, I guess it&apos;s best to test. Opera should fix this eventually.

As for coalescing, I don&apos;t know if Firefox or Opera do this and I don&apos;t know of the exact rules that should be followed for doing this. I think it&apos;s up to the implementation. For example, while changes are happening in less than N milliseconds of each other, don&apos;t fire the event until changes are farther then N apart. I just don&apos;t know if you&apos;d be able to type fast enough or trigger a change in one of the other controls fast enough to trigger coalescing unless N is really high. And, I don&apos;t think not doing coalescing will affect performance, but it might in some cases.

Also, HTML5 still has yet to totally clear up what &apos;change&apos; means, but it should mean &quot;to a *different* value&quot; by any user-initiated action like drag-n-drop, undo, redo, cut and paste, clear, delete, moving selected text around in the textarea etc.

Best to read through &lt;http://www.whatwg.org/specs/web-apps/current-work/multipage/forms.html#the-input-element&gt; and &lt;http://www.whatwg.org/specs/web-apps/current-work/multipage/forms.html#the-textarea-element&gt; though.

With all that said though, just turning on &apos;input&apos; firing for textarea would be good enough for me right now, personally, and then bugs could be filed for the other stuff. But, that&apos;s up to you if you want to wait till it&apos;s 100% perfect.

Hope that helps.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>125958</commentid>
    <comment_count>18</comment_count>
    <who name="Erik Arvidsson">arv</who>
    <bug_when>2009-06-15 08:58:04 -0700</bug_when>
    <thetext>Let me give you some background to this.

This is the code that Gmail and almost all other Google Apps use.

http://code.google.com/p/doctype/source/browse/trunk/goog/events/inputhandler.js

It uses the input event for all non IE browsers except in the case of WebKit and textareas where it only uses keypress. This behavior is far from correct but it is better than nothing and it was decided by the Google Apps teams that it was not worth the extra cost of polling to cover all bases for WebKit since it is clearly a bug in WebKit anyway.

Back to this bug. I think it makes sense to fix textarea to at least get basic support. Just because it is not 100% correct it does not make sense to prevent it from being fixed. Should we remove input events from input[type=&apos;text&apos;] since it does not correctly handle delete? I don&apos;t think anyone is suggesting that?

I agree that I can do more in this patch and I suggest the following things to be done in here and then we can open new bugs for the remaining issues.

1. Make oninput a global attribute: http://www.whatwg.org/specs/web-apps/current-work/multipage/dom.html#global-attributes
2. Make sure that the input event is fired by textareas
3. Improve the tests to
3.1 Cover the non focused case
3.2 Make sure the event bubbles and can be caught by a &lt;div oninput=&quot;...&quot;&gt;
3.3 Make sure that programmatic changes do not fire the event.

Then we should file these new bugs:

1. Make sure that subtreeModified is not called when the subtree is not really modified. This should catch issues with delete and backspace as well as pasting the same content etc.
2. Dispatch oninput for the following input elements:

type=&quot;text&quot;, type=&quot;url&quot;, type=&quot;search&quot;, type=&quot;tel&quot;, type=&quot;email&quot;,
type=&quot;password&quot;, type=&quot;datetime&quot;, type=&quot;date&quot;, type=&quot;month&quot;, type=&quot;week&quot;,
type=&quot;time&quot;, type=&quot;datetime-local&quot;, type=&quot;number&quot;, type=&quot;range&quot;, type=&quot;color&quot;,
type=&quot;checkbox&quot;, type=&quot;radio&quot;

3. Implement oninput for contentEditable.


Does that sound reasonable?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>125961</commentid>
    <comment_count>19</comment_count>
    <who name="Michael A. Puls II">shadow2531</who>
    <bug_when>2009-06-15 09:15:52 -0700</bug_when>
    <thetext>(In reply to comment #18)
&gt; I think it makes sense to fix textarea to at least get basic
&gt; support.

FWIW, I 100% agree. Just making it fire for textareas would be a huge help. All the fine details and technicalities are not even interoperable between FF and Opera yet, so, it seems there&apos;d be no harm in just making it fire (which is all you can really count on in other browsers atm anyway)

For &lt;http://shadow2531.com/js/jsuri.html&gt;, all I need is for &apos;input&apos; to fire on the textarea. It is not dependent on whether the other stuff is implemented correctly or not. I believe Hixie&apos;s live DOM viewer could benefit in the same way.

I want things to be perfect, but &apos;input&apos; has been broken for so long on textareas in Webkit that just getting it working seems like an important step.

Alexey, what do you think? Think the other things could be handled separately?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>125974</commentid>
    <comment_count>20</comment_count>
      <attachid>31296</attachid>
    <who name="Erik Arvidsson">arv</who>
    <bug_when>2009-06-15 10:00:35 -0700</bug_when>
    <thetext>Created attachment 31296
Makes oninput attribute work on all elements and epands the layout test.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>125989</commentid>
    <comment_count>21</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2009-06-15 11:16:23 -0700</bug_when>
    <thetext>(In reply to comment #18)
&gt; Does that sound reasonable?

Yes, this plan sounds good to me.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>126019</commentid>
    <comment_count>22</comment_count>
    <who name="Erik Arvidsson">arv</who>
    <bug_when>2009-06-15 13:47:47 -0700</bug_when>
    <thetext>Alexey, is this patch enough or is there anything else you want me to do in this iteration?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>126029</commentid>
    <comment_count>23</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2009-06-15 14:11:06 -0700</bug_when>
    <thetext>My concerns are fully resolved - just waiting for Adam (as the original reviewer) or someone else familiar with forms code to mark r+.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>126081</commentid>
    <comment_count>24</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2009-06-15 16:28:29 -0700</bug_when>
    <thetext>(In reply to comment #23)
&gt; My concerns are fully resolved - just waiting for Adam (as the original
&gt; reviewer) or someone else familiar with forms code to mark r+.

I&apos;d prefer that someone else review this patch.  (Once burned, twice careful?)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>126088</commentid>
    <comment_count>25</comment_count>
      <attachid>31296</attachid>
    <who name="Adele Peterson">adele</who>
    <bug_when>2009-06-15 16:56:03 -0700</bug_when>
    <thetext>Comment on attachment 31296
Makes oninput attribute work on all elements and epands the layout test.

typo in one of the tests: programmitcally</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>126101</commentid>
    <comment_count>26</comment_count>
      <attachid>31324</attachid>
    <who name="Erik Arvidsson">arv</who>
    <bug_when>2009-06-15 17:51:10 -0700</bug_when>
    <thetext>Created attachment 31324
Fixes typos.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>126108</commentid>
    <comment_count>27</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-06-15 18:34:32 -0700</bug_when>
    <thetext>Sigh.  My script (bug 26283) can&apos;t land this because it would land the wrong patch.  Or, if I marked the last patch r+, then the script would land the patch as though I was the reviewer. :(</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>126372</commentid>
    <comment_count>28</comment_count>
    <who name="Erik Arvidsson">arv</who>
    <bug_when>2009-06-16 19:23:00 -0700</bug_when>
    <thetext>I obsoleted the old patch and marked the new patch as r? Hopefully Adele can r+ it again.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>126745</commentid>
    <comment_count>29</comment_count>
    <who name="Ojan Vafai">ojan</who>
    <bug_when>2009-06-18 11:58:48 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/44811</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>127177</commentid>
    <comment_count>30</comment_count>
    <who name="Michael A. Puls II">shadow2531</who>
    <bug_when>2009-06-20 18:29:01 -0700</bug_when>
    <thetext>Woo hoo! It&apos;s working on textareas in WebKit-r44837. Thank you. Thank you!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>127201</commentid>
    <comment_count>31</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2009-06-21 01:09:31 -0700</bug_when>
    <thetext>(In reply to comment #18)
&gt; Then we should file these new bugs:

Could you please post bug numbers here for reference, once you file them?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>127203</commentid>
    <comment_count>32</comment_count>
    <who name="Michael A. Puls II">shadow2531</who>
    <bug_when>2009-06-21 01:38:47 -0700</bug_when>
    <thetext>Here are the ones I know of fwiw:

Bug 26519: oninput fires too often

Bug 26526: Add support for input events (oninput) to contentEditable elements

Bug 26550: Implement input events for checkboxes and radio buttons

Bug 26576: oninput event doesn&apos;t fire on first drag from address field

Bug 22135: oninput doesn&apos;t work on divs (fixed)

Bug 26578: event.currentTarget for listener registered on window should point to the window object like in Firefox (affects window.oninput)</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>19099</attachid>
            <date>2008-02-12 17:12:05 -0800</date>
            <delta_ts>2008-02-12 17:12:05 -0800</delta_ts>
            <desc>Test case</desc>
            <filename>oninput.html</filename>
            <type>text/html</type>
            <size>578</size>
            <attacher name="Erik Arvidsson">erik.arvidsson</attacher>
            
              <data encoding="base64">PCFET0NUWVBFIGh0bWw+CjxodG1sPgo8aGVhZD4KPHRpdGxlPjwvdGl0bGU+CjxzdHlsZT4KCjwv
c3R5bGU+CjwvaGVhZD4KPGJvZHk+Cgo8aW5wdXQgdHlwZT10ZXh0Pgo8ZGl2IGlkPW91dD48L2Rp
dj4KCjx0ZXh0YXJlYT48L3RleHRhcmVhPgo8ZGl2IGlkPW91dDI+PC9kaXY+Cgo8c2NyaXB0PgoK
dmFyIGVsID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ2lucHV0JylbMF07CmVsLmFk
ZEV2ZW50TGlzdGVuZXIoJ2lucHV0JywgZnVuY3Rpb24oZSkgewogIHZhciBvdXQgPSBkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgnb3V0Jyk7CiAgb3V0LnRleHRDb250ZW50ID0gZS50YXJnZXQudmFs
dWU7Cn0sIGZhbHNlKQoKCnZhciBlbDIgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgn
dGV4dGFyZWEnKVswXTsKZWwyLmFkZEV2ZW50TGlzdGVuZXIoJ2lucHV0JywgZnVuY3Rpb24oZSkg
ewogIHZhciBvdXQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnb3V0MicpOwogIG91dC50ZXh0
Q29udGVudCA9IGUudGFyZ2V0LnZhbHVlOwp9LCBmYWxzZSkKCjwvc2NyaXB0PgoKCjwvYm9keT4K
PC9odG1sPgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>19101</attachid>
            <date>2008-02-12 17:41:00 -0800</date>
            <delta_ts>2009-06-15 18:28:03 -0700</delta_ts>
            <desc>tentative patch</desc>
            <filename>patch.txt</filename>
            <type>text/plain</type>
            <size>596</size>
            <attacher name="Adele Peterson">adele</attacher>
            
              <data encoding="base64">SW5kZXg6IHJlbmRlcmluZy9SZW5kZXJUZXh0Q29udHJvbC5jcHAKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gcmVu
ZGVyaW5nL1JlbmRlclRleHRDb250cm9sLmNwcAkocmV2aXNpb24gMzAxNzIpCisrKyByZW5kZXJp
bmcvUmVuZGVyVGV4dENvbnRyb2wuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC01MjksNiArNTI5LDcg
QEAKICAgICBIVE1MR2VuZXJpY0Zvcm1FbGVtZW50KiBlbGVtZW50ID0gc3RhdGljX2Nhc3Q8SFRN
TEdlbmVyaWNGb3JtRWxlbWVudCo+KG5vZGUoKSk7CiAgICAgaWYgKG1fbXVsdGlMaW5lKSB7CiAg
ICAgICAgIGVsZW1lbnQtPnNldFZhbHVlTWF0Y2hlc1JlbmRlcmVyKGZhbHNlKTsKKyAgICAgICAg
ZWxlbWVudC0+ZGlzcGF0Y2hIVE1MRXZlbnQoaW5wdXRFdmVudCwgdHJ1ZSwgZmFsc2UpOwogICAg
ICAgICBpZiAoZWxlbWVudC0+Zm9jdXNlZCgpKQogICAgICAgICAgICAgaWYgKEZyYW1lKiBmcmFt
ZSA9IGRvY3VtZW50KCktPmZyYW1lKCkpCiAgICAgICAgICAgICAgICAgZnJhbWUtPnRleHREaWRD
aGFuZ2VJblRleHRBcmVhKGVsZW1lbnQpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>31192</attachid>
            <date>2009-06-11 21:45:07 -0700</date>
            <delta_ts>2009-06-11 21:47:54 -0700</delta_ts>
            <desc>incomplete patch</desc>
            <filename>hmmm.patch</filename>
            <type>text/plain</type>
            <size>2812</size>
            <attacher name="Erik Arvidsson">arv</attacher>
            
              <data encoding="base64">MjgyYjhkMDczYmU2ZTZlN2Y4ZTY2Y2NlMzk0NDVkOGZmMjQzZDhjNgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDVjNDNmNDQu
LmIyNTQ4NzYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRU
ZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAwOS0wNi0xMSAgRXJpayBBcnZpZHNz
b24gIDxhcnZAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0x
NTE4OQorICAgICAgICBBZGRzIHN1cHBvcnQgZm9yIHRoZSBIVE1MNSBpbnB1dCBldmVudCB0byB0
ZXh0YXJlYSBlbGVtZW50cy4KKworICAgICAgICAqIGZhc3QvZm9ybXMvcmVzb3VyY2VzL3RleHRh
cmVhLWlucHV0LWV2ZW50LmpzOiBBZGRlZC4KKyAgICAgICAgKGhhbmRsZUlucHV0KToKKyAgICAg
ICAgKiBmYXN0L2Zvcm1zL3RleHRhcmVhLWlucHV0LWV2ZW50Lmh0bWw6IENvcGllZCBmcm9tIExh
eW91dFRlc3RzL2VkaXRpbmcvZXhlY0NvbW1hbmQvdG9nZ2xlLXN0eWxlcy5odG1sLgorCiAyMDA5
LTA2LTExICBPbGl2ZXIgSHVudCAgPG9saXZlckBhcHBsZS5jb20+CiAKICAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChidWlsZC1maXgpLgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9DaGFuZ2VMb2cg
Yi9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCBjNzU0MjA4Li5iZDFmMDA2IDEwMDY0NAotLS0gYS9X
ZWJDb3JlL0NoYW5nZUxvZworKysgYi9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBA
CisyMDA5LTA2LTExICBFcmlrIEFydmlkc3NvbiAgPGFydkBjaHJvbWl1bS5vcmc+CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1MTg5CisgICAgICAgIEFkZHMgc3VwcG9ydCBmb3Ig
dGhlIEhUTUw1IGlucHV0IGV2ZW50IHRvIHRleHRhcmVhIGVsZW1lbnRzLgorCisgICAgICAgIFRl
c3Q6IGZhc3QvZm9ybXMvdGV4dGFyZWEtaW5wdXQtZXZlbnQuaHRtbAorCisgICAgICAgICogaHRt
bC9IVE1MVGV4dEFyZWFFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxUZXh0QXJl
YUVsZW1lbnQ6OnBhcnNlTWFwcGVkQXR0cmlidXRlKToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVu
ZGVyVGV4dENvbnRyb2xNdWx0aUxpbmUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVGV4
dENvbnRyb2xNdWx0aUxpbmU6OnN1YnRyZWVIYXNDaGFuZ2VkKToKKwogMjAwOS0wNi0xMSAgU2hp
bmljaGlybyBIYW1hamkgIDxoYW1hamlAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFJldmlld2Vk
IGJ5IEFkYW0gQmFydGguCmRpZmYgLS1naXQgYS9XZWJDb3JlL2h0bWwvSFRNTFRleHRBcmVhRWxl
bWVudC5jcHAgYi9XZWJDb3JlL2h0bWwvSFRNTFRleHRBcmVhRWxlbWVudC5jcHAKaW5kZXggZTE5
YWMwYS4uYzE2YzM0OSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9odG1sL0hUTUxUZXh0QXJlYUVsZW1l
bnQuY3BwCisrKyBiL1dlYkNvcmUvaHRtbC9IVE1MVGV4dEFyZWFFbGVtZW50LmNwcApAQCAtMTg4
LDYgKzE4OCw4IEBAIHZvaWQgSFRNTFRleHRBcmVhRWxlbWVudDo6cGFyc2VNYXBwZWRBdHRyaWJ1
dGUoTWFwcGVkQXR0cmlidXRlKiBhdHRyKQogICAgICAgICBzZXRBdHRyaWJ1dGVFdmVudExpc3Rl
bmVyKGV2ZW50TmFtZXMoKS5zZWxlY3RFdmVudCwgY3JlYXRlQXR0cmlidXRlRXZlbnRMaXN0ZW5l
cih0aGlzLCBhdHRyKSk7CiAgICAgZWxzZSBpZiAoYXR0ci0+bmFtZSgpID09IG9uY2hhbmdlQXR0
cikKICAgICAgICAgc2V0QXR0cmlidXRlRXZlbnRMaXN0ZW5lcihldmVudE5hbWVzKCkuY2hhbmdl
RXZlbnQsIGNyZWF0ZUF0dHJpYnV0ZUV2ZW50TGlzdGVuZXIodGhpcywgYXR0cikpOworICAgIGVs
c2UgaWYgKGF0dHItPm5hbWUoKSA9PSBvbmlucHV0QXR0cikKKyAgICAgICAgc2V0QXR0cmlidXRl
RXZlbnRMaXN0ZW5lcihldmVudE5hbWVzKCkuaW5wdXRFdmVudCwgY3JlYXRlQXR0cmlidXRlRXZl
bnRMaXN0ZW5lcih0aGlzLCBhdHRyKSk7CiAgICAgZWxzZQogICAgICAgICBIVE1MRm9ybUNvbnRy
b2xFbGVtZW50V2l0aFN0YXRlOjpwYXJzZU1hcHBlZEF0dHJpYnV0ZShhdHRyKTsKIH0KZGlmZiAt
LWdpdCBhL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRleHRDb250cm9sTXVsdGlMaW5lLmNwcCBi
L1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRleHRDb250cm9sTXVsdGlMaW5lLmNwcAppbmRleCA3
ZmYyNTFjLi5kZjMxYzJiIDEwMDY0NAotLS0gYS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUZXh0
Q29udHJvbE11bHRpTGluZS5jcHAKKysrIGIvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGV4dENv
bnRyb2xNdWx0aUxpbmUuY3BwCkBAIC00OCw2ICs0OCw5IEBAIHZvaWQgUmVuZGVyVGV4dENvbnRy
b2xNdWx0aUxpbmU6OnN1YnRyZWVIYXNDaGFuZ2VkKCkKICAgICBpZiAoIW5vZGUoKS0+Zm9jdXNl
ZCgpKQogICAgICAgICByZXR1cm47CiAKKyAgICAvLyBGaXJlIHRoZSAiaW5wdXQiIERPTSBldmVu
dAorICAgIG5vZGUoKS0+ZGlzcGF0Y2hFdmVudChldmVudE5hbWVzKCkuaW5wdXRFdmVudCwgdHJ1
ZSwgZmFsc2UpOworCiAgICAgaWYgKEZyYW1lKiBmcmFtZSA9IGRvY3VtZW50KCktPmZyYW1lKCkp
CiAgICAgICAgIGZyYW1lLT50ZXh0RGlkQ2hhbmdlSW5UZXh0QXJlYShzdGF0aWNfY2FzdDxFbGVt
ZW50Kj4obm9kZSgpKSk7CiB9Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>31249</attachid>
            <date>2009-06-13 20:07:00 -0700</date>
            <delta_ts>2009-06-15 10:00:35 -0700</delta_ts>
            <desc>Adds support for oninput attribute as well as dispatching of the event.</desc>
            <filename>oninput.patch</filename>
            <type>text/plain</type>
            <size>5016</size>
            <attacher name="Erik Arvidsson">arv</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA0NDY2MSkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTcgQEAKKzIwMDktMDYtMTMgIEVyaWsgQXJ2aWRzc29uICA8YXJ2QGNocm9taXVt
Lm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTUxODkKKyAgICAgICAgQWRk
cyB0aGUgSFRNTDUgaW5wdXQgZXZlbnQgc3VwcG9ydCBmb3IgdGV4dGFyZWEuCisKKyAgICAgICAg
VGVzdDogZmFzdC9mb3Jtcy90ZXh0YXJlYS1pbnB1dC1ldmVudC5odG1sCisKKyAgICAgICAgKiBo
dG1sL0hUTUxUZXh0QXJlYUVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTFRleHRB
cmVhRWxlbWVudDo6cGFyc2VNYXBwZWRBdHRyaWJ1dGUpOgorICAgICAgICAqIHJlbmRlcmluZy9S
ZW5kZXJUZXh0Q29udHJvbE11bHRpTGluZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJU
ZXh0Q29udHJvbE11bHRpTGluZTo6c3VidHJlZUhhc0NoYW5nZWQpOgorCiAyMDA5LTA2LTEzICBQ
ZXRlciBLYXN0aW5nICA8cGthc3RpbmdAZ29vZ2xlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBi
eSBFcmljIFNlaWRlbC4KSW5kZXg6IFdlYkNvcmUvaHRtbC9IVE1MVGV4dEFyZWFFbGVtZW50LmNw
cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2h0bWwvSFRNTFRleHRBcmVhRWxlbWVudC5jcHAJKHJl
dmlzaW9uIDQ0NjM4KQorKysgV2ViQ29yZS9odG1sL0hUTUxUZXh0QXJlYUVsZW1lbnQuY3BwCSh3
b3JraW5nIGNvcHkpCkBAIC0xODgsNiArMTg4LDggQEAgdm9pZCBIVE1MVGV4dEFyZWFFbGVtZW50
OjpwYXJzZU1hcHBlZEF0dAogICAgICAgICBzZXRBdHRyaWJ1dGVFdmVudExpc3RlbmVyKGV2ZW50
TmFtZXMoKS5zZWxlY3RFdmVudCwgY3JlYXRlQXR0cmlidXRlRXZlbnRMaXN0ZW5lcih0aGlzLCBh
dHRyKSk7CiAgICAgZWxzZSBpZiAoYXR0ci0+bmFtZSgpID09IG9uY2hhbmdlQXR0cikKICAgICAg
ICAgc2V0QXR0cmlidXRlRXZlbnRMaXN0ZW5lcihldmVudE5hbWVzKCkuY2hhbmdlRXZlbnQsIGNy
ZWF0ZUF0dHJpYnV0ZUV2ZW50TGlzdGVuZXIodGhpcywgYXR0cikpOworICAgIGVsc2UgaWYgKGF0
dHItPm5hbWUoKSA9PSBvbmlucHV0QXR0cikKKyAgICAgICAgc2V0QXR0cmlidXRlRXZlbnRMaXN0
ZW5lcihldmVudE5hbWVzKCkuaW5wdXRFdmVudCwgY3JlYXRlQXR0cmlidXRlRXZlbnRMaXN0ZW5l
cih0aGlzLCBhdHRyKSk7CiAgICAgZWxzZQogICAgICAgICBIVE1MRm9ybUNvbnRyb2xFbGVtZW50
V2l0aFN0YXRlOjpwYXJzZU1hcHBlZEF0dHJpYnV0ZShhdHRyKTsKIH0KSW5kZXg6IFdlYkNvcmUv
cmVuZGVyaW5nL1JlbmRlclRleHRDb250cm9sTXVsdGlMaW5lLmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBX
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUZXh0Q29udHJvbE11bHRpTGluZS5jcHAJKHJldmlzaW9u
IDQ0NjM4KQorKysgV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGV4dENvbnRyb2xNdWx0aUxpbmUu
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC00OCw2ICs0OCw5IEBAIHZvaWQgUmVuZGVyVGV4dENvbnRy
b2xNdWx0aUxpbmU6OnN1YnRyZWUKICAgICBpZiAoIW5vZGUoKS0+Zm9jdXNlZCgpKQogICAgICAg
ICByZXR1cm47CiAKKyAgICAvLyBGaXJlIHRoZSAiaW5wdXQiIERPTSBldmVudAorICAgIG5vZGUo
KS0+ZGlzcGF0Y2hFdmVudChldmVudE5hbWVzKCkuaW5wdXRFdmVudCwgdHJ1ZSwgZmFsc2UpOwor
CiAgICAgaWYgKEZyYW1lKiBmcmFtZSA9IGRvY3VtZW50KCktPmZyYW1lKCkpCiAgICAgICAgIGZy
YW1lLT50ZXh0RGlkQ2hhbmdlSW5UZXh0QXJlYShzdGF0aWNfY2FzdDxFbGVtZW50Kj4obm9kZSgp
KSk7CiB9CkluZGV4OiBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nCShyZXZpc2lvbiA0NDY2MSkKKysrIExheW91dFRlc3RzL0NoYW5nZUxv
Zwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE1IEBACisyMDA5LTA2LTEzICBFcmlrIEFydmlk
c3NvbiAgPGFydkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTE1MTg5CisgICAgICAgIFRlc3QgY2FzZSBmb3IgdGV4dGFyZWEgaW5wdXQgZXZlbnQuCisKKyAg
ICAgICAgKiBmYXN0L2Zvcm1zL3Jlc291cmNlcy90ZXh0YXJlYS1pbnB1dC1ldmVudC5qczogQWRk
ZWQuCisgICAgICAgIChoYW5kbGVJbnB1dCk6CisgICAgICAgICogZmFzdC9mb3Jtcy90ZXh0YXJl
YS1pbnB1dC1ldmVudC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZm9ybXMv
dGV4dGFyZWEtaW5wdXQtZXZlbnQuaHRtbDogQWRkZWQuCisKIDIwMDktMDYtMTMgIERpcmsgU2No
dWx6ZSAgPGtyaXRAd2Via2l0Lm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBFcmljIFNlaWRl
bC4KSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZm9ybXMvdGV4dGFyZWEtaW5wdXQtZXZlbnQtZXhw
ZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvZm9ybXMvdGV4dGFyZWEt
aW5wdXQtZXZlbnQtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvZmFz
dC9mb3Jtcy90ZXh0YXJlYS1pbnB1dC1ldmVudC1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBA
IC0wLDAgKzEsMTEgQEAKK1Rlc3QgZm9yIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0xNTE4OQorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBB
U1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyB0YS52
YWx1ZSBpcyAieCIKK1BBU1MgaGFuZGxlSW5wdXRDYWxsZWQgaXMgdHJ1ZQorUEFTUyBzdWNjZXNz
ZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKSW5kZXg6IExheW91dFRlc3Rz
L2Zhc3QvZm9ybXMvdGV4dGFyZWEtaW5wdXQtZXZlbnQuaHRtbAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlv
dXRUZXN0cy9mYXN0L2Zvcm1zL3RleHRhcmVhLWlucHV0LWV2ZW50Lmh0bWwJKHJldmlzaW9uIDAp
CisrKyBMYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL3RleHRhcmVhLWlucHV0LWV2ZW50Lmh0bWwJKHJl
dmlzaW9uIDApCkBAIC0wLDAgKzEsMTMgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVU
Ri8vRFREIEhUTUwvL0VOIj4KKzxodG1sPgorPGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQi
IGhyZWY9Ii4uLy4uL2Zhc3QvanMvcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxzY3Jp
cHQgc3JjPSIuLi8uLi9mYXN0L2pzL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+
Cis8L2hlYWQ+Cis8Ym9keT4KKzxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgorPGRpdiBpZD0iY29u
c29sZSI+PC9kaXY+Cis8c2NyaXB0IHNyYz0icmVzb3VyY2VzL3RleHRhcmVhLWlucHV0LWV2ZW50
LmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9mYXN0L2pzL3Jlc291cmNlcy9qcy10
ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpJbmRleDogTGF5b3V0VGVz
dHMvZmFzdC9mb3Jtcy9yZXNvdXJjZXMvdGV4dGFyZWEtaW5wdXQtZXZlbnQuanMKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9yZXNvdXJjZXMvdGV4dGFyZWEtaW5wdXQtZXZl
bnQuanMJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL3Jlc291cmNlcy90
ZXh0YXJlYS1pbnB1dC1ldmVudC5qcwkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwyNCBAQAorZGVz
Y3JpcHRpb24oJ1Rlc3QgZm9yIDxhIGhyZWY9Imh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xNTE4OSI+aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTE1MTg5PC9hPjxicj4nKTsKKwordmFyIGhhbmRsZUlucHV0Q2FsbGVkID0gZmFsc2U7Cit2YXIg
c3VjY2Vzc2Z1bGx5UGFyc2VkID0gZmFsc2U7CisKK2Z1bmN0aW9uIGhhbmRsZUlucHV0KGUpIHsK
KyAgICBpZiAoZS50YXJnZXQgIT09IHRhKSB7CisgICAgICAgIHRlc3RGYWlsZWQoJ1dyb25nIHRh
cmdldCcpOworICAgIH0gZWxzZSB7CisgICAgICAgIGhhbmRsZUlucHV0Q2FsbGVkID0gdHJ1ZTsK
KyAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCd0YS52YWx1ZScsICd4Jyk7CisgICAgfQor
fQorCit2YXIgdGEgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCd0ZXh0YXJlYScpOwordGEuc2V0
QXR0cmlidXRlKCdvbmlucHV0JywgJ2hhbmRsZUlucHV0KGV2ZW50KScpOworZG9jdW1lbnQuYm9k
eS5hcHBlbmRDaGlsZCh0YSk7Cit0YS5mb2N1cygpOworCitpZiAod2luZG93LmV2ZW50U2VuZGVy
KSB7CisgICAgZXZlbnRTZW5kZXIua2V5RG93bigneCcsIFtdKTsKKyAgICBzaG91bGRCZVRydWUo
J2hhbmRsZUlucHV0Q2FsbGVkJyk7CisgICAgc3VjY2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsKK30K
</data>
<flag name="review"
          id="15948"
          type_id="1"
          status="-"
          setter="ap"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>31296</attachid>
            <date>2009-06-15 10:00:35 -0700</date>
            <delta_ts>2009-06-16 18:39:21 -0700</delta_ts>
            <desc>Makes oninput attribute work on all elements and epands the layout test.</desc>
            <filename>oninput.patch</filename>
            <type>text/plain</type>
            <size>6977</size>
            <attacher name="Erik Arvidsson">arv</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA0NDY4OSkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMjMgQEAKKzIwMDktMDYtMTUgIEVyaWsgQXJ2aWRzc29uICA8YXJ2QGNocm9taXVt
Lm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTUxODkKKyAgICAgICAgQWRk
cyB0aGUgSFRNTDUgaW5wdXQgZXZlbnQgc3VwcG9ydCBmb3IgdGV4dGFyZWEuCisgICAgICAgIAor
ICAgICAgICBBbHNvLCBtb3ZlcyB0aGUgb25pbnB1dCBhdHRyaWJ1dGUgcGFyc2UgaGFuZGxpbmcg
dG8gSFRNTEVsZW1lbnQgc28gdGhhdAorICAgICAgICBpdCBjYW4gYmUgc2V0IG9uIGFueSBIVE1M
IGVsZW1lbnQgc28gdGhhdCBidWJibGluZyBldmVudHMgY2FuIGJlIGhhbmRsZWQKKyAgICAgICAg
dXNpbmcgSFRNTCBhdHRyaWJ1dGUgaGFuZGxlcnMuCisKKyAgICAgICAgVGVzdDogZmFzdC9mb3Jt
cy90ZXh0YXJlYS1pbnB1dC1ldmVudC5odG1sCisKKyAgICAgICAgKiBodG1sL0hUTUxFbGVtZW50
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxFbGVtZW50OjpwYXJzZU1hcHBlZEF0dHJpYnV0
ZSk6CisgICAgICAgICogaHRtbC9IVE1MSW5wdXRFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OkhUTUxJbnB1dEVsZW1lbnQ6OnBhcnNlTWFwcGVkQXR0cmlidXRlKToKKyAgICAgICAgKiBy
ZW5kZXJpbmcvUmVuZGVyVGV4dENvbnRyb2xNdWx0aUxpbmUuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6UmVuZGVyVGV4dENvbnRyb2xNdWx0aUxpbmU6OnN1YnRyZWVIYXNDaGFuZ2VkKToKKwogMjAw
OS0wNi0xNSAgU2ltb24gSGF1c21hbm4gIDxzaW1vbi5oYXVzbWFubkBub2tpYS5jb20+CiAKICAg
ICAgICAgUmV2aWV3ZWQgYnkgYW5kIGRvbmUgd2l0aCBUb3IgQXJuZSBWZXN0YsO4LgpJbmRleDog
V2ViQ29yZS9odG1sL0hUTUxFbGVtZW50LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2h0bWwv
SFRNTEVsZW1lbnQuY3BwCShyZXZpc2lvbiA0NDYzOCkKKysrIFdlYkNvcmUvaHRtbC9IVE1MRWxl
bWVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTIxNSw2ICsyMTUsOCBAQCB2b2lkIEhUTUxFbGVt
ZW50OjpwYXJzZU1hcHBlZEF0dHJpYnV0ZShNCiAgICAgICAgIHNldEF0dHJpYnV0ZUV2ZW50TGlz
dGVuZXIoZXZlbnROYW1lcygpLndlYmtpdEFuaW1hdGlvbkVuZEV2ZW50LCBjcmVhdGVBdHRyaWJ1
dGVFdmVudExpc3RlbmVyKHRoaXMsIGF0dHIpKTsKICAgICB9IGVsc2UgaWYgKGF0dHItPm5hbWUo
KSA9PSBvbndlYmtpdHRyYW5zaXRpb25lbmRBdHRyKSB7CiAgICAgICAgIHNldEF0dHJpYnV0ZUV2
ZW50TGlzdGVuZXIoZXZlbnROYW1lcygpLndlYmtpdFRyYW5zaXRpb25FbmRFdmVudCwgY3JlYXRl
QXR0cmlidXRlRXZlbnRMaXN0ZW5lcih0aGlzLCBhdHRyKSk7CisgICAgfSBlbHNlIGlmIChhdHRy
LT5uYW1lKCkgPT0gb25pbnB1dEF0dHIpIHsKKyAgICAgICAgc2V0QXR0cmlidXRlRXZlbnRMaXN0
ZW5lcihldmVudE5hbWVzKCkuaW5wdXRFdmVudCwgY3JlYXRlQXR0cmlidXRlRXZlbnRMaXN0ZW5l
cih0aGlzLCBhdHRyKSk7CiAgICAgfQogfQogCkluZGV4OiBXZWJDb3JlL2h0bWwvSFRNTElucHV0
RWxlbWVudC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9odG1sL0hUTUxJbnB1dEVsZW1lbnQu
Y3BwCShyZXZpc2lvbiA0NDYzOCkKKysrIFdlYkNvcmUvaHRtbC9IVE1MSW5wdXRFbGVtZW50LmNw
cAkod29ya2luZyBjb3B5KQpAQCAtNjMyLDggKzYzMiw2IEBAIHZvaWQgSFRNTElucHV0RWxlbWVu
dDo6cGFyc2VNYXBwZWRBdHRyaWIKICAgICAgICAgc2V0QXR0cmlidXRlRXZlbnRMaXN0ZW5lcihl
dmVudE5hbWVzKCkuc2VsZWN0RXZlbnQsIGNyZWF0ZUF0dHJpYnV0ZUV2ZW50TGlzdGVuZXIodGhp
cywgYXR0cikpOwogICAgIH0gZWxzZSBpZiAoYXR0ci0+bmFtZSgpID09IG9uY2hhbmdlQXR0cikg
ewogICAgICAgICBzZXRBdHRyaWJ1dGVFdmVudExpc3RlbmVyKGV2ZW50TmFtZXMoKS5jaGFuZ2VF
dmVudCwgY3JlYXRlQXR0cmlidXRlRXZlbnRMaXN0ZW5lcih0aGlzLCBhdHRyKSk7Ci0gICAgfSBl
bHNlIGlmIChhdHRyLT5uYW1lKCkgPT0gb25pbnB1dEF0dHIpIHsKLSAgICAgICAgc2V0QXR0cmli
dXRlRXZlbnRMaXN0ZW5lcihldmVudE5hbWVzKCkuaW5wdXRFdmVudCwgY3JlYXRlQXR0cmlidXRl
RXZlbnRMaXN0ZW5lcih0aGlzLCBhdHRyKSk7CiAgICAgfQogICAgIC8vIFNlYXJjaCBmaWVsZCBh
bmQgc2xpZGVyIGF0dHJpYnV0ZXMgYWxsIGp1c3QgY2F1c2UgdXBkYXRlRnJvbUVsZW1lbnQgdG8g
YmUgY2FsbGVkIHRocm91Z2ggc3R5bGUKICAgICAvLyByZWNhbGNpbmcuCkluZGV4OiBXZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJUZXh0Q29udHJvbE11bHRpTGluZS5jcHAKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGV4dENvbnRyb2xNdWx0aUxpbmUuY3BwCShyZXZpc2lv
biA0NDYzOCkKKysrIFdlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRleHRDb250cm9sTXVsdGlMaW5l
LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNDgsNiArNDgsOSBAQCB2b2lkIFJlbmRlclRleHRDb250
cm9sTXVsdGlMaW5lOjpzdWJ0cmVlCiAgICAgaWYgKCFub2RlKCktPmZvY3VzZWQoKSkKICAgICAg
ICAgcmV0dXJuOwogCisgICAgLy8gRmlyZSB0aGUgImlucHV0IiBET00gZXZlbnQKKyAgICBub2Rl
KCktPmRpc3BhdGNoRXZlbnQoZXZlbnROYW1lcygpLmlucHV0RXZlbnQsIHRydWUsIGZhbHNlKTsK
KwogICAgIGlmIChGcmFtZSogZnJhbWUgPSBkb2N1bWVudCgpLT5mcmFtZSgpKQogICAgICAgICBm
cmFtZS0+dGV4dERpZENoYW5nZUluVGV4dEFyZWEoc3RhdGljX2Nhc3Q8RWxlbWVudCo+KG5vZGUo
KSkpOwogfQpJbmRleDogTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91
dFRlc3RzL0NoYW5nZUxvZwkocmV2aXNpb24gNDQ2ODkpCisrKyBMYXlvdXRUZXN0cy9DaGFuZ2VM
b2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxNiBAQAorMjAwOS0wNi0xNSAgRXJpayBBcnZp
ZHNzb24gIDxhcnZAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0xNTE4OQorICAgICAgICBUZXN0IGNhc2UgZm9yIHRleHRhcmVhIGlucHV0IGV2ZW50LgorCisg
ICAgICAgICogZmFzdC9mb3Jtcy9yZXNvdXJjZXMvdGV4dGFyZWEtaW5wdXQtZXZlbnQuanM6IEFk
ZGVkLgorICAgICAgICAoaGFuZGxlRGl2T25JbnB1dCk6CisgICAgICAgIChoYW5kbGVUZXh0YXJl
YU9uSW5wdXQpOgorICAgICAgICAqIGZhc3QvZm9ybXMvdGV4dGFyZWEtaW5wdXQtZXZlbnQtZXhw
ZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2Zvcm1zL3RleHRhcmVhLWlucHV0LWV2
ZW50Lmh0bWw6IEFkZGVkLgorCiAyMDA5LTA2LTE0ICBEYXJpbiBBZGxlciAgPGRhcmluQGFwcGxl
LmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBEYW4gQmVybnN0ZWluLgpJbmRleDogTGF5b3V0
VGVzdHMvZmFzdC9mb3Jtcy90ZXh0YXJlYS1pbnB1dC1ldmVudC1leHBlY3RlZC50eHQKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy90ZXh0YXJlYS1pbnB1dC1ldmVudC1leHBl
Y3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL3RleHRhcmVh
LWlucHV0LWV2ZW50LWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwxNSBAQAor
VGVzdCBmb3IgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1MTg5CisK
K09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZv
bGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIHRhLnZhbHVlIGlzICJ4IgorUEFT
UyB0YS52YWx1ZSBpcyAieCIKK1BBU1MgaGFuZGxlVGV4dGFyZWFPbklucHV0Q2FsbENvdW50IGlz
IDEKK1BBU1MgaGFuZGxlRGl2T25JbnB1dENhbGxDb3VudCBpcyAxCitQQVNTIGhhbmRsZVRleHRh
cmVhT25JbnB1dENhbGxDb3VudCBpcyAxCitQQVNTIGhhbmRsZURpdk9uSW5wdXRDYWxsQ291bnQg
aXMgMQorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisK
SW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZm9ybXMvdGV4dGFyZWEtaW5wdXQtZXZlbnQuaHRtbAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL3RleHRhcmVhLWlucHV0LWV2ZW50
Lmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL3RleHRhcmVhLWlu
cHV0LWV2ZW50Lmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMTggQEAKKzwhRE9DVFlQRSBo
dG1sPgorPGh0bWw+Cis8aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4v
ZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgorPHNjcmlwdCBzcmM9Ii4uLy4u
L2Zhc3QvanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxi
b2R5PgorPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4K
KworPGRpdiBvbmlucHV0PSJoYW5kbGVEaXZPbklucHV0KGV2ZW50KSI+CisgICAgPHRleHRhcmVh
IGlkPSJ0YSI+YmVmb3JlPC90ZXh0YXJlYT4KKzwvZGl2PgorCis8c2NyaXB0IHNyYz0icmVzb3Vy
Y2VzL3RleHRhcmVhLWlucHV0LWV2ZW50LmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8u
Li9mYXN0L2pzL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5Pgor
PC9odG1sPgpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9yZXNvdXJjZXMvdGV4dGFyZWEt
aW5wdXQtZXZlbnQuanMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9yZXNv
dXJjZXMvdGV4dGFyZWEtaW5wdXQtZXZlbnQuanMJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0
cy9mYXN0L2Zvcm1zL3Jlc291cmNlcy90ZXh0YXJlYS1pbnB1dC1ldmVudC5qcwkocmV2aXNpb24g
MCkKQEAgLTAsMCArMSw0NyBAQAorZGVzY3JpcHRpb24oJ1Rlc3QgZm9yIDxhIGhyZWY9Imh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTE4OSI+aHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1MTg5PC9hPjxicj4nKTsKKwordmFyIGhhbmRsZVRl
eHRhcmVhT25JbnB1dENhbGxDb3VudCA9IDA7Cit2YXIgaGFuZGxlRGl2T25JbnB1dENhbGxDb3Vu
dCA9IDA7Cit2YXIgc3VjY2Vzc2Z1bGx5UGFyc2VkID0gZmFsc2U7CisKK2Z1bmN0aW9uIGhhbmRs
ZURpdk9uSW5wdXQoZSkgeworICAgIGlmIChlLnRhcmdldCAhPT0gdGEpIHsKKyAgICAgICAgdGVz
dEZhaWxlZCgnV3JvbmcgdGFyZ2V0Jyk7CisgICAgfSBlbHNlIHsKKyAgICAgICAgaGFuZGxlRGl2
T25JbnB1dENhbGxDb3VudCsrOworICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoJ3RhLnZh
bHVlJywgJ3gnKTsKKyAgICB9Cit9CisKK2Z1bmN0aW9uIGhhbmRsZVRleHRhcmVhT25JbnB1dChl
KSB7CisgICAgaWYgKGUudGFyZ2V0ICE9PSB0YSkgeworICAgICAgICB0ZXN0RmFpbGVkKCdXcm9u
ZyB0YXJnZXQnKTsKKyAgICB9IGVsc2UgeworICAgICAgICBoYW5kbGVUZXh0YXJlYU9uSW5wdXRD
YWxsQ291bnQrKzsKKyAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCd0YS52YWx1ZScsICd4
Jyk7CisgICAgfQorfQorCit2YXIgdGEgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndGEnKTsK
K3RhLnNldEF0dHJpYnV0ZSgnb25pbnB1dCcsICdoYW5kbGVUZXh0YXJlYU9uSW5wdXQoZXZlbnQp
Jyk7CisKKworLy8gQ2hhbmdlIHRoZSB2YWx1ZSBiZWZvcmUgZm9jdXNpbmcuCit0YS52YWx1ZSA9
ICcnOworCit0YS5mb2N1cygpOworCitpZiAod2luZG93LmV2ZW50U2VuZGVyKSB7CisgICAgZXZl
bnRTZW5kZXIua2V5RG93bigneCcsIFtdKTsKKyAgICBzaG91bGRFdmFsdWF0ZVRvKCdoYW5kbGVU
ZXh0YXJlYU9uSW5wdXRDYWxsQ291bnQnLCAxKTsKKyAgICBzaG91bGRFdmFsdWF0ZVRvKCdoYW5k
bGVEaXZPbklucHV0Q2FsbENvdW50JywgMSk7CisgICAgCisgICAgLy8gQ2hhbmdlIHByb2dyYW1t
aXRjYWxseQorICAgIHRhLnZhbHVlID0gJ3Byb2dyYW1hdGljYWxseSc7CisgICAgCisgICAgLy8g
U2hvdWxkIG5vdCBoYXZlIHRyaWdnZXJlZCB0aGUgZXZlbnRzLgorICAgIHNob3VsZEV2YWx1YXRl
VG8oJ2hhbmRsZVRleHRhcmVhT25JbnB1dENhbGxDb3VudCcsIDEpOworICAgIHNob3VsZEV2YWx1
YXRlVG8oJ2hhbmRsZURpdk9uSW5wdXRDYWxsQ291bnQnLCAxKTsKKyAgICAKKyAgICBzdWNjZXNz
ZnVsbHlQYXJzZWQgPSB0cnVlOworfQo=
</data>
<flag name="review"
          id="15988"
          type_id="1"
          status="+"
          setter="adele"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>31324</attachid>
            <date>2009-06-15 17:51:10 -0700</date>
            <delta_ts>2009-06-16 20:48:20 -0700</delta_ts>
            <desc>Fixes typos.</desc>
            <filename>oninput.patch</filename>
            <type>text/plain</type>
            <size>6977</size>
            <attacher name="Erik Arvidsson">arv</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA0NDY4OSkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMjMgQEAKKzIwMDktMDYtMTUgIEVyaWsgQXJ2aWRzc29uICA8YXJ2QGNocm9taXVt
Lm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTUxODkKKyAgICAgICAgQWRk
cyB0aGUgSFRNTDUgaW5wdXQgZXZlbnQgc3VwcG9ydCBmb3IgdGV4dGFyZWEuCisgICAgICAgIAor
ICAgICAgICBBbHNvLCBtb3ZlcyB0aGUgb25pbnB1dCBhdHRyaWJ1dGUgcGFyc2UgaGFuZGxpbmcg
dG8gSFRNTEVsZW1lbnQgc28gdGhhdAorICAgICAgICBpdCBjYW4gYmUgc2V0IG9uIGFueSBIVE1M
IGVsZW1lbnQgc28gdGhhdCBidWJibGluZyBldmVudHMgY2FuIGJlIGhhbmRsZWQKKyAgICAgICAg
dXNpbmcgSFRNTCBhdHRyaWJ1dGUgaGFuZGxlcnMuCisKKyAgICAgICAgVGVzdDogZmFzdC9mb3Jt
cy90ZXh0YXJlYS1pbnB1dC1ldmVudC5odG1sCisKKyAgICAgICAgKiBodG1sL0hUTUxFbGVtZW50
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxFbGVtZW50OjpwYXJzZU1hcHBlZEF0dHJpYnV0
ZSk6CisgICAgICAgICogaHRtbC9IVE1MSW5wdXRFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OkhUTUxJbnB1dEVsZW1lbnQ6OnBhcnNlTWFwcGVkQXR0cmlidXRlKToKKyAgICAgICAgKiBy
ZW5kZXJpbmcvUmVuZGVyVGV4dENvbnRyb2xNdWx0aUxpbmUuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6UmVuZGVyVGV4dENvbnRyb2xNdWx0aUxpbmU6OnN1YnRyZWVIYXNDaGFuZ2VkKToKKwogMjAw
OS0wNi0xNSAgU2ltb24gSGF1c21hbm4gIDxzaW1vbi5oYXVzbWFubkBub2tpYS5jb20+CiAKICAg
ICAgICAgUmV2aWV3ZWQgYnkgYW5kIGRvbmUgd2l0aCBUb3IgQXJuZSBWZXN0YsO4LgpJbmRleDog
V2ViQ29yZS9odG1sL0hUTUxFbGVtZW50LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2h0bWwv
SFRNTEVsZW1lbnQuY3BwCShyZXZpc2lvbiA0NDYzOCkKKysrIFdlYkNvcmUvaHRtbC9IVE1MRWxl
bWVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTIxNSw2ICsyMTUsOCBAQCB2b2lkIEhUTUxFbGVt
ZW50OjpwYXJzZU1hcHBlZEF0dHJpYnV0ZShNCiAgICAgICAgIHNldEF0dHJpYnV0ZUV2ZW50TGlz
dGVuZXIoZXZlbnROYW1lcygpLndlYmtpdEFuaW1hdGlvbkVuZEV2ZW50LCBjcmVhdGVBdHRyaWJ1
dGVFdmVudExpc3RlbmVyKHRoaXMsIGF0dHIpKTsKICAgICB9IGVsc2UgaWYgKGF0dHItPm5hbWUo
KSA9PSBvbndlYmtpdHRyYW5zaXRpb25lbmRBdHRyKSB7CiAgICAgICAgIHNldEF0dHJpYnV0ZUV2
ZW50TGlzdGVuZXIoZXZlbnROYW1lcygpLndlYmtpdFRyYW5zaXRpb25FbmRFdmVudCwgY3JlYXRl
QXR0cmlidXRlRXZlbnRMaXN0ZW5lcih0aGlzLCBhdHRyKSk7CisgICAgfSBlbHNlIGlmIChhdHRy
LT5uYW1lKCkgPT0gb25pbnB1dEF0dHIpIHsKKyAgICAgICAgc2V0QXR0cmlidXRlRXZlbnRMaXN0
ZW5lcihldmVudE5hbWVzKCkuaW5wdXRFdmVudCwgY3JlYXRlQXR0cmlidXRlRXZlbnRMaXN0ZW5l
cih0aGlzLCBhdHRyKSk7CiAgICAgfQogfQogCkluZGV4OiBXZWJDb3JlL2h0bWwvSFRNTElucHV0
RWxlbWVudC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9odG1sL0hUTUxJbnB1dEVsZW1lbnQu
Y3BwCShyZXZpc2lvbiA0NDYzOCkKKysrIFdlYkNvcmUvaHRtbC9IVE1MSW5wdXRFbGVtZW50LmNw
cAkod29ya2luZyBjb3B5KQpAQCAtNjMyLDggKzYzMiw2IEBAIHZvaWQgSFRNTElucHV0RWxlbWVu
dDo6cGFyc2VNYXBwZWRBdHRyaWIKICAgICAgICAgc2V0QXR0cmlidXRlRXZlbnRMaXN0ZW5lcihl
dmVudE5hbWVzKCkuc2VsZWN0RXZlbnQsIGNyZWF0ZUF0dHJpYnV0ZUV2ZW50TGlzdGVuZXIodGhp
cywgYXR0cikpOwogICAgIH0gZWxzZSBpZiAoYXR0ci0+bmFtZSgpID09IG9uY2hhbmdlQXR0cikg
ewogICAgICAgICBzZXRBdHRyaWJ1dGVFdmVudExpc3RlbmVyKGV2ZW50TmFtZXMoKS5jaGFuZ2VF
dmVudCwgY3JlYXRlQXR0cmlidXRlRXZlbnRMaXN0ZW5lcih0aGlzLCBhdHRyKSk7Ci0gICAgfSBl
bHNlIGlmIChhdHRyLT5uYW1lKCkgPT0gb25pbnB1dEF0dHIpIHsKLSAgICAgICAgc2V0QXR0cmli
dXRlRXZlbnRMaXN0ZW5lcihldmVudE5hbWVzKCkuaW5wdXRFdmVudCwgY3JlYXRlQXR0cmlidXRl
RXZlbnRMaXN0ZW5lcih0aGlzLCBhdHRyKSk7CiAgICAgfQogICAgIC8vIFNlYXJjaCBmaWVsZCBh
bmQgc2xpZGVyIGF0dHJpYnV0ZXMgYWxsIGp1c3QgY2F1c2UgdXBkYXRlRnJvbUVsZW1lbnQgdG8g
YmUgY2FsbGVkIHRocm91Z2ggc3R5bGUKICAgICAvLyByZWNhbGNpbmcuCkluZGV4OiBXZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJUZXh0Q29udHJvbE11bHRpTGluZS5jcHAKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGV4dENvbnRyb2xNdWx0aUxpbmUuY3BwCShyZXZpc2lv
biA0NDYzOCkKKysrIFdlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRleHRDb250cm9sTXVsdGlMaW5l
LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNDgsNiArNDgsOSBAQCB2b2lkIFJlbmRlclRleHRDb250
cm9sTXVsdGlMaW5lOjpzdWJ0cmVlCiAgICAgaWYgKCFub2RlKCktPmZvY3VzZWQoKSkKICAgICAg
ICAgcmV0dXJuOwogCisgICAgLy8gRmlyZSB0aGUgImlucHV0IiBET00gZXZlbnQKKyAgICBub2Rl
KCktPmRpc3BhdGNoRXZlbnQoZXZlbnROYW1lcygpLmlucHV0RXZlbnQsIHRydWUsIGZhbHNlKTsK
KwogICAgIGlmIChGcmFtZSogZnJhbWUgPSBkb2N1bWVudCgpLT5mcmFtZSgpKQogICAgICAgICBm
cmFtZS0+dGV4dERpZENoYW5nZUluVGV4dEFyZWEoc3RhdGljX2Nhc3Q8RWxlbWVudCo+KG5vZGUo
KSkpOwogfQpJbmRleDogTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91
dFRlc3RzL0NoYW5nZUxvZwkocmV2aXNpb24gNDQ2ODkpCisrKyBMYXlvdXRUZXN0cy9DaGFuZ2VM
b2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxNiBAQAorMjAwOS0wNi0xNSAgRXJpayBBcnZp
ZHNzb24gIDxhcnZAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0xNTE4OQorICAgICAgICBUZXN0IGNhc2UgZm9yIHRleHRhcmVhIGlucHV0IGV2ZW50LgorCisg
ICAgICAgICogZmFzdC9mb3Jtcy9yZXNvdXJjZXMvdGV4dGFyZWEtaW5wdXQtZXZlbnQuanM6IEFk
ZGVkLgorICAgICAgICAoaGFuZGxlRGl2T25JbnB1dCk6CisgICAgICAgIChoYW5kbGVUZXh0YXJl
YU9uSW5wdXQpOgorICAgICAgICAqIGZhc3QvZm9ybXMvdGV4dGFyZWEtaW5wdXQtZXZlbnQtZXhw
ZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2Zvcm1zL3RleHRhcmVhLWlucHV0LWV2
ZW50Lmh0bWw6IEFkZGVkLgorCiAyMDA5LTA2LTE0ICBEYXJpbiBBZGxlciAgPGRhcmluQGFwcGxl
LmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBEYW4gQmVybnN0ZWluLgpJbmRleDogTGF5b3V0
VGVzdHMvZmFzdC9mb3Jtcy90ZXh0YXJlYS1pbnB1dC1ldmVudC1leHBlY3RlZC50eHQKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy90ZXh0YXJlYS1pbnB1dC1ldmVudC1leHBl
Y3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL3RleHRhcmVh
LWlucHV0LWV2ZW50LWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwxNSBAQAor
VGVzdCBmb3IgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1MTg5CisK
K09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZv
bGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIHRhLnZhbHVlIGlzICJ4IgorUEFT
UyB0YS52YWx1ZSBpcyAieCIKK1BBU1MgaGFuZGxlVGV4dGFyZWFPbklucHV0Q2FsbENvdW50IGlz
IDEKK1BBU1MgaGFuZGxlRGl2T25JbnB1dENhbGxDb3VudCBpcyAxCitQQVNTIGhhbmRsZVRleHRh
cmVhT25JbnB1dENhbGxDb3VudCBpcyAxCitQQVNTIGhhbmRsZURpdk9uSW5wdXRDYWxsQ291bnQg
aXMgMQorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisK
SW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZm9ybXMvdGV4dGFyZWEtaW5wdXQtZXZlbnQuaHRtbAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL3RleHRhcmVhLWlucHV0LWV2ZW50
Lmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL3RleHRhcmVhLWlu
cHV0LWV2ZW50Lmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMTggQEAKKzwhRE9DVFlQRSBo
dG1sPgorPGh0bWw+Cis8aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4v
ZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgorPHNjcmlwdCBzcmM9Ii4uLy4u
L2Zhc3QvanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxi
b2R5PgorPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4K
KworPGRpdiBvbmlucHV0PSJoYW5kbGVEaXZPbklucHV0KGV2ZW50KSI+CisgICAgPHRleHRhcmVh
IGlkPSJ0YSI+YmVmb3JlPC90ZXh0YXJlYT4KKzwvZGl2PgorCis8c2NyaXB0IHNyYz0icmVzb3Vy
Y2VzL3RleHRhcmVhLWlucHV0LWV2ZW50LmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8u
Li9mYXN0L2pzL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5Pgor
PC9odG1sPgpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9yZXNvdXJjZXMvdGV4dGFyZWEt
aW5wdXQtZXZlbnQuanMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9yZXNv
dXJjZXMvdGV4dGFyZWEtaW5wdXQtZXZlbnQuanMJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0
cy9mYXN0L2Zvcm1zL3Jlc291cmNlcy90ZXh0YXJlYS1pbnB1dC1ldmVudC5qcwkocmV2aXNpb24g
MCkKQEAgLTAsMCArMSw0NiBAQAorZGVzY3JpcHRpb24oJ1Rlc3QgZm9yIDxhIGhyZWY9Imh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTE4OSI+aHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1MTg5PC9hPjxicj4nKTsKKwordmFyIGhhbmRsZVRl
eHRhcmVhT25JbnB1dENhbGxDb3VudCA9IDA7Cit2YXIgaGFuZGxlRGl2T25JbnB1dENhbGxDb3Vu
dCA9IDA7Cit2YXIgc3VjY2Vzc2Z1bGx5UGFyc2VkID0gZmFsc2U7CisKK2Z1bmN0aW9uIGhhbmRs
ZURpdk9uSW5wdXQoZSkgeworICAgIGlmIChlLnRhcmdldCAhPT0gdGEpIHsKKyAgICAgICAgdGVz
dEZhaWxlZCgnV3JvbmcgdGFyZ2V0Jyk7CisgICAgfSBlbHNlIHsKKyAgICAgICAgaGFuZGxlRGl2
T25JbnB1dENhbGxDb3VudCsrOworICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoJ3RhLnZh
bHVlJywgJ3gnKTsKKyAgICB9Cit9CisKK2Z1bmN0aW9uIGhhbmRsZVRleHRhcmVhT25JbnB1dChl
KSB7CisgICAgaWYgKGUudGFyZ2V0ICE9PSB0YSkgeworICAgICAgICB0ZXN0RmFpbGVkKCdXcm9u
ZyB0YXJnZXQnKTsKKyAgICB9IGVsc2UgeworICAgICAgICBoYW5kbGVUZXh0YXJlYU9uSW5wdXRD
YWxsQ291bnQrKzsKKyAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCd0YS52YWx1ZScsICd4
Jyk7CisgICAgfQorfQorCit2YXIgdGEgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndGEnKTsK
K3RhLnNldEF0dHJpYnV0ZSgnb25pbnB1dCcsICdoYW5kbGVUZXh0YXJlYU9uSW5wdXQoZXZlbnQp
Jyk7CisKKy8vIENoYW5nZSB0aGUgdmFsdWUgYmVmb3JlIGZvY3VzaW5nLgordGEudmFsdWUgPSAn
JzsKKwordGEuZm9jdXMoKTsKKworaWYgKHdpbmRvdy5ldmVudFNlbmRlcikgeworICAgIGV2ZW50
U2VuZGVyLmtleURvd24oJ3gnLCBbXSk7CisgICAgc2hvdWxkRXZhbHVhdGVUbygnaGFuZGxlVGV4
dGFyZWFPbklucHV0Q2FsbENvdW50JywgMSk7CisgICAgc2hvdWxkRXZhbHVhdGVUbygnaGFuZGxl
RGl2T25JbnB1dENhbGxDb3VudCcsIDEpOworICAgIAorICAgIC8vIENoYW5nZSBwcm9ncmFtbWF0
aWNhbGx5CisgICAgdGEudmFsdWUgPSAncHJvZ3JhbW1hdGljYWxseSc7CisgICAgCisgICAgLy8g
U2hvdWxkIG5vdCBoYXZlIHRyaWdnZXJlZCB0aGUgZXZlbnRzLgorICAgIHNob3VsZEV2YWx1YXRl
VG8oJ2hhbmRsZVRleHRhcmVhT25JbnB1dENhbGxDb3VudCcsIDEpOworICAgIHNob3VsZEV2YWx1
YXRlVG8oJ2hhbmRsZURpdk9uSW5wdXRDYWxsQ291bnQnLCAxKTsKKyAgICAKKyAgICBzdWNjZXNz
ZnVsbHlQYXJzZWQgPSB0cnVlOworfQo=
</data>
<flag name="review"
          id="16063"
          type_id="1"
          status="+"
          setter="adele"
    />
          </attachment>
      

    </bug>

</bugzilla>