MCPcopy Index your code
hub / github.com/angular/components / eventDispatchesNativeClick

Function eventDispatchesNativeClick

src/cdk/menu/event-detection.ts:13–37  ·  view source on GitHub ↗
(
  elementRef: ElementRef<HTMLElement>,
  event: KeyboardEvent,
)

Source from the content-addressed store, hash-verified

11
12/** Checks whether a keyboard event will trigger a native `click` event on an element. */
13export function eventDispatchesNativeClick(
14 elementRef: ElementRef<HTMLElement>,
15 event: KeyboardEvent,
16): boolean {
17 // Synthetic events won't trigger clicks.
18 if (!event.isTrusted) {
19 return false;
20 }
21
22 const el = elementRef.nativeElement;
23 const keyCode = event.keyCode;
24
25 // Buttons trigger clicks both on space and enter events.
26 if (el.nodeName === 'BUTTON' && !(el as HTMLButtonElement).disabled) {
27 return keyCode === ENTER || keyCode === SPACE;
28 }
29
30 // Links only trigger clicks on enter.
31 if (el.nodeName === 'A') {
32 return keyCode === ENTER;
33 }
34
35 // Any other elements won't dispatch clicks from keyboard events.
36 return false;
37}

Callers 2

_onKeydownMethod · 0.90
_toggleOnKeydownMethod · 0.90

Calls

no outgoing calls

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…