diff --git a/packages/core/src/Menu/MenuContentImpl.vue b/packages/core/src/Menu/MenuContentImpl.vue index 686074724..89fd45059 100644 --- a/packages/core/src/Menu/MenuContentImpl.vue +++ b/packages/core/src/Menu/MenuContentImpl.vue @@ -169,6 +169,7 @@ function handleKeyDown(event: KeyboardEvent) { const target = event.target as HTMLElement const isKeyDownInside = target.closest('[data-reka-menu-content]') === event.currentTarget + const isKeyDownInTextField = ['input', 'textarea'].includes(target.tagName.toLowerCase()) const isModifierKey = event.ctrlKey || event.altKey || event.metaKey const isCharacterKey = event.key.length === 1 @@ -197,7 +198,7 @@ function handleKeyDown(event: KeyboardEvent) { // menus should not be navigated using tab key so we prevent it if (event.key === 'Tab') event.preventDefault() - if (!isModifierKey && isCharacterKey) + if (!isModifierKey && isCharacterKey && !isKeyDownInTextField) handleTypeaheadSearch(event.key, collectionItems) } diff --git a/packages/core/src/index.ts b/packages/core/src/index.ts index 26be7cfb1..869149051 100644 --- a/packages/core/src/index.ts +++ b/packages/core/src/index.ts @@ -21,6 +21,7 @@ export * from './FocusScope' export * from './HoverCard' export * from './Label' export * from './Listbox' +export * from './Menu' export * from './Menubar' export * from './NavigationMenu' export * from './NumberField'