During quit, close unloaded windows

Released under CC0.
This commit is contained in:
Stepan Hruda
2018-08-14 17:44:11 -04:00
parent 4dd4123aa1
commit 12c4e596b9
2 changed files with 33 additions and 1 deletions

View File

@@ -437,7 +437,14 @@ class AtomApplication extends EventEmitter {
if (!this.quitting) {
this.quitting = true
event.preventDefault()
const windowUnloadPromises = this.getAllWindows().map(window => window.prepareToUnload())
const windowUnloadPromises = this.getAllWindows().map(async window => {
const unloaded = await window.prepareToUnload()
if (unloaded) {
window.close()
await window.closedPromise
}
return unloaded
})
const windowUnloadedResults = await Promise.all(windowUnloadPromises)
if (windowUnloadedResults.every(Boolean)) {
app.quit()