| 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 UI_VIEWS_WIDGET_DESKTOP_AURA_DESKTOP_ROOT_WINDOW_HOST_X11_H_ | 5 #ifndef UI_VIEWS_WIDGET_DESKTOP_AURA_DESKTOP_ROOT_WINDOW_HOST_X11_H_ |
| 6 #define UI_VIEWS_WIDGET_DESKTOP_AURA_DESKTOP_ROOT_WINDOW_HOST_X11_H_ | 6 #define UI_VIEWS_WIDGET_DESKTOP_AURA_DESKTOP_ROOT_WINDOW_HOST_X11_H_ |
| 7 | 7 |
| 8 #include <X11/Xlib.h> | 8 #include <X11/Xlib.h> |
| 9 | 9 |
| 10 // Get rid of a macro from Xlib.h that conflicts with Aura's RootWindow class. | 10 // Get rid of a macro from Xlib.h that conflicts with Aura's RootWindow class. |
| (...skipping 109 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 120 virtual void SetWindowIcons(const gfx::ImageSkia& window_icon, | 120 virtual void SetWindowIcons(const gfx::ImageSkia& window_icon, |
| 121 const gfx::ImageSkia& app_icon) OVERRIDE; | 121 const gfx::ImageSkia& app_icon) OVERRIDE; |
| 122 virtual void InitModalType(ui::ModalType modal_type) OVERRIDE; | 122 virtual void InitModalType(ui::ModalType modal_type) OVERRIDE; |
| 123 virtual void FlashFrame(bool flash_frame) OVERRIDE; | 123 virtual void FlashFrame(bool flash_frame) OVERRIDE; |
| 124 virtual void OnRootViewLayout() const OVERRIDE; | 124 virtual void OnRootViewLayout() const OVERRIDE; |
| 125 virtual void OnNativeWidgetFocus() OVERRIDE; | 125 virtual void OnNativeWidgetFocus() OVERRIDE; |
| 126 virtual void OnNativeWidgetBlur() OVERRIDE; | 126 virtual void OnNativeWidgetBlur() OVERRIDE; |
| 127 virtual bool IsAnimatingClosed() const OVERRIDE; | 127 virtual bool IsAnimatingClosed() const OVERRIDE; |
| 128 | 128 |
| 129 // Overridden from aura::RootWindowHost: | 129 // Overridden from aura::RootWindowHost: |
| 130 virtual void SetDelegate(aura::RootWindowHostDelegate* delegate) OVERRIDE; | |
| 131 virtual aura::RootWindow* GetRootWindow() OVERRIDE; | 130 virtual aura::RootWindow* GetRootWindow() OVERRIDE; |
| 132 virtual gfx::AcceleratedWidget GetAcceleratedWidget() OVERRIDE; | 131 virtual gfx::AcceleratedWidget GetAcceleratedWidget() OVERRIDE; |
| 133 virtual void Show() OVERRIDE; | 132 virtual void Show() OVERRIDE; |
| 134 virtual void Hide() OVERRIDE; | 133 virtual void Hide() OVERRIDE; |
| 135 virtual void ToggleFullScreen() OVERRIDE; | 134 virtual void ToggleFullScreen() OVERRIDE; |
| 136 virtual gfx::Rect GetBounds() const OVERRIDE; | 135 virtual gfx::Rect GetBounds() const OVERRIDE; |
| 137 virtual void SetBounds(const gfx::Rect& bounds) OVERRIDE; | 136 virtual void SetBounds(const gfx::Rect& bounds) OVERRIDE; |
| 138 virtual gfx::Insets GetInsets() const OVERRIDE; | 137 virtual gfx::Insets GetInsets() const OVERRIDE; |
| 139 virtual void SetInsets(const gfx::Insets& insets) OVERRIDE; | 138 virtual void SetInsets(const gfx::Insets& insets) OVERRIDE; |
| 140 virtual gfx::Point GetLocationOnNativeScreen() const OVERRIDE; | 139 virtual gfx::Point GetLocationOnNativeScreen() const OVERRIDE; |
| 141 virtual void SetCapture() OVERRIDE; | 140 virtual void SetCapture() OVERRIDE; |
| 142 virtual void ReleaseCapture() OVERRIDE; | 141 virtual void ReleaseCapture() OVERRIDE; |
| 143 virtual void SetCursor(gfx::NativeCursor cursor) OVERRIDE; | 142 virtual void SetCursor(gfx::NativeCursor cursor) OVERRIDE; |
| 144 virtual bool QueryMouseLocation(gfx::Point* location_return) OVERRIDE; | 143 virtual bool QueryMouseLocation(gfx::Point* location_return) OVERRIDE; |
| 145 virtual bool ConfineCursorToRootWindow() OVERRIDE; | 144 virtual bool ConfineCursorToRootWindow() OVERRIDE; |
| 146 virtual void UnConfineCursor() OVERRIDE; | 145 virtual void UnConfineCursor() OVERRIDE; |
| 147 virtual void OnCursorVisibilityChanged(bool show) OVERRIDE; | 146 virtual void OnCursorVisibilityChanged(bool show) OVERRIDE; |
| 148 virtual void MoveCursorTo(const gfx::Point& location) OVERRIDE; | 147 virtual void MoveCursorTo(const gfx::Point& location) OVERRIDE; |
| 149 virtual void SetFocusWhenShown(bool focus_when_shown) OVERRIDE; | |
| 150 virtual void PostNativeEvent(const base::NativeEvent& native_event) OVERRIDE; | 148 virtual void PostNativeEvent(const base::NativeEvent& native_event) OVERRIDE; |
| 151 virtual void OnDeviceScaleFactorChanged(float device_scale_factor) OVERRIDE; | 149 virtual void OnDeviceScaleFactorChanged(float device_scale_factor) OVERRIDE; |
| 152 virtual void PrepareForShutdown() OVERRIDE; | 150 virtual void PrepareForShutdown() OVERRIDE; |
| 153 | 151 |
| 154 private: | 152 private: |
| 155 // Initializes our X11 surface to draw on. This method performs all | 153 // Initializes our X11 surface to draw on. This method performs all |
| 156 // initialization related to talking to the X11 server. | 154 // initialization related to talking to the X11 server. |
| 157 void InitX11Window(const Widget::InitParams& params); | 155 void InitX11Window(const Widget::InitParams& params); |
| 158 | 156 |
| 159 // Creates an aura::RootWindow to contain the |content_window|, along with | 157 // Creates an aura::RootWindow to contain the |content_window|, along with |
| (...skipping 88 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 248 | 246 |
| 249 scoped_ptr<X11WindowEventFilter> x11_window_event_filter_; | 247 scoped_ptr<X11WindowEventFilter> x11_window_event_filter_; |
| 250 scoped_ptr<X11DesktopWindowMoveClient> x11_window_move_client_; | 248 scoped_ptr<X11DesktopWindowMoveClient> x11_window_move_client_; |
| 251 | 249 |
| 252 // TODO(beng): Consider providing an interface to DesktopNativeWidgetAura | 250 // TODO(beng): Consider providing an interface to DesktopNativeWidgetAura |
| 253 // instead of providing this route back to Widget. | 251 // instead of providing this route back to Widget. |
| 254 internal::NativeWidgetDelegate* native_widget_delegate_; | 252 internal::NativeWidgetDelegate* native_widget_delegate_; |
| 255 | 253 |
| 256 DesktopNativeWidgetAura* desktop_native_widget_aura_; | 254 DesktopNativeWidgetAura* desktop_native_widget_aura_; |
| 257 | 255 |
| 258 aura::RootWindowHostDelegate* root_window_host_delegate_; | |
| 259 aura::Window* content_window_; | 256 aura::Window* content_window_; |
| 260 | 257 |
| 261 // We can optionally have a parent which can order us to close, or own | 258 // We can optionally have a parent which can order us to close, or own |
| 262 // children who we're responsible for closing when we CloseNow(). | 259 // children who we're responsible for closing when we CloseNow(). |
| 263 DesktopRootWindowHostX11* window_parent_; | 260 DesktopRootWindowHostX11* window_parent_; |
| 264 std::set<DesktopRootWindowHostX11*> window_children_; | 261 std::set<DesktopRootWindowHostX11*> window_children_; |
| 265 | 262 |
| 266 ObserverList<DesktopRootWindowHostObserverX11> observer_list_; | 263 ObserverList<DesktopRootWindowHostObserverX11> observer_list_; |
| 267 | 264 |
| 268 // The current root window host that has capture. While X11 has something | 265 // The current root window host that has capture. While X11 has something |
| 269 // like Windows SetCapture()/ReleaseCapture(), it is entirely implicit and | 266 // like Windows SetCapture()/ReleaseCapture(), it is entirely implicit and |
| 270 // there are no notifications when this changes. We need to track this so we | 267 // there are no notifications when this changes. We need to track this so we |
| 271 // can notify widgets when they have lost capture, which controls a bunch of | 268 // can notify widgets when they have lost capture, which controls a bunch of |
| 272 // things in views like hiding menus. | 269 // things in views like hiding menus. |
| 273 static DesktopRootWindowHostX11* g_current_capture; | 270 static DesktopRootWindowHostX11* g_current_capture; |
| 274 | 271 |
| 275 // A list of all (top-level) windows that have been created but not yet | 272 // A list of all (top-level) windows that have been created but not yet |
| 276 // destroyed. | 273 // destroyed. |
| 277 static std::list<XID>* open_windows_; | 274 static std::list<XID>* open_windows_; |
| 278 | 275 |
| 279 DISALLOW_COPY_AND_ASSIGN(DesktopRootWindowHostX11); | 276 DISALLOW_COPY_AND_ASSIGN(DesktopRootWindowHostX11); |
| 280 }; | 277 }; |
| 281 | 278 |
| 282 } // namespace views | 279 } // namespace views |
| 283 | 280 |
| 284 #endif // UI_VIEWS_WIDGET_DESKTOP_AURA_DESKTOP_ROOT_WINDOW_HOST_X11_H_ | 281 #endif // UI_VIEWS_WIDGET_DESKTOP_AURA_DESKTOP_ROOT_WINDOW_HOST_X11_H_ |
| OLD | NEW |