| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #ifndef CHROME_BROWSER_UI_VIEWS_FRAME_BROWSER_DESKTOP_ROOT_WINDOW_HOST_X11_H_ | 5 #ifndef CHROME_BROWSER_UI_VIEWS_FRAME_BROWSER_DESKTOP_ROOT_WINDOW_HOST_X11_H_ |
| 6 #define CHROME_BROWSER_UI_VIEWS_FRAME_BROWSER_DESKTOP_ROOT_WINDOW_HOST_X11_H_ | 6 #define CHROME_BROWSER_UI_VIEWS_FRAME_BROWSER_DESKTOP_ROOT_WINDOW_HOST_X11_H_ |
| 7 | 7 |
| 8 #include "ui/views/widget/desktop_aura/desktop_root_window_host_x11.h" | 8 #include "ui/views/widget/desktop_aura/desktop_root_window_host_x11.h" |
| 9 #include "chrome/browser/ui/views/frame/browser_desktop_root_window_host.h" | 9 #include "chrome/browser/ui/views/frame/browser_desktop_root_window_host.h" |
| 10 #include "chrome/browser/ui/views/frame/global_menu_bar_x11.h" |
| 10 | 11 |
| 11 class BrowserFrame; | 12 class BrowserFrame; |
| 12 class BrowserView; | 13 class BrowserView; |
| 13 | 14 |
| 14 namespace views { | 15 namespace views { |
| 15 class DesktopNativeWidgetAura; | 16 class DesktopNativeWidgetAura; |
| 16 } | 17 } |
| 17 | 18 |
| 18 class BrowserDesktopRootWindowHostX11 | 19 class BrowserDesktopRootWindowHostX11 |
| 19 : public BrowserDesktopRootWindowHost, | 20 : public BrowserDesktopRootWindowHost, |
| 20 public views::DesktopRootWindowHostX11 { | 21 public views::DesktopRootWindowHostX11 { |
| 21 public: | 22 public: |
| 22 BrowserDesktopRootWindowHostX11( | 23 BrowserDesktopRootWindowHostX11( |
| 23 views::internal::NativeWidgetDelegate* native_widget_delegate, | 24 views::internal::NativeWidgetDelegate* native_widget_delegate, |
| 24 views::DesktopNativeWidgetAura* desktop_native_widget_aura, | 25 views::DesktopNativeWidgetAura* desktop_native_widget_aura, |
| 25 const gfx::Rect& initial_bounds); | 26 const gfx::Rect& initial_bounds, |
| 27 BrowserView* browser_view); |
| 26 virtual ~BrowserDesktopRootWindowHostX11(); | 28 virtual ~BrowserDesktopRootWindowHostX11(); |
| 27 | 29 |
| 28 private: | 30 private: |
| 29 // Overridden from BrowserDesktopRootWindowHost: | 31 // Overridden from BrowserDesktopRootWindowHost: |
| 30 virtual DesktopRootWindowHost* AsDesktopRootWindowHost() OVERRIDE; | 32 virtual DesktopRootWindowHost* AsDesktopRootWindowHost() OVERRIDE; |
| 31 virtual int GetMinimizeButtonOffset() const OVERRIDE; | 33 virtual int GetMinimizeButtonOffset() const OVERRIDE; |
| 32 virtual bool UsesNativeSystemMenu() const OVERRIDE; | 34 virtual bool UsesNativeSystemMenu() const OVERRIDE; |
| 33 | 35 |
| 36 // Overridden from views::DesktopRootWindowHostX11: |
| 37 virtual aura::RootWindow* Init( |
| 38 aura::Window* content_window, |
| 39 const views::Widget::InitParams& params) OVERRIDE; |
| 40 virtual void CloseNow() OVERRIDE; |
| 41 |
| 42 BrowserView* browser_view_; |
| 43 |
| 44 // Each browser frame maintains its own menu bar object because the lower |
| 45 // level dbus protocol associates a xid to a menu bar; we can't map multiple |
| 46 // xids to the same menu bar. |
| 47 scoped_ptr<GlobalMenuBarX11> global_menu_bar_x11_; |
| 48 |
| 34 DISALLOW_COPY_AND_ASSIGN(BrowserDesktopRootWindowHostX11); | 49 DISALLOW_COPY_AND_ASSIGN(BrowserDesktopRootWindowHostX11); |
| 35 }; | 50 }; |
| 36 | 51 |
| 37 | |
| 38 #endif // CHROME_BROWSER_UI_VIEWS_FRAME_BROWSER_DESKTOP_ROOT_WINDOW_HOST_X11_H_ | 52 #endif // CHROME_BROWSER_UI_VIEWS_FRAME_BROWSER_DESKTOP_ROOT_WINDOW_HOST_X11_H_ |
| OLD | NEW |