summaryrefslogtreecommitdiffstats
path: root/ui/aura/root_window.h
diff options
context:
space:
mode:
Diffstat (limited to 'ui/aura/root_window.h')
-rw-r--r--ui/aura/root_window.h21
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);
};