21 lines
621 B
CoffeeScript
21 lines
621 B
CoffeeScript
|
{EventEmitter} = require 'events'
|
||
|
{autoUpdater} = process.atomBinding 'auto_updater'
|
||
|
|
||
|
autoUpdater.__proto__ = EventEmitter.prototype
|
||
|
|
||
|
autoUpdater.quitAndInstall = ->
|
||
|
# If we don't have any window then quitAndInstall immediately.
|
||
|
BrowserWindow = require 'browser-window'
|
||
|
windows = BrowserWindow.getAllWindows()
|
||
|
if windows.length is 0
|
||
|
@_quitAndInstall()
|
||
|
return
|
||
|
|
||
|
# Do the restart after all windows have been closed.
|
||
|
app = require 'app'
|
||
|
app.removeAllListeners 'window-all-closed'
|
||
|
app.once 'window-all-closed', @_quitAndInstall.bind(this)
|
||
|
win.close() for win in windows
|
||
|
|
||
|
module.exports = autoUpdater
|