OLD | NEW |
| (Empty) |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | |
2 // Use of this source code is governed by a BSD-style license that can be | |
3 // found in the LICENSE file. | |
4 | |
5 #ifndef ASH_WM_WORKSPACE_BASE_WORKSPACE_MANAGER_H_ | |
6 #define ASH_WM_WORKSPACE_BASE_WORKSPACE_MANAGER_H_ | |
7 | |
8 #include "ash/ash_export.h" | |
9 #include "ash/wm/workspace/workspace_types.h" | |
10 | |
11 namespace aura { | |
12 class Window; | |
13 } | |
14 | |
15 namespace ash { | |
16 namespace internal { | |
17 | |
18 class ShelfLayoutManager; | |
19 | |
20 // TODO: this is temporary until WorkspaceManager2 is the default. | |
21 class ASH_EXPORT BaseWorkspaceManager { | |
22 public: | |
23 virtual ~BaseWorkspaceManager() {} | |
24 | |
25 // Returns true if in maximized or fullscreen mode. | |
26 virtual bool IsInMaximizedMode() const = 0; | |
27 | |
28 // Returns the current window state. | |
29 virtual WorkspaceWindowState GetWindowState() const = 0; | |
30 | |
31 virtual void SetShelf(ShelfLayoutManager* shelf) = 0; | |
32 | |
33 // Activates the workspace containing |window|. Does nothing if |window| is | |
34 // NULL or not contained in a workspace. | |
35 virtual void SetActiveWorkspaceByWindow(aura::Window* window) = 0; | |
36 | |
37 // Returns the parent for |window|. This is invoked from StackingController | |
38 // when a new Window is being added. | |
39 virtual aura::Window* GetParentForNewWindow(aura::Window* window) = 0; | |
40 | |
41 // Starts the animation that occurs on first login. | |
42 virtual void DoInitialAnimation() = 0; | |
43 }; | |
44 | |
45 } // namespace internal | |
46 } // namespace ash | |
47 | |
48 #endif // ASH_WM_WORKSPACE_BASE_WORKSPACE_MANAGER_H_ | |
OLD | NEW |