Re: Re: ISSUE-137 (IME-keypress): Should keypress events fire when using an IME? [DOM3 Events]

我也覺得這邊行為蠻混淆的
因為沒辦法完全保持和英文輸入時狀況完全一致

不過基本上我是支持組字的時候不出發鍵盤事件
至少比較符合我第一時間的直覺

Kang-Hao (Kenny) Lu <kennyluck@w3.org> 於 2011年8月12日上午6:06 寫道:

> **
> 從 Web App 工作組轉來的信,大意是說輸入法在組字的時候不應該觸發鍵盤事件(keydown、keyup 及
> keypress)的一些論述,我沒有仔細消化,不過除了 2. 的邏輯看起來很怪應該是對的。
>
> 就算沒有反對意見我們也可以直接說「支持」,大家怎麼想?
>
> 原文的庫存位於[1],在這個郵件列表上相關的討論還有:
> * 用輸入法打字時 input.value 被更改的情形[2]
> * Google Japan 的輸入法 API[3] — 裡面文檔關於 IME 的介紹有圖,還蠻值得看的
>
> [1] http://lists.w3.org/Archives/Public/public-webapps/2011JulSep/0749
> [2] http://lists.w3.org/Archives/Public/public-html-ig-zh/2011Feb/0030
> [3] http://lists.w3.org/Archives/Public/public-html-ig-zh/2011Feb/0021
>
>
> Kenny
>
>
>
> -------- Original Message --------  Subject: Re: ISSUE-137 (IME-keypress):
> Should keypress events fire when using an IME? [DOM3 Events]  Resent-Date:
> Tue, 09 Aug 2011 08:58:20 +0000  Resent-From: public-webapps@w3.org  Date:
> Tue, 09 Aug 2011 17:57:22 +0900  From: Masayuki Nakano
> <masayuki@d-toybox.com> <masayuki@d-toybox.com>  To: Web Applications
> Working Group WG <public-webapps@w3.org> <public-webapps@w3.org>
>
> Hello.
>
> Currently, Firefox doesn't fire any key events (keydown, keyup and
> keypress) during IME composition.  There are some reasons:
>
> 1. Most firefox code handles key events without IME composition state
> check. (This is our internal reason, though) Therefore, if we would fire
> key events during composition, we would need to fix very many code.
>
> 2. Web application developers cannot check IME composition state
> directly.  If they needed to check it, they needed to listen
> compositionstart and compositionend events and make a bool variable.
> Therefore, if web developers handled key events without IME state check,
> IME users couldn't use some web applications.
>
> 3. Some web developers may not know well about IME behavior. Their web
> applications might break IME behavior by handling key events.
>
> I'd like to *suggest* that key events shouldn't be fired during IME
> composition, especially for #3.  If web developers want to know the
> timing of updating composition string, they can use compositionupdate or
> textinput. I think that these events are better for the purpose since
> IME composition string can be updated by clicking on candidate window,
> i.e., it doesn't cause key events.
>
> thanks,
>
> On 2010/10/06 15:16, Web Applications Working Group Issue Tracker wrote:
> >
> > ISSUE-137 (IME-keypress): Should keypress events fire when using an IME? [DOM3 Events]
> >
> > http://www.w3.org/2008/webapps/track/issues/137
> >
> > Raised by: Doug Schepers
> > On product: DOM3 Events
> >
> > Hallvord R. M. Steen<http://lists.w3.org/Archives/Public/www-dom/2010JulSep/0176.html> <http://lists.w3.org/Archives/Public/www-dom/2010JulSep/0176.html>:
> > [[
> > current spec text says about the keypress event:
> >
> >> This event type shall be generated after the keyboard mapping
> >> but before the processing of an input method editor, normally
> >> associated with the dispatching of a compositionstart, compositionupdate,
> >> or compositionend event.
> >
> > I think this is wrong, if an IME is actively processing the input no
> > keypress event should fire.
> > ]]
>
> --
> Masayuki Nakano <masayuki@d-toybox.com> <masayuki@d-toybox.com>
> Manager, Internationalization, Mozilla Japan.
>
>
>


-- 
OOO

Received on Friday, 12 August 2011 01:19:28 UTC