commit | 2e1e507d5b922a215e32bf7981e72fe3883997be | [log] [tgz] |
---|---|---|
author | Friedrich Horschig [CET] <fhorschig@chromium.org> | Tue Dec 11 10:52:00 2018 |
committer | Commit Bot <commit-bot@chromium.org> | Tue Dec 11 10:52:00 2018 |
tree | 5ee241940cacc4df4215080051d4b9826aa4e448 | |
parent | 447dc435c51c829be3b61997f8d8fb2e29a1fb5a [diff] |
Revert "RemoteMacViews: Fix hang at command-Q" This reverts commit 464fae69315d22b6bce86525bb73305bd0cc7296. Reason for revert: Causes heavy flakiness (14/17 on Mac 10.11) and attempted fix showed no effect: https://crrev.com/c/1369136 TBR=ccameron@chromium.org Bug: 902583 Original change's description: > RemoteMacViews: Fix hang at command-Q > > When we call -[NSApp terminate] in the app shim process, this does > not immediately terminate. Rather, it > 0. Sends the message appShimController_->host()->QuitApp() and waits > for a reply before actually terminating. > 1. In the browser, this call hits ExtensionAppShimHandler:: > CloseBrowsersForApp > 2. Which will end up calling NativeWidgetMac::Close > 3. Which will then politely request that the app shim process close > the corresponding window via > views_bridge_mac::mojom::BridgedNativeWidget::CloseWindow > 4. Which will send an ack back to the browser via > views_bridge_mac::mojom::BridgedNativeWidgetHost::OnWindowHasClosed > 5. Whereupon the browser window will be registered as closed, and a > close message will be sent to the app shim, and the wait for > termination will break > > This ends up not working at step 3. Our suspended terminate ends up > running a nested message loop inside a mojo message handler, and so > it will never execute the CloseWindow message, and therefore never > close. > > Change the logic at [0] to send the QuitApp message, and then > immediately terminate the application. > > Bug: 902583 > Change-Id: I60fd7b5fdf9f145369d06219e8ebef36cdcd0f44 > Reviewed-on: https://chromium-review.googlesource.com/c/1364220 > Reviewed-by: Robert Sesek <rsesek@chromium.org> > Commit-Queue: ccameron <ccameron@chromium.org> > Cr-Commit-Position: refs/heads/master@{#614922} TBR=ccameron@chromium.org,rsesek@chromium.org # Not skipping CQ checks because original CL landed > 1 day ago. Bug: 902583 Change-Id: I34a3300dc188cdd0de58692042ce131a8639117f Reviewed-on: https://chromium-review.googlesource.com/c/1371475 Reviewed-by: Friedrich Horschig [CET] <fhorschig@chromium.org> Commit-Queue: Friedrich Horschig [CET] <fhorschig@chromium.org> Cr-Commit-Position: refs/heads/master@{#615485}
Chromium is an open-source browser project that aims to build a safer, faster, and more stable way for all users to experience the web.
The project's web site is https://www.chromium.org.
Documentation in the source is rooted in docs/README.md.
Learn how to Get Around the Chromium Source Code Directory Structure .