diff options
author | sky@chromium.org <sky@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-01-11 16:29:39 +0000 |
---|---|---|
committer | sky@chromium.org <sky@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-01-11 16:29:39 +0000 |
commit | 88ec4da3fd210b53e5de296643923e810474267e (patch) | |
tree | 02d416c743a25dc807325cfbf83874600cf9f8a4 /chrome/browser/views/frame/browser_frame_gtk.cc | |
parent | d921e845da88fb6a132dfb702ee787adac2a804a (diff) | |
download | chromium_src-88ec4da3fd210b53e5de296643923e810474267e.zip chromium_src-88ec4da3fd210b53e5de296643923e810474267e.tar.gz chromium_src-88ec4da3fd210b53e5de296643923e810474267e.tar.bz2 |
Fixes two fullscreen bugs on views/gtk:
. On X changing fullscreen is asynchronous. This means we have to ask
the window to change it's fullscreen state, then once changed update
the necessary things.
. ExtensionShelf is needlessly triggering a bunch of layouts when we
toggle fullscreen state.
BUG=31143
TEST=see bug
Review URL: http://codereview.chromium.org/542001
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@35905 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/views/frame/browser_frame_gtk.cc')
-rw-r--r-- | chrome/browser/views/frame/browser_frame_gtk.cc | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/chrome/browser/views/frame/browser_frame_gtk.cc b/chrome/browser/views/frame/browser_frame_gtk.cc index dfd7717..04775c6 100644 --- a/chrome/browser/views/frame/browser_frame_gtk.cc +++ b/chrome/browser/views/frame/browser_frame_gtk.cc @@ -159,6 +159,7 @@ bool BrowserFrameGtk::GetAccelerator(int cmd_id, gboolean BrowserFrameGtk::OnWindowStateEvent(GtkWidget* widget, GdkEventWindowState* event) { + bool was_full_screen = IsFullscreen(); gboolean result = views::WindowGtk::OnWindowStateEvent(widget, event); if ((!IsVisible() || IsMinimized()) && browser_view_->GetStatusBubble()) { // The window is effectively hidden. We have to hide the status bubble as @@ -166,6 +167,8 @@ gboolean BrowserFrameGtk::OnWindowStateEvent(GtkWidget* widget, // with the parent. browser_view_->GetStatusBubble()->Hide(); } + if (was_full_screen != IsFullscreen()) + browser_view_->FullScreenStateChanged(); return result; } |