diff options
author | oshima@chromium.org <oshima@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-11-16 19:50:01 +0000 |
---|---|---|
committer | oshima@chromium.org <oshima@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-11-16 19:50:01 +0000 |
commit | 480bcfb750388f78e19ae49a8aa8ac483b3d734e (patch) | |
tree | 4876fc9a00467c6b663d62b438a9218f07e1073b /views | |
parent | 79acf8115614a169195709712e84bd36cee66c39 (diff) | |
download | chromium_src-480bcfb750388f78e19ae49a8aa8ac483b3d734e.zip chromium_src-480bcfb750388f78e19ae49a8aa8ac483b3d734e.tar.gz chromium_src-480bcfb750388f78e19ae49a8aa8ac483b3d734e.tar.bz2 |
Fix fullscreen mode on aura
* Switching to fullscreen on aura is synchronous. Use the same path as windows.
* Use dispatcher to run all pending in in_process_browser_tests.
* Check if the window is already destroyed in NatveWidgetAura::Hide
BUG=103485
TEST=following tests should pass with this patch on aura: BrowserTest.TestFullscreenBubbleMouseLockState
BrowserTest.TestNewTabExitsFullscreen
BrowserTest.TestTabExitsItselfFromFullscreen
Review URL: http://codereview.chromium.org/8571026
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@110337 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'views')
-rw-r--r-- | views/widget/native_widget_aura.cc | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/views/widget/native_widget_aura.cc b/views/widget/native_widget_aura.cc index 243d9c5..fe0d3d1 100644 --- a/views/widget/native_widget_aura.cc +++ b/views/widget/native_widget_aura.cc @@ -349,7 +349,13 @@ void NativeWidgetAura::SetShape(gfx::NativeRegion region) { } void NativeWidgetAura::Close() { - Hide(); + // |window_| may already be deleted by parent window. This can happen + // when this widget is child widget or has transient parent + // and ownership is WIDGET_OWNS_NATIVE_WIDGET. + DCHECK(window_ || + ownership_ == Widget::InitParams::WIDGET_OWNS_NATIVE_WIDGET); + if (window_) + Hide(); window_->SetIntProperty(aura::kModalKey, 0); |