OLD | NEW |
---|---|
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 ATHENA_WM_PUBLIC_WINDOW_LIST_PROVIDER_H_ | 5 #ifndef ATHENA_WM_PUBLIC_WINDOW_LIST_PROVIDER_H_ |
6 #define ATHENA_WM_PUBLIC_WINDOW_LIST_PROVIDER_H_ | 6 #define ATHENA_WM_PUBLIC_WINDOW_LIST_PROVIDER_H_ |
7 | 7 |
8 #include "athena/athena_export.h" | 8 #include "athena/athena_export.h" |
9 #include "ui/aura/window.h" | 9 #include "ui/aura/window.h" |
10 | 10 |
11 namespace athena { | 11 namespace athena { |
12 | 12 |
13 // Interface for an ordered list of aura::Window objects. | 13 // Interface for an ordered list of aura::Window objects. |
14 // Note that lists returned by GetCurrentWindowList() will not change if any of | |
15 // the other member functions will be called later. | |
14 class ATHENA_EXPORT WindowListProvider { | 16 class ATHENA_EXPORT WindowListProvider { |
15 public: | 17 public: |
16 virtual ~WindowListProvider() {} | 18 virtual ~WindowListProvider() {} |
17 | 19 |
18 // Returns an ordered list of windows. | 20 // Returns an ordered list of the current window configuration. |
19 virtual aura::Window::Windows GetWindowList() const = 0; | 21 virtual aura::Window::Windows GetCurrentWindowList() const = 0; |
oshima
2014/09/05 23:13:06
Current implies there is something else. What's th
Mr4D (OOO till 08-26)
2014/09/08 17:35:07
The returned list will not change if the content c
oshima
2014/09/09 18:28:37
That's same with any API that returns list (aura::
Mr4D (OOO till 08-26)
2014/09/10 00:01:58
Done.
| |
22 | |
23 // Returns true if the |window| is part of the list. | |
24 virtual bool IsWindowInList(aura::Window* window) const = 0; | |
oshima
2014/09/05 23:13:06
I feel method name are too long. How about
Contai
Mr4D (OOO till 08-26)
2014/09/08 17:35:07
Done.
| |
25 | |
26 // Returns true if the given window is a window which can be handled by the | |
27 // WindowListProvider. | |
28 virtual bool IsValidWindow(aura::Window* window) const = 0; | |
29 | |
30 // Adds a |window| to the front of the list. If the |window| is already in the | |
31 // list it will be moved to the front. | |
32 virtual void AddWindow(aura::Window* window) = 0; | |
oshima
2014/09/05 23:13:06
Do you need this? A window must be added by Widget
Mr4D (OOO till 08-26)
2014/09/08 17:35:07
Someone must have the knowledge of where to add an
oshima
2014/09/09 18:28:37
Adding is implicit now, so having AddWindow is con
Mr4D (OOO till 08-26)
2014/09/10 00:01:58
Acknowledged.
| |
33 | |
34 // Moves a given |window| to the front of all windows of the window list. | |
35 // Note: The window has to be in the list already. | |
36 virtual void MoveToFront(aura::Window* window) = 0; | |
37 | |
38 // Moves a given |window| in direct front of a |reference_window|. | |
39 // Note: The |window| and |reference_window| has to be in the list already. | |
40 virtual void MoveWindowInFrontOfReferenceWindow( | |
41 aura::Window* window, | |
42 aura::Window* reference_window) = 0; | |
43 | |
44 // Moves a given |window| directly behind a |reference_window|. | |
45 // Note: The |window| and |reference_window| has to be in the list already. | |
46 virtual void MoveWindowBehindOfReferenceWindow( | |
47 aura::Window* window, | |
48 aura::Window* reference_window) = 0; | |
20 }; | 49 }; |
21 | 50 |
22 } // namespace athena | 51 } // namespace athena |
23 | 52 |
24 #endif // ATHENA_WM_PUBLIC_WINDOW_LIST_PROVIDER_H_ | 53 #endif // ATHENA_WM_PUBLIC_WINDOW_LIST_PROVIDER_H_ |
OLD | NEW |