diff options
Diffstat (limited to 'ui/aura/root_window.h')
-rw-r--r-- | ui/aura/root_window.h | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/ui/aura/root_window.h b/ui/aura/root_window.h index d709ce3..5d3de84 100644 --- a/ui/aura/root_window.h +++ b/ui/aura/root_window.h @@ -26,12 +26,33 @@ class RootWindow : public Window { // Handles a key event. Returns true if handled. bool HandleKeyEvent(const KeyEvent& event); + // Sets capture to the specified window. + void SetCapture(Window* window); + + // If |window| has mouse capture, the current capture window is set to NULL. + void ReleaseCapture(Window* window); + + // Returns the window that has mouse capture. + Window* capture_window() { return capture_window_; } + + // Invoked when a child window is destroyed. Cleans up any references to the + // Window. + void WindowDestroying(Window* window); + + // Current handler for mouse events. + Window* mouse_pressed_handler() { return mouse_pressed_handler_; } + // Overridden from Window: virtual FocusManager* GetFocusManager() OVERRIDE; + protected: + // Overridden from Window: + virtual internal::RootWindow* GetRoot() OVERRIDE; + private: Window* mouse_pressed_handler_; scoped_ptr<FocusManager> focus_manager_; + Window* capture_window_; DISALLOW_COPY_AND_ASSIGN(RootWindow); }; |