summaryrefslogtreecommitdiffstats
path: root/chrome/browser/views/frame/browser_view.cc
diff options
context:
space:
mode:
authorsky@chromium.org <sky@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-10-14 21:14:20 +0000
committersky@chromium.org <sky@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-10-14 21:14:20 +0000
commitb3dbb00dddff5009456dd5f6f0667603581909aa (patch)
treec3f5b16cb600e04ac2864c66dd059ebaaa870cbe /chrome/browser/views/frame/browser_view.cc
parentf3eff890dc9be42d479833d6461a561b7b14bf6d (diff)
downloadchromium_src-b3dbb00dddff5009456dd5f6f0667603581909aa.zip
chromium_src-b3dbb00dddff5009456dd5f6f0667603581909aa.tar.gz
chromium_src-b3dbb00dddff5009456dd5f6f0667603581909aa.tar.bz2
Gets the full screen bubble to work on views/gtk.
BUG=none TEST=none Review URL: http://codereview.chromium.org/264059 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@29027 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/views/frame/browser_view.cc')
-rw-r--r--chrome/browser/views/frame/browser_view.cc14
1 files changed, 10 insertions, 4 deletions
diff --git a/chrome/browser/views/frame/browser_view.cc b/chrome/browser/views/frame/browser_view.cc
index 87bc366..48f107a 100644
--- a/chrome/browser/views/frame/browser_view.cc
+++ b/chrome/browser/views/frame/browser_view.cc
@@ -836,7 +836,6 @@ bool BrowserView::IsMaximized() const {
}
void BrowserView::SetFullscreen(bool fullscreen) {
-#if defined(OS_WIN)
if (IsFullscreen() == fullscreen)
return; // Nothing to do.
@@ -846,8 +845,10 @@ void BrowserView::SetFullscreen(bool fullscreen) {
// thus are slow and look ugly
ignore_layout_ = true;
LocationBarView* location_bar = toolbar_->location_bar();
+#if defined(OS_WIN)
AutocompleteEditViewWin* edit_view =
static_cast<AutocompleteEditViewWin*>(location_bar->location_entry());
+#endif
if (IsFullscreen()) {
// Hide the fullscreen bubble as soon as possible, since the mode toggle can
// take enough time for the user to notice.
@@ -859,6 +860,7 @@ void BrowserView::SetFullscreen(bool fullscreen) {
if (focus_manager->GetFocusedView() == location_bar)
focus_manager->ClearFocus();
+#if defined(OS_WIN)
// If we don't hide the edit and force it to not show until we come out of
// fullscreen, then if the user was on the New Tab Page, the edit contents
// will appear atop the web contents once we go into fullscreen mode. This
@@ -866,8 +868,11 @@ void BrowserView::SetFullscreen(bool fullscreen) {
// if we don't hide the main window below, we don't get this problem.
edit_view->set_force_hidden(true);
ShowWindow(edit_view->m_hWnd, SW_HIDE);
+#endif
}
+#if defined(OS_WIN)
frame_->GetWindow()->PushForceHidden();
+#endif
// Notify bookmark bar, so it can set itself to the appropriate drawing state.
if (bookmark_bar_view_.get())
@@ -881,22 +886,23 @@ void BrowserView::SetFullscreen(bool fullscreen) {
// Toggle fullscreen mode.
frame_->GetWindow()->SetFullscreen(fullscreen);
- if (IsFullscreen()) {
+ if (fullscreen) {
fullscreen_bubble_.reset(new FullscreenExitBubble(GetWidget(),
browser_.get()));
} else {
+#if defined(OS_WIN)
// Show the edit again since we're no longer in fullscreen mode.
edit_view->set_force_hidden(false);
ShowWindow(edit_view->m_hWnd, SW_SHOW);
+#endif
}
// Undo our anti-jankiness hacks and force the window to relayout now that
// it's in its final position.
ignore_layout_ = false;
Layout();
+#if defined(OS_WIN)
frame_->GetWindow()->PopForceHidden();
-#else
- NOTIMPLEMENTED();
#endif
}