To handle this issue appropriately, a few possible solutions could be:
Provide a Binding argument to the Menu, allowing for better control over its state.
Disable the button when the Menu is visible. This will prevent another presentation view from attempting to open while the Menu is open.
Ensure that if a button is pressed, any already presented Menu is properly dismissed before trying to present another view.
The most suitable solution would likely be to disable any background buttons while the Menu is visible.