Chromium Code Reviews| Index: ash/wm/maximize_mode/maximize_mode_controller.h |
| diff --git a/ash/wm/maximize_mode/maximize_mode_controller.h b/ash/wm/maximize_mode/maximize_mode_controller.h |
| index fd2efe5acb13e105eb3e53964619082c9c17cac3..39cb73c62cf460ec5f8a6e30762756176fb7723c 100644 |
| --- a/ash/wm/maximize_mode/maximize_mode_controller.h |
| +++ b/ash/wm/maximize_mode/maximize_mode_controller.h |
| @@ -20,6 +20,8 @@ namespace ash { |
| class MaximizeModeControllerTest; |
| class MaximizeModeEventBlocker; |
| +class MaximizeModeWindowManager; |
| +class MaximizeModeWindowManagerTest; |
| // MaximizeModeController listens to accelerometer events and automatically |
| // enters and exits maximize mode when the lid is opened beyond the triggering |
| @@ -50,12 +52,30 @@ class ASH_EXPORT MaximizeModeController : public AccelerometerObserver { |
| // maximize mode becomes enabled. |
| bool CanEnterMaximizeMode(); |
| + // TODO(jonross): Merge this with EnterMaximizeMode. Currently these are |
| + // separate for several reasons: there is no internal display when running |
| + // unittests; the event blocker prevents keyboard input when running ChromeOS |
| + // on linux. http://crbug.com/362881 |
| + // Turn the always maximize mode window manager on or off. |
| + void EnableMaximizeModeWindowManager(bool enable); |
| + |
| + // Test if the MaximizeModeWindowManager is enabled or not. |
| + bool IsMaximizeModeWindowManagerEnabled() const; |
| + |
| + // TODO(jonross): move this into the desctrutor. Currently separated as |
|
James Cook
2014/05/30 19:47:51
nit: destructor
jonross
2014/06/02 13:48:06
Done.
|
| + // ShellOberver notifies of maximize mode ending, and the observers end up |
| + // attempting to access MaximizeModeController via the Shell. If done in |
| + // destructor the controller is null, and the obersvers segfault. |
|
James Cook
2014/05/30 19:47:51
nit: observers
jonross
2014/06/02 13:48:06
Done.
|
| + // Shutdowns down the MaximizeModeWindowManager and notifies all observers. |
|
James Cook
2014/05/30 19:47:51
nit: shuts down
jonross
2014/06/02 13:48:06
Done.
|
| + void Shutdown(); |
| + |
| // AccelerometerObserver: |
| virtual void OnAccelerometerUpdated(const gfx::Vector3dF& base, |
| const gfx::Vector3dF& lid) OVERRIDE; |
| private: |
| friend class MaximizeModeControllerTest; |
| + friend class MaximizeModeWindowManagerTest; |
| // Detect hinge rotation from |base| and |lid| accelerometers and |
| // automatically start / stop maximize mode. |
| @@ -78,6 +98,9 @@ class ASH_EXPORT MaximizeModeController : public AccelerometerObserver { |
| // is no rotation lock. |
| void LeaveMaximizeMode(); |
| + // The maximized window manager (if enabled). |
| + scoped_ptr<MaximizeModeWindowManager> maximize_mode_window_manager_; |
| + |
| // An event targeter controller which traps mouse and keyboard events while |
| // maximize mode is engaged. |
| scoped_ptr<MaximizeModeEventBlocker> event_blocker_; |