* Fix app.makeSingleInstance hanging on posix systems
Wait for the IO thread to be a thing before attempting to listen on the socket
Fixes#9880
* Move OnBrowserReady call to PreMainMessageLoopRun to account for timing issues on macOS
* Woops, how did that happen ;)
* Refactor as per @zcbenz comments
Also fix issue where we run the single instance callback *not* on the UI thread,
this apparently results in a hung process.
* Appease the linting gods
* Create watcher when message loop is ready
* spec: Add test case for app.makeSingleInstance
* Fix missing extension when saving a file without filters
Previously, when triggering the save dialog through e.g. `<a download>`
links (e.g. http://jsfiddle.net/koldev/cW7W5/), the extension was only
saved if Finder was set to show all extensions by default. We now always
display the extension to make sure that it is saved.
If we want to keep the extension hidden, we could also populate the
allowed file types array with the extension from the default filename,
but that would have interfered with how we set the filters.
* Try to make test less flaky
* Try simpler test
* Fix stdout detection
* Try longer timeout on test