angular / angular/components

bug(menu): Right click closes CDK Menu but not Component Menu

Open
#27,913 2 comments 2 reactions 0 assignees View on GitHub
area: material/menu P4
Dominant language
TypeScript
Stars
25k
Forks
6.8k
Avg merge
1d 8h
Merged PRs (30d)
91

Description

### Is this a regression?

- [ ] Yes, this behavior used to work in the previous version

### The previous version in which this bug was not present was

_No response_

### Description

When a mat-menu is opened and the user right clicks anywhere outside the mat-menu it does not close. Whereas for the cdkMenu when you right click outside the menu it close it. Is this the expected behaviour?

And is there any way to make the cdkMenu behave the same as mat-menu?

This makes inspecting the cdkMenu/cdkMenuItem etc. very hard as the menu disappears in the dom before I can open the console and inspect it.

### Reproduction

StackBlitz link: https://stackblitz.com/run?file=src%2Fapp%2Fcdk-menu-standalone-menu-example.ts
Steps to reproduce:
1. Open the cdkMenu
2. Right click outside the menu
3. The menu closes

StackBlitz link: https://stackblitz.com/run?file=src%2Fapp%2Fmenu-icons-example.ts
Steps to reproduce:
1. Open the mat-menu
2. Right click outside the menu
3. The menu stays open

### Expected Behavior

I expect the cdkMenu and mat-menu to behave the same

### Actual Behavior

cdkMenu and mat-menu do not behave the same when right clicking outside the menu.

### Environment

- Angular: 16
- CDK/Material: 16
- Browser(s): Chrome
- Operating System (e.g. Windows, macOS, Ubuntu): Windows

Contributor guide

Open the contributing guide

Research direction

Start with the two reproduction entry points, src/app/cdk-menu-standalone-menu-example.ts and src/app/menu-icons-example.ts, and compare the CDK menu and mat-menu behavior when right-clicking outside. Trace the outside-click handling for each menu and determine which behavior should be aligned. Done means both examples behave consistently when inspected in Chrome.

Written by the indexing model from the issue text.

Assessment

Tech stack
angular, typescript
Domain
frontend
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.