feat(CdkMenu/CdkContextMenuTriggerFor): Allow CdkMenu to be programmatically opened/closed
- Lingua principale
- TypeScript
- Stelle
- 25k
- Fork
- 6.8k
- Merge medio
- 1g 8h
- PR unite (30g)
- 91
Descrizione
## Feature Description
### Current Behaviour
The directive `CdkMenu` is used with combination of `CdkContextMenuTriggerFor`. When user right-clicks (context-menu event), the menu gets opened and clicking on outside of the menu will close the menu.
### New Feature Requested
It would be great if user can manually/programmatically open/close the menu. And also disable closing the menu clicking outside.
#### Possible Solutions
1. Add a boolean input property `cdkContextMenuDisableCloseOnOutsideClick` - This will disable closing the `CdkMenu` on outside click
2. Add an event emitter property `cdkContextMenuTriggered` - This will emit everytime user right-clicks (context-menu event) with the coordinates
3. Add an event emitter property `cdkContextMenuClickedOutside` - This will emit everytime user clicks outside of the `CdkMenu`
### Use Case
This will allow users to handle animations with `CdkMenu` if they want to apply on open/close.
Guida per i contributori
Apri la guida per i contributori
Direzione di ricerca
Inizia leggendo i punti di ingresso delle direttive CdkMenu e CdkContextMenuTriggerFor e tracciando il comportamento esistente di apertura del menu contestuale e chiusura al clic esterno. Chiarisci l’API pubblica e la semantica degli eventi per l’apertura/chiusura programmatica, la disabilitazione della chiusura al clic esterno e le notifiche relative al menu contestuale/al clic esterno. Il lavoro è completato quando il comportamento concordato è implementato e coperto dai test pertinenti del menu.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- angular, typescript
- Ambito
- frontend
- Tipo di issue
- Funzionalità
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Stato di attività
- Ferma
- Chiarezza
- Abbastanza chiara
- Idoneità per principianti
- 35/100