Index: chrome/browser/ui/views/frame/browser_frame_gtk.cc |
=================================================================== |
--- chrome/browser/ui/views/frame/browser_frame_gtk.cc (revision 85284) |
+++ chrome/browser/ui/views/frame/browser_frame_gtk.cc (working copy) |
@@ -17,38 +17,23 @@ |
#include "views/widget/root_view.h" |
#include "views/window/hit_test.h" |
-#if !defined(OS_CHROMEOS) |
-// static (Factory method.) |
-BrowserFrame* BrowserFrame::Create(BrowserView* browser_view, |
- Profile* profile) { |
- BrowserFrameGtk* frame = new BrowserFrameGtk(browser_view, profile); |
- frame->InitBrowserFrame(); |
- return frame; |
-} |
-#endif |
- |
// static |
const gfx::Font& BrowserFrame::GetTitleFont() { |
static gfx::Font *title_font = new gfx::Font(); |
return *title_font; |
} |
-BrowserFrameGtk::BrowserFrameGtk(BrowserView* browser_view, Profile* profile) |
- : BrowserFrame(browser_view), |
- ALLOW_THIS_IN_INITIALIZER_LIST(delegate_(this)), |
+BrowserFrameGtk::BrowserFrameGtk(BrowserFrame* browser_frame, |
+ BrowserView* browser_view) |
+ : views::WindowGtk(browser_frame), |
browser_view_(browser_view) { |
- set_native_browser_frame(this); |
- browser_view_->set_frame(this); |
+ // Don't focus anything on creation, selecting a tab will set the focus. |
+ set_focus_on_creation(false); |
} |
BrowserFrameGtk::~BrowserFrameGtk() { |
} |
-void BrowserFrameGtk::InitBrowserFrame() { |
- WindowGtk::GetWindow()->InitWindow(views::Window::InitParams(browser_view_)); |
- // Don't focus anything on creation, selecting a tab will set the focus. |
-} |
- |
//////////////////////////////////////////////////////////////////////////////// |
// BrowserFrameGtk, NativeBrowserFrame implementation: |
@@ -60,58 +45,22 @@ |
return this; |
} |
-BrowserNonClientFrameView* BrowserFrameGtk::CreateBrowserNonClientFrameView() { |
- return browser::CreateBrowserNonClientFrameView(this, browser_view_); |
-} |
- |
int BrowserFrameGtk::GetMinimizeButtonOffset() const { |
NOTIMPLEMENTED(); |
return 0; |
} |
-ThemeProvider* BrowserFrameGtk::GetThemeProviderForFrame() const { |
- // This is implemented for a different interface than GetThemeProvider is, |
- // but they mean the same things. |
- return GetThemeProvider(); |
-} |
- |
-bool BrowserFrameGtk::AlwaysUseNativeFrame() const { |
- return false; |
-} |
- |
void BrowserFrameGtk::TabStripDisplayModeChanged() { |
- if (GetRootView()->has_children()) { |
+ if (GetWidget()->GetRootView()->has_children()) { |
// Make sure the child of the root view gets Layout again. |
- GetRootView()->GetChildViewAt(0)->InvalidateLayout(); |
+ GetWidget()->GetRootView()->GetChildViewAt(0)->InvalidateLayout(); |
} |
- GetRootView()->Layout(); |
+ GetWidget()->GetRootView()->Layout(); |
} |
//////////////////////////////////////////////////////////////////////////////// |
// BrowserFrameGtk, WindowGtk overrides : |
-ThemeProvider* BrowserFrameGtk::GetThemeProvider() const { |
- return ThemeServiceFactory::GetForProfile( |
- browser_view_->browser()->profile()); |
-} |
- |
-void BrowserFrameGtk::SetInitialFocus() { |
- browser_view_->RestoreFocus(); |
-} |
- |
-views::RootView* BrowserFrameGtk::CreateRootView() { |
- return delegate_->DelegateCreateRootView(); |
-} |
- |
-bool BrowserFrameGtk::GetAccelerator(int cmd_id, |
- ui::Accelerator* accelerator) { |
- return browser_view_->GetAccelerator(cmd_id, accelerator); |
-} |
- |
-views::NonClientFrameView* BrowserFrameGtk::CreateFrameViewForWindow() { |
- return delegate_->DelegateCreateFrameViewForWindow(); |
-} |
- |
gboolean BrowserFrameGtk::OnWindowStateEvent(GtkWidget* widget, |
GdkEventWindowState* event) { |
bool was_full_screen = IsFullscreen(); |
@@ -132,3 +81,15 @@ |
browser_view_->WindowMoved(); |
return views::WindowGtk::OnConfigureEvent(widget, event); |
} |
+ |
+ |
+//////////////////////////////////////////////////////////////////////////////// |
+// NativeBrowserFrame, public: |
+ |
+// static |
+NativeBrowserFrame* NativeBrowserFrame::CreateNativeBrowserFrame( |
+ BrowserFrame* browser_frame, |
+ BrowserView* browser_view) { |
+ return new BrowserFrameGtk(browser_frame, browser_view); |
+} |
+ |