I ended up solving this purely by accident, and it was the most ridiculous thing too. There was nothing wrong with the code. I use a Mac for development in docker. After at least 2 to 3 days of fighting this, I happened to notice a similar dialog didn't work in another un-related application. Macs rarely show bugs or problems, and they're meant to not be rebooted, so it never occurred to me that I might've hit a bug that turned off file dialogs on the Mac interface. If I hadn't noticed this by accident, I could have gone a month without resolving this. So, it was an event problem, just not in my application. Some bug in the dialog events had turned off the file dialogs on the mac interface completely and globally. A simple reboot and re-loading the docker images solved it.
Thanks.