I’m not sure how a fix for bug #1674749 would address the use case in the description: a multi-window application (such as web browser) wants to distinguish between:
- please close all windows one by one without retaining state for them - please quit the app, and save the state for all windows and tabs in them -- You received this bug notification because you are a member of Ubuntu Touch seeded packages, which is subscribed to mir in Ubuntu. https://bugs.launchpad.net/bugs/1624407 Title: Add a 'quit' message that is app-wide, as opposed to mir_event_type_close_surface Status in Mir: Triaged Status in mir package in Ubuntu: Triaged Status in qtmir package in Ubuntu: Confirmed Status in unity8 package in Ubuntu: Confirmed Bug description: Currently in unity8, when requesting to "Quit" a running application from the launcher, what happens is that qtmir goes through all its associated windows/surfaces, and closes them one by one. Supposedly, when the last window is closed, the application terminates itself (but this is not necessarily the case, see https://doc.qt.io/qt-5/qguiapplication.html#quitOnLastWindowClosed- prop). This prevents application authors from doing proper cleanup before the app is closed. For example in Qt, the QCoreApplication::aboutToQuit() signal is emitted only after all windows have been closed, so the application doesn’t get a chance to e.g. save the list of open windows (real use case for multi-window browser application which saves the current session). This is similar to unity7’s implementation by the way, but I think it’s wrong. Surely there must be a way (maybe toolkit-specific) to request an app to terminate itself (and fall back to closing all windows if not). To manage notifications about this bug go to: https://bugs.launchpad.net/mir/+bug/1624407/+subscriptions -- Mailing list: https://launchpad.net/~touch-packages Post to : touch-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~touch-packages More help : https://help.launchpad.net/ListHelp