bug(cdk-menu): cdkMenuTriggerFor within cdkContextMenuTriggerFor causes repositioning when hovered
- 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
Using a `[cdkMenuTriggerFor]` within a container that has a `[cdkContextMenuTriggerFor]` for the same cdkMenu.
Current behavior:
When a cdkMenu is opened by the `[cdkContextMenuTriggerFor]` the cdkMenu it will be repositioned to the `[cdkMenuTriggerFor]` when the `[cdkMenuTriggerFor]` is hovered.
Expected behavior:
the cdkMenu should stay at its current location, even if `[cdkMenuTriggerFor]` is hovered.
In case this is confirmed as a bug, I could provide a PR fixing the issue
### Reproduction
Stackblitz: https://stackblitz.com/edit/components-issue-uo4741?file=src/app/example-component.html
Steps to reproduce:
1. Right click on Lucas ipsum
2. hover Open Context Menu button
### Expected Behavior
contextMenu does not change position
### Actual Behavior
contextMenu moves to the location of the button trigger
### Environment
- Angular: 15
- CDK/Material: 15
- Browser(s): Firefox, Chrome
- Operating System (e.g. Windows, macOS, Ubuntu): Ubuntu
Can also be reproduced with the dev-app in the components repo
Contributor guide
Research direction
Start with the linked Stackblitz reproduction and compare it with the components repository's dev-app. Reproduce the context menu repositioning by right-clicking Lucas ipsum and hovering the Open Context Menu button; done means the menu remains at its original location when the nested trigger is hovered.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- frontend
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100