diff --git a/src/cdk-experimental/ui-patterns/behaviors/event-manager/keyboard-event-manager.ts b/src/cdk-experimental/ui-patterns/behaviors/event-manager/keyboard-event-manager.ts index 77d3bb8cce6d..38943ffaadb1 100644 --- a/src/cdk-experimental/ui-patterns/behaviors/event-manager/keyboard-event-manager.ts +++ b/src/cdk-experimental/ui-patterns/behaviors/event-manager/keyboard-event-manager.ts @@ -65,11 +65,15 @@ export class KeyboardEventManager extends EventManager< } private _isMatch(event: T, key: KeyCode, modifiers: ModifierInputs) { + if (!hasModifiers(event, modifiers)) { + return false; + } + if (key instanceof RegExp) { return key.test(event.key); } const keyStr = typeof key === 'string' ? key : key(); - return keyStr.toLowerCase() === event.key.toLowerCase() && hasModifiers(event, modifiers); + return keyStr.toLowerCase() === event.key.toLowerCase(); } }