diff options
Diffstat (limited to 'chrome/browser/views')
-rw-r--r-- | chrome/browser/views/frame/browser_view2.cc | 7 | ||||
-rw-r--r-- | chrome/browser/views/info_bar_view.cc | 10 | ||||
-rw-r--r-- | chrome/browser/views/old_frames/vista_frame.cc | 7 | ||||
-rw-r--r-- | chrome/browser/views/old_frames/xp_frame.cc | 7 |
4 files changed, 22 insertions, 9 deletions
diff --git a/chrome/browser/views/frame/browser_view2.cc b/chrome/browser/views/frame/browser_view2.cc index 87397a6..e4a81c1 100644 --- a/chrome/browser/views/frame/browser_view2.cc +++ b/chrome/browser/views/frame/browser_view2.cc @@ -20,6 +20,8 @@ #include "chrome/browser/views/tab_contents_container_view.h" #include "chrome/browser/views/tabs/tab_strip.h" #include "chrome/browser/views/toolbar_view.h" +#include "chrome/browser/web_contents.h" +#include "chrome/browser/web_contents_view.h" #include "chrome/common/chrome_switches.h" #include "chrome/common/drag_drop_types.h" #include "chrome/common/l10n_util.h" @@ -999,8 +1001,9 @@ bool BrowserView2::MaybeShowBookmarkBar(TabContents* contents) { bool BrowserView2::MaybeShowInfoBar(TabContents* contents) { ChromeViews::View* new_info_bar = NULL; - if (contents && contents->IsInfoBarVisible()) - new_info_bar = contents->GetInfoBarView(); + if (contents && contents->AsWebContents() && + contents->AsWebContents()->view()->IsInfoBarVisible()) + new_info_bar = contents->AsWebContents()->view()->GetInfoBarView(); return UpdateChildViewAndLayout(new_info_bar, &active_info_bar_); } diff --git a/chrome/browser/views/info_bar_view.cc b/chrome/browser/views/info_bar_view.cc index 00a704f9..17d4a2a 100644 --- a/chrome/browser/views/info_bar_view.cc +++ b/chrome/browser/views/info_bar_view.cc @@ -9,6 +9,7 @@ #include "chrome/browser/navigation_entry.h" #include "chrome/browser/tab_contents_delegate.h" #include "chrome/browser/web_contents.h" +#include "chrome/browser/web_contents_view.h" #include "chrome/common/gfx/chrome_canvas.h" #include "chrome/common/l10n_util.h" #include "chrome/common/resource_bundle.h" @@ -128,10 +129,13 @@ void InfoBarView::ViewHierarchyChanged(bool is_add, View *parent, expire_map_[child] = GetActiveID(); } - if (web_contents_->IsInfoBarVisible()) { + // TODO(brettw) clean up the ownership of this info bar. It should be owned + // by the web contents view instead. In the meantime, we assume we're owned + // by a WebContents. + if (web_contents_->AsWebContents()->view()->IsInfoBarVisible()) { web_contents_->ToolbarSizeChanged(false); } else { - web_contents_->SetInfoBarVisible(true); + web_contents_->view()->SetInfoBarVisible(true); } } } @@ -231,7 +235,7 @@ void InfoBarView::Observe(NotificationType type, if (GetChildViewCount() == 0) { // All our views have been removed, no need to stay visible. - web_contents_->SetInfoBarVisible(false); + web_contents_->view()->SetInfoBarVisible(false); } else if (web_contents_) { // This triggers a layout. web_contents_->ToolbarSizeChanged(false); diff --git a/chrome/browser/views/old_frames/vista_frame.cc b/chrome/browser/views/old_frames/vista_frame.cc index 3c25943..592237a 100644 --- a/chrome/browser/views/old_frames/vista_frame.cc +++ b/chrome/browser/views/old_frames/vista_frame.cc @@ -26,6 +26,8 @@ #include "chrome/browser/views/frame/browser_view.h" #include "chrome/browser/views/tab_contents_container_view.h" #include "chrome/browser/views/tabs/tab_strip.h" +#include "chrome/browser/web_contents.h" +#include "chrome/browser/web_contents_view.h" #include "chrome/common/chrome_constants.h" #include "chrome/common/gfx/chrome_canvas.h" #include "chrome/common/l10n_util.h" @@ -1616,8 +1618,9 @@ void VistaFrame::ShelfVisibilityChangedImpl(TabContents* current_tab) { changed |= UpdateChildViewAndLayout(new_shelf, &shelf_view_); ChromeViews::View* new_info_bar = NULL; - if (current_tab && current_tab->IsInfoBarVisible()) - new_info_bar = current_tab->GetInfoBarView(); + WebContents* web_contents = current_tab ? current_tab->AsWebContents() : NULL; + if (web_contents && web_contents->view()->IsInfoBarVisible()) + new_info_bar = web_contents->view()->GetInfoBarView(); changed |= UpdateChildViewAndLayout(new_info_bar, &info_bar_view_); ChromeViews::View* new_bookmark_bar_view = NULL; diff --git a/chrome/browser/views/old_frames/xp_frame.cc b/chrome/browser/views/old_frames/xp_frame.cc index cb0220c..5672ec2 100644 --- a/chrome/browser/views/old_frames/xp_frame.cc +++ b/chrome/browser/views/old_frames/xp_frame.cc @@ -23,6 +23,8 @@ #include "chrome/browser/views/old_frames/point_buffer.h" #include "chrome/browser/views/tab_contents_container_view.h" #include "chrome/browser/views/tabs/tab_strip.h" +#include "chrome/browser/web_contents.h" +#include "chrome/browser/web_contents_view.h" #include "chrome/common/chrome_constants.h" #include "chrome/common/chrome_switches.h" #include "chrome/common/gfx/chrome_canvas.h" @@ -2494,8 +2496,9 @@ void XPFrame::ShelfVisibilityChangedImpl(TabContents* current_tab) { changed |= UpdateChildViewAndLayout(new_shelf, &shelf_view_); ChromeViews::View* new_info_bar = NULL; - if (current_tab && current_tab->IsInfoBarVisible()) - new_info_bar = current_tab->GetInfoBarView(); + WebContents* web_contents = current_tab ? current_tab->AsWebContents() : NULL; + if (web_contents && web_contents->view()->IsInfoBarVisible()) + new_info_bar = web_contents->view()->GetInfoBarView(); changed |= UpdateChildViewAndLayout(new_info_bar, &info_bar_view_); ChromeViews::View* new_bookmark_bar_view = NULL; |