fixes #3: quit apps after 2 seconds delay #9
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There are a multitude of ways to accomplish this, but I thought this one was the simplest.
The current code checks in
closeApplication()
that the app in question has "one window", which really means that it just closed its last window.The new code just uses the same app object that received the window destroy event (passing it) and checks it after two seconds to make sure it doesn't have any windows now. This allows the user to, say, reopen a window for the app after closing the last one, as long as it is inside of two seconds.
Two seconds seems fair to avoid any problems with, say, re-launching a manually quit app.
This also requires removing
@objc
fromcloseApplication()
, where it's not clear why that was there in the first place anyway.