| Index: athena/wm/public/window_list_provider.h
|
| diff --git a/athena/wm/public/window_list_provider.h b/athena/wm/public/window_list_provider.h
|
| index d22aa3da376069285b1c1bf0b1a9f556a3f2fb3d..5271b423424006ed1515667aeb1446fc89ce497a 100644
|
| --- a/athena/wm/public/window_list_provider.h
|
| +++ b/athena/wm/public/window_list_provider.h
|
| @@ -10,13 +10,42 @@
|
|
|
| namespace athena {
|
|
|
| +class WindowListProviderObserver;
|
| +
|
| // Interface for an ordered list of aura::Window objects.
|
| +// Note that lists returned by GetCurrentWindowList() will not change if any of
|
| +// the other member functions will be called later.
|
| class ATHENA_EXPORT WindowListProvider {
|
| public:
|
| virtual ~WindowListProvider() {}
|
|
|
| - // Returns an ordered list of windows.
|
| - virtual aura::Window::Windows GetWindowList() const = 0;
|
| + // Adding/removing an observer to status changes.
|
| + virtual void AddObserver(WindowListProviderObserver* observer) = 0;
|
| + virtual void RemoveObserver(WindowListProviderObserver* observer) = 0;
|
| +
|
| + // Returns an ordered list of the current window configuration.
|
| + virtual aura::Window::Windows GetCurrentWindowList() const = 0;
|
| +
|
| + // Returns true if the |window| is part of the list.
|
| + virtual bool IsWindowInList(aura::Window* window) const = 0;
|
| +
|
| + // Returns true if the given window is a window which can be handled by the
|
| + // WindowListProvider.
|
| + virtual bool IsValidWindow(aura::Window* window) const = 0;
|
| +
|
| + // Moves a given |window| to the front of all windows of the window list.
|
| + // Note: The window has to be in the list already.
|
| + virtual void MoveToFront(aura::Window* window) = 0;
|
| +
|
| + // Stacks a given |window| in direct front of a |reference_window|.
|
| + // Note: The |window| and |reference_window| has to be in the list already.
|
| + virtual void StackWindowFrontOf(aura::Window* window,
|
| + aura::Window* reference_window) = 0;
|
| +
|
| + // Stacks a given |window| directly behind a |reference_window|.
|
| + // Note: The |window| and |reference_window| has to be in the list already.
|
| + virtual void StackWindowBehindTo(aura::Window* window,
|
| + aura::Window* reference_window) = 0;
|
| };
|
|
|
| } // namespace athena
|
|
|