Promises are now not being resolved within the same tick, so give
another tick for the UI to update after all the HTTP calls have
flushed through. This is fairly terrible, but I can't immediately
see a better way of doing this.
The 'loading' tests only worked when run with the other tests and
failed if you just ran the file by itself, because the skin was
loading in the 'joining' tests, but not here.
Also add script for generating the PNGs and add pre-rendered PNGs
for the Linux electron build which means you don't need icns2png
to build it and the Linux icons are straight from the SVG rather
than resized bitmaps.
* Dismiss the notification when it's clicked
* Accept the room object: we need it to view_room
* Desktop app: Un-minimise when notification clicked
* Desktop App: Set App User Model ID so notifications work on
Windows 8!
which it turns out is by far the lesser of two evils.
* Auto-update works with a proxy
* The update process is reasonably atomic & faster, rather than
running the uninstaller then the installer, leaving you with a
broken install if you shut down your machine at the wrong time
* Gets the update URL the same way as on mac, rather than baking
it into the app at build time from package.json. We don't want
it in package.json because only our builds want our update URL.
Amalgamate the electron build packaging into one script.
Use update_base_url so we can compute the actual URL in the
script for windows (because we need to put it in the build) and
at runtime for mac os.
* Remove squirrel hooks (the installing & uninstalling is now
done by the, er, installer)
* Switch to electron-auto-update
* Shorten initial update delay because we no longer need to wait
for squirrel to release a lock file
* Change update URLs because windows is now one installer for
both 32 & 64 bit.
* Update electron-builder to 10 where NSIS is now the default
target for Windows.
* Add linux to the target list, building a deb.
* Remove sqirrel-specific installation spinner
* Remove redundant !**/* from files