-
-
Notifications
You must be signed in to change notification settings - Fork 397
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[ATL-483] mac not to quit with all windows closed #487
base: main
Are you sure you want to change the base?
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The IDE won't quit when closing the last window (workspace) but it won't allow me to open anything.
New, Open, Open Recent and Examples will not let me do anything
Fixes #91 |
No explanation was provided for the closure of this PR, so I reopen it. If it is to be closed, the reason must be clearly documented: Was the approach taken in the PR fatally flawed? If so, document exactly what was the flaw so that the mistake can be avoided on the next attempt. Is there some unfinished work on the PR? If so, document exactly what is missing so that work can be completed. |
It would be a lot of work to complete this PR. All menu bar handling is on the renderer side. Each renderer builds its own menu tree and then calls on main to install it (CHANNEL_SET_MENU_WITH_NODE_ID). Main builds a native copy of the menu tree and installs the copy. When a menu item is clicked on main calls back into the renderer to invoke the handler (CHANNEL_MAIN_MENU_ITEM_DID_CLICK). When the last sketch window is closed the native menu bar is left behind. Attempting to execute an item causes main to send a message to the destroyed renderer leading to an uncaught exception. From what I can tell this architecture is inherited from Theia. |
Why
As reported closing the IDE when the last window is closed is an uncommon pattern in IDEs, and for good. This will enable opening projects from within the IDE2 even when no projects are currently open.
How
Listen to quit event and close the application only if not running on macOS
Jira task