Chromium Code Reviews| Index: ash/wm/maximize_mode/maximize_mode_window_manager.h |
| diff --git a/ash/wm/maximize_mode/maximize_mode_window_manager.h b/ash/wm/maximize_mode/maximize_mode_window_manager.h |
| index 7b0c1db6e0e0766a22bcc06963a19f83c1238f2b..6a0439922723cabb816428ebee8790cfe81640dd 100644 |
| --- a/ash/wm/maximize_mode/maximize_mode_window_manager.h |
| +++ b/ash/wm/maximize_mode/maximize_mode_window_manager.h |
| @@ -9,6 +9,7 @@ |
| #include <set> |
| #include "ash/ash_export.h" |
| +#include "ash/shell_observer.h" |
| #include "ash/wm/window_state.h" |
| #include "base/basictypes.h" |
| #include "base/compiler_specific.h" |
| @@ -27,14 +28,19 @@ namespace internal{ |
| // With the destruction of the manager all windows will be restored to their |
| // original state. |
| class ASH_EXPORT MaximizeModeWindowManager : public aura::WindowObserver, |
| - public gfx::DisplayObserver { |
| + public gfx::DisplayObserver, |
| + public ShellObserver { |
| public: |
| // This should only be deleted by the creator (ash::Shell). |
| virtual ~MaximizeModeWindowManager(); |
| - // Returns the number of maximized & tracked windows by this manager. |
| + // Returns the number of maximized & tracked windows by this manager. |
| int GetNumberOfManagedWindows(); |
| + // Hide the default workspace container backdrops temporarily when |hide| is |
| + // set. |
| + void HideBackdrops(bool hide); |
|
sky
2014/03/06 01:03:18
Do you really need the 'hide' variable? If you do,
Mr4D (OOO till 08-26)
2014/03/06 17:17:16
Removed.
|
| + |
| // Overridden from WindowObserver: |
| virtual void OnWindowDestroying(aura::Window* window) OVERRIDE; |
| virtual void OnWindowAdded(aura::Window* window) OVERRIDE; |
| @@ -48,6 +54,10 @@ class ASH_EXPORT MaximizeModeWindowManager : public aura::WindowObserver, |
| virtual void OnDisplayAdded(const gfx::Display& display) OVERRIDE; |
| virtual void OnDisplayRemoved(const gfx::Display& display) OVERRIDE; |
| + // ShellObserver overrides: |
| + void OnOverviewModeStarted(); |
| + void OnOverviewModeEnded(); |
| + |
| protected: |
| friend class ash::Shell; |
| @@ -91,15 +101,24 @@ class ASH_EXPORT MaximizeModeWindowManager : public aura::WindowObserver, |
| // Remove Window creation observers. |
| void RemoveWindowCreationObservers(); |
| + // Add a backdrop behind the currently active window on each desktop. |
| + void EnableBackdropBehindTopWindowOnEachDisplay(bool enable); |
| + |
| // Returns true when the |window| is a container window. |
| bool IsContainerWindow(aura::Window* window); |
| + // Apply a display configuration change. |
| + void DisplayConfigurationChanged(); |
| + |
| // Every window which got touched by our window manager gets added here. |
| WindowToShowState initial_show_state_; |
| // All container windows which have to be tracked. |
| std::set<aura::Window*> observed_container_windows_; |
| + // True if all backdrops are hidden. |
| + bool backdrops_hidden_; |
| + |
| DISALLOW_COPY_AND_ASSIGN(MaximizeModeWindowManager); |
| }; |