| Index: ui/aura/window.h
|
| diff --git a/ui/aura/window.h b/ui/aura/window.h
|
| index 9820b29880da8de71d0798c317d6c83aeb9f17d5..f7207a6ca91b7be72f11c90187638f5fea7d146b 100644
|
| --- a/ui/aura/window.h
|
| +++ b/ui/aura/window.h
|
| @@ -10,6 +10,7 @@
|
|
|
| #include "base/basictypes.h"
|
| #include "base/memory/scoped_ptr.h"
|
| +#include "base/observer_list.h"
|
| #include "base/string16.h"
|
| #include "ui/base/ui_base_types.h"
|
| #include "ui/aura/aura_export.h"
|
| @@ -34,6 +35,7 @@ class LayoutManager;
|
| class MouseEvent;
|
| class ToplevelWindowContainer;
|
| class WindowDelegate;
|
| +class WindowObserver;
|
|
|
| namespace internal {
|
| class FocusManager;
|
| @@ -119,6 +121,7 @@ class AURA_EXPORT Window : public ui::LayerDelegate {
|
| // the desktop's window.
|
| void SetParent(Window* parent);
|
| Window* parent() { return parent_; }
|
| + const Window* parent() const { return parent_; }
|
|
|
| // Move the specified child of this Window to the front of the z-order.
|
| // TODO(beng): this is (obviously) feeble.
|
| @@ -158,6 +161,10 @@ class AURA_EXPORT Window : public ui::LayerDelegate {
|
|
|
| WindowDelegate* delegate() { return delegate_; }
|
|
|
| + // Add/remove observer.
|
| + void AddObserver(WindowObserver* observer);
|
| + void RemoveObserver(WindowObserver* observer);
|
| +
|
| // When set to true, this Window will stop propagation of all events targeted
|
| // at Windows below it in the z-order, but only if this Window has children.
|
| // This is used to implement lock-screen type functionality where we do not
|
| @@ -263,6 +270,8 @@ class AURA_EXPORT Window : public ui::LayerDelegate {
|
| // provided this window has children. See set_stops_event_propagation().
|
| bool stops_event_propagation_;
|
|
|
| + ObserverList<WindowObserver> observers_;
|
| +
|
| DISALLOW_COPY_AND_ASSIGN(Window);
|
| };
|
|
|
|
|