If your users are clicking a button then it should actually show the permission prompt, unless you're losing the user interaction somewhere in the callback (by doing something async first)
I guess this is then happening because I'm first checking if there's a subscription via `pushManager.getSubscription` before creating a new one in the event handler.
Yep, dropping getSubscription makes the popup appear again.