W3C home > Mailing lists > Public > www-dom@w3.org > April to June 2010

Re: Proposal to ammend the composition event spec.

From: Doug Schepers <schepers@w3.org>
Date: Wed, 30 Jun 2010 17:37:23 +0100
Message-ID: <4C2B72C3.6030102@w3.org>
To: Daniel Danilatos <daniel@danilatos.com>
CC: James Su <suzhe@google.com>, "Hironori Bono (坊野 博典)" <hbono@google.com>, www-dom@w3.org, Ojan Vafai <ojan@chromium.org>
Hi, Dan-

If everyone is agreed about this, then I have no problem changing the 
spec.  I'm on vacation right now so I'm not following the conversation 
closely, but I'll fix the spec when I get back next week.


Daniel Danilatos wrote (on 6/30/10 11:44 AM):
> So it seems we're all happy with this. Doug, any chance of it finding
> its way into the spec? We really would like to fix the outstanding
> issues in Webkit.
> Dan
> On Thu, Jun 17, 2010 at 11:47 AM, Ojan Vafai<ojan@chromium.org>  wrote:
>>  I didn't mean to derail the original proposal. As best I can tell, everyone
>>  who has voiced an opinion agrees that compositionstart/compositionend should
>>  bound all IME related DOM modifications and that textInput should fire
>>  before the compositionEnd event.
>>  Whether it also fires before compositionStart is totally orthogonal. We
>>  should try to address that after we've come to a conclusion on the other
>>  thread about extending textInput to other input modes.
>>  Ojan
>>  On Wed, Jun 16, 2010 at 6:08 PM, James Su<suzhe@google.com>  wrote:
>>>  To prevent all text input, I think the preferred way is to just cancel
>>>  keydown event. In this case we don't need to care about textInput and
>>>  composition events at all. It's also compatible with non-IME input mode. So
>>>  I think textInput and composition events should not be fired at all if
>>>  keydown is cancelled.
>>>  Regards
>>>  James Su
>>>  2010/6/16 Ojan Vafai<ojan@chromium.org>
>>>>  On Wed, Jun 16, 2010 at 2:38 PM, Ojan Vafai<ojan@chromium.org>  wrote:
>>>>>  to type "wo" ->  我
>>>>>  user "w"<-- Canceling keydown should prevent the composition from
>>>>>  starting and the DOM should not be modified.
>>>>  Upon further thought, I think we should also fire a textInput event here
>>>>  (not sure if it should fire before or after compositionstart). "data" can
>>>>  just be the empty string. It should be possible to only listen to textInput
>>>>  and preventDefault to prevent all text insertion. You shouldn't need to
>>>>  listen to both textInput and keydown/compositionstart.
>>>>>  event compositionstart
>>>>>  ("w")
>>>>>  user "o"<-- Not related to textInput since this keydown doesn't
>>>>>  generate a textInput event. One cross-platform solution would be to cancel
>>>>>  the composition.
>>>>>  ("wo")
>>>>>  user<space>    <-- Same as above.
>>>>>  ("我")
>>>>>  user<space>  (to commit the composition)<-- Should cancel the textInput
>>>>>  and thus cancel the composition.
>>>>>  ("")
>>>>>  event textInput (cancelable)
>>>>>  ("我")
>>>>>  event compositionend
>>>>>  -Ojan
Received on Wednesday, 30 June 2010 16:37:33 UTC

This archive was generated by hypermail 2.3.1 : Tuesday, 20 October 2015 10:46:16 UTC