diff options
author | dnicoara@chromium.org <dnicoara@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-11-27 19:04:04 +0000 |
---|---|---|
committer | dnicoara@chromium.org <dnicoara@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-11-27 19:04:04 +0000 |
commit | 4249a4283f5a12360e7a211ca4a29bd75acc7043 (patch) | |
tree | e4ed272990e4b77a9a8160b65469665e0a8b3195 /content/shell/browser/shell.h | |
parent | 0554b5d365446ffb5ab617edd27921ee9d9de31d (diff) | |
download | chromium_src-4249a4283f5a12360e7a211ca4a29bd75acc7043.zip chromium_src-4249a4283f5a12360e7a211ca4a29bd75acc7043.tar.gz chromium_src-4249a4283f5a12360e7a211ca4a29bd75acc7043.tar.bz2 |
Call PlatformExit when closing all windows in Shell.
In the views implementation when shell_views.cc is closed it deletes the
views::Widget which will delete DesktopNativeWidgetAura and, in turn it will
delete the compositor.
With toolkit_views=0 shell_aura.cc is responsible for creating and destroying
the ui::Compositor. Currently the compositor is deleted on PlatformExit which
is done after the message loop finishes. However when the shell is closing it
will schedule a draw update. Since PlatformExit is executed too late, the
compositor is still around and will try to perform the update.
TEST=Ran content_browsertests
BUG=315392
Review URL: https://codereview.chromium.org/83943004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@237607 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'content/shell/browser/shell.h')
-rw-r--r-- | content/shell/browser/shell.h | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/content/shell/browser/shell.h b/content/shell/browser/shell.h index 0b9fe7f..20515f6 100644 --- a/content/shell/browser/shell.h +++ b/content/shell/browser/shell.h @@ -93,9 +93,6 @@ class Shell : public WebContentsDelegate, // Closes all windows and returns. This runs a message loop. static void CloseAllWindows(); - // Closes all windows and exits. - static void PlatformExit(); - // Used for content_browsertests. Called once. static void SetShellCreatedCallback( base::Callback<void(Shell*)> shell_created_callback); @@ -170,6 +167,8 @@ class Shell : public WebContentsDelegate, // Helper for one time initialization of application static void PlatformInitialize(const gfx::Size& default_window_size); + // Helper for one time deinitialization of platform specific state. + static void PlatformExit(); // Adjust the size when Blink sends 0 for width and/or height. // This happens when Blink requests a default-sized window. |