[DOM3Events] keydown/keyup asymmetry for held keys (key repeating)

http://www.w3.org/TR/DOM-Level-3-Events/#events-keyboardevents says:
  # Holding down a key must result in the repeating the events
  # keydown, keypress (when supported by the user agent), and
  # textinput (when the keypress results in text input) in this
  # order, at a rate determined by the system configuration.

I think this is a bad idea because it introduces asymmetry between
the keydown and keyup events (which I think authors would reasonably
expect to be symmetric) and because it defines keydown in a way that
also violates a reasonable expectation -- that it be fired when the
key is pressed (just like the existing "mousedown" event).

Instead, I propose that key repetition be handled by repetitions of
the keypress and textinput events, but that the keydown event not
repeat.

Changing this would also require that the keypress event fire for
keys that do not produce a character value (e.g., arrow keys,
backspace), which
http://www.w3.org/TR/DOM-Level-3-Events/#events-keyboard-event-order
says is not the case, since authors do need to detect repetitions of
those keys.

-David

-- 
L. David Baron                                 http://dbaron.org/
Mozilla Corporation                       http://www.mozilla.com/

Received on Wednesday, 22 June 2011 18:26:14 UTC