defaultWebShortcuts top-level constant

Map<ShortcutActivator, Intent> const defaultWebShortcuts

Default shortcuts for web.

Copied from WidgetsApp._defaultWebShortcuts because Flutter doesn't expose it and we need to provide these shortcuts during tests in order to be able to simulate web platforms during tests.

This map must be kept up to date with WidgetsApp._defaultWebShortcuts.

Implementation

const Map<ShortcutActivator, Intent> defaultWebShortcuts = <ShortcutActivator, Intent>{
  // Activation
  SingleActivator(LogicalKeyboardKey.space): PrioritizedIntents(
    orderedIntents: <Intent>[
      ActivateIntent(),
      ScrollIntent(direction: AxisDirection.down, type: ScrollIncrementType.page),
    ],
  ),
  // On the web, enter activates buttons, but not other controls.
  SingleActivator(LogicalKeyboardKey.enter): ButtonActivateIntent(),
  SingleActivator(LogicalKeyboardKey.numpadEnter): ButtonActivateIntent(),

  // Dismissal
  SingleActivator(LogicalKeyboardKey.escape): DismissIntent(),

  // Keyboard traversal.
  SingleActivator(LogicalKeyboardKey.tab): NextFocusIntent(),
  SingleActivator(LogicalKeyboardKey.tab, shift: true): PreviousFocusIntent(),

  // Scrolling
  SingleActivator(LogicalKeyboardKey.arrowUp): ScrollIntent(direction: AxisDirection.up),
  SingleActivator(LogicalKeyboardKey.arrowDown): ScrollIntent(direction: AxisDirection.down),
  SingleActivator(LogicalKeyboardKey.arrowLeft): ScrollIntent(direction: AxisDirection.left),
  SingleActivator(LogicalKeyboardKey.arrowRight): ScrollIntent(direction: AxisDirection.right),
  SingleActivator(LogicalKeyboardKey.pageUp): ScrollIntent(direction: AxisDirection.up, type: ScrollIncrementType.page),
  SingleActivator(LogicalKeyboardKey.pageDown):
      ScrollIntent(direction: AxisDirection.down, type: ScrollIncrementType.page),
};