[Bug 23909] New: Which is expected whether keydown event is fired before or after native IME handles it

https://www.w3.org/Bugs/Public/show_bug.cgi?id=23909

            Bug ID: 23909
           Summary: Which is expected whether keydown event is fired
                    before or after native IME handles it
           Product: WebAppsWG
           Version: unspecified
          Hardware: All
                OS: All
            Status: NEW
          Severity: normal
          Priority: P2
         Component: DOM3 Events
          Assignee: travil@microsoft.com
          Reporter: masayuki@d-toybox.com
        QA Contact: public-webapps-bugzilla@w3.org
                CC: mike@w3.org, www-dom@w3.org

I think that this is very important difference, even though it's edge case.

There are 2 timing to dispatch keydown event.

1. Dispatch keydown event *before* IME handles native key event.

If the keydown event is consumed (preventDefault() is called), browser don't
need to pass the native key event to IME. One of the merits of this approach
is, even there is no way to cancel composition on the platform, browser can
prevent to start composition by first keydown event. One of the demerits of
this approach is, web apps may consume a shortcut key of IME.

But even this approach is preferred, if composition is already started, native
key events must be passed to IME even if keydown events are consumed by web
content since it can prevent to close candidate window of IME!

2. Dispatch keydown event *after* IME handles native key event.

Even if keydown event is consumed by web apps, browser may not cancel
composition (e.g., on Linux).

I guess that current browsers uses the latter approach. But I think that the
former approach is preferred by D3E according to the documentation of the
default action of keydown event.

-- 
You are receiving this mail because:
You are on the CC list for the bug.

Received on Monday, 25 November 2013 09:11:58 UTC