Skip to main content

Module default_actions

Module default_actions 

Source
Expand description

Default Action Processing for Keyboard Events

This module implements W3C-compliant default actions for keyboard events. Default actions are built-in behaviors that occur after event dispatch, unless event.prevent_default() was called.

§W3C Event Model

Per DOM Level 2/3 and W3C UI Events:

  1. Event is dispatched through capture → target → bubble phases
  2. Callbacks can call event.prevent_default() to cancel default action
  3. After dispatch, if not prevented, the default action is performed

§Keyboard Default Actions

KeyModifiersDefault Action
TabNoneFocus next element
TabShiftFocus previous element
EnterNoneActivate focused element (if activatable)
SpaceNoneActivate focused element (if activatable)
EscapeNoneClear focus

§Activation Behavior (HTML5)

Per HTML5 spec, elements with “activation behavior” can be activated via Enter or Space. This generates a synthetic click event:

  • Button elements
  • Anchor elements with href
  • Input elements (submit, button, checkbox, radio)
  • Any element with a click callback

See: https://html.spec.whatwg.org/multipage/interaction.html#activation-behavior

Functions§

create_activation_click_event
Create a synthetic click event for element activation.
default_action_to_focus_target
Convert a DefaultAction to a FocusTarget for the focus manager.
determine_keyboard_default_action
Determine the default action for a keyboard event.