Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(246)

Unified Diff: chrome/browser/ui/views/frame/browser_frame_gtk.cc

Issue 7015051: Re-land: (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: Created 9 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
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);
+}
+
« no previous file with comments | « chrome/browser/ui/views/frame/browser_frame_gtk.h ('k') | chrome/browser/ui/views/frame/browser_frame_win.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698