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

Method _handleKeyEvent

src/cdk/menu/menu.ts:72–103  ·  view source on GitHub ↗

* Handle keyboard events for the Menu. * @param event The keyboard event to be handled.

(event: KeyboardEvent)

Source from the content-addressed store, hash-verified

70 * @param event The keyboard event to be handled.
71 */
72 _handleKeyEvent(event: KeyboardEvent) {
73 const keyManager = this.keyManager;
74 switch (event.keyCode) {
75 case LEFT_ARROW:
76 case RIGHT_ARROW:
77 if (!hasModifierKey(event)) {
78 event.preventDefault();
79 keyManager.setFocusOrigin('keyboard');
80 keyManager.onKeydown(event);
81 }
82 break;
83
84 case ESCAPE:
85 if (!hasModifierKey(event)) {
86 event.preventDefault();
87 this.menuStack.close(this, {
88 focusNextOnEmpty: FocusNext.currentItem,
89 focusParentTrigger: true,
90 });
91 }
92 break;
93
94 case TAB:
95 if (!hasModifierKey(event, 'altKey', 'metaKey', 'ctrlKey')) {
96 this.menuStack.closeAll({focusParentTrigger: true});
97 }
98 break;
99
100 default:
101 keyManager.onKeydown(event);
102 }
103 }
104
105 /**
106 * Set focus the either the current, previous or next item based on the FocusNext event.

Callers

nothing calls this directly

Calls 5

hasModifierKeyFunction · 0.90
setFocusOriginMethod · 0.80
onKeydownMethod · 0.65
closeMethod · 0.45
closeAllMethod · 0.45

Tested by

no test coverage detected