-
Notifications
You must be signed in to change notification settings - Fork 6.8k
Open
Labels
featureThis issue represents a new feature or feature request rather than a bug or bug fixThis issue represents a new feature or feature request rather than a bug or bug fixneeds triageThis issue needs to be triaged by the teamThis issue needs to be triaged by the team
Description
Feature Description
For a long time we wanted to be able to cancel dialog closure, in #14292. It was solved via a new option, closePredicate, in #14292. But that new option does not support async code. And so we cannot, for example, ask user for the confirmation to close the dialog (via a second dialog), nor do XHR to verify things on server-side.
This kind of use case was already mentioned by @teolag in #14292 (comment), but that specific part of the message was left unanswered. And @Nakira had to come up with a custom solution to solve this in #14292 (comment)
Use Case
I want the dialog closure to wait until I know whether it can be closed. Possibly via asking the user that he is OK to lose all the data he just input in the dialog, like so:
this.matDialog.open(MyDialogComponent, {
closePredicate: async () => await askUserIfReallySure(),
});teolag
Metadata
Metadata
Assignees
Labels
featureThis issue represents a new feature or feature request rather than a bug or bug fixThis issue represents a new feature or feature request rather than a bug or bug fixneeds triageThis issue needs to be triaged by the teamThis issue needs to be triaged by the team