diff options
author | sky@chromium.org <sky@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-08-03 19:33:50 +0000 |
---|---|---|
committer | sky@chromium.org <sky@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-08-03 19:33:50 +0000 |
commit | f4bb9fded21dd5595e4d8da54ad2ab4b91ef7e49 (patch) | |
tree | bd95d23d19b05670229330197ae5e067ea4297dc /ash/wm/workspace_controller.h | |
parent | 688ee168aaeafcf9b7417841a3cf9fee4f47f4af (diff) | |
download | chromium_src-f4bb9fded21dd5595e4d8da54ad2ab4b91ef7e49.zip chromium_src-f4bb9fded21dd5595e4d8da54ad2ab4b91ef7e49.tar.gz chromium_src-f4bb9fded21dd5595e4d8da54ad2ab4b91ef7e49.tar.bz2 |
Changes all non-workspace code to talk to WorkspaceManager via
WorkspaceController. This is a precursor to making WorkspaceManager
an interface and adding a new WorkspaceManager variant for the new
window heurisics.
BUG=137342
TEST=none
R=ben@chromium.org
Review URL: https://chromiumcodereview.appspot.com/10852003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@149890 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ash/wm/workspace_controller.h')
-rw-r--r-- | ash/wm/workspace_controller.h | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/ash/wm/workspace_controller.h b/ash/wm/workspace_controller.h index d7d6316..ea7710e 100644 --- a/ash/wm/workspace_controller.h +++ b/ash/wm/workspace_controller.h @@ -6,6 +6,7 @@ #define ASH_WM_WORKSPACE_CONTROLLER_H_ #include "ash/ash_export.h" +#include "ash/wm/workspace/workspace_types.h" #include "base/basictypes.h" #include "base/memory/scoped_ptr.h" #include "ui/aura/client/activation_change_observer.h" @@ -17,6 +18,7 @@ class Window; namespace ash { namespace internal { +class ShelfLayoutManager; class WorkspaceControllerTestHelper; class WorkspaceEventFilter; class WorkspaceLayoutManager; @@ -25,19 +27,23 @@ class WorkspaceManager; // WorkspaceController acts as a central place that ties together all the // various workspace pieces: WorkspaceManager, WorkspaceLayoutManager and // WorkspaceEventFilter. -class ASH_EXPORT WorkspaceController : - public aura::client::ActivationChangeObserver { +class ASH_EXPORT WorkspaceController + : public aura::client::ActivationChangeObserver { public: explicit WorkspaceController(aura::Window* viewport); virtual ~WorkspaceController(); - // Returns the workspace manager that this controller owns. - WorkspaceManager* workspace_manager() { - return workspace_manager_.get(); - } + // Returns true if in maximized or fullscreen mode. + bool IsInMaximizedMode() const; // Sets the size of the grid. void SetGridSize(int grid_size); + int GetGridSize() const; + + // Returns the current window state. + WorkspaceWindowState GetWindowState() const; + + void SetShelf(ShelfLayoutManager* shelf); // aura::client::ActivationChangeObserver overrides: virtual void OnWindowActivated(aura::Window* window, |