Chromium Code Reviews| Index: ash/common/wm_shell.h |
| diff --git a/ash/common/wm_shell.h b/ash/common/wm_shell.h |
| index 70736519a79e7cb2b8db3c19b20d6d03770ff119..9ddd241903509371c0396813e63005346aad62bb 100644 |
| --- a/ash/common/wm_shell.h |
| +++ b/ash/common/wm_shell.h |
| @@ -13,6 +13,7 @@ |
| #include "ash/ash_export.h" |
| #include "ash/common/metrics/gesture_action_type.h" |
| #include "ash/common/metrics/user_metrics_action.h" |
| +#include "ash/common/session/session_state_observer.h" |
| #include "ash/common/wm/lock_state_observer.h" |
| #include "base/observer_list.h" |
| #include "components/ui_devtools/devtools_server.h" |
| @@ -101,7 +102,7 @@ class WindowState; |
| } |
| // Similar to ash::Shell. Eventually the two will be merged. |
| -class ASH_EXPORT WmShell { |
| +class ASH_EXPORT WmShell : public SessionStateObserver { |
| public: |
| // This is necessary for a handful of places that is difficult to plumb |
| // through context. |
| @@ -354,11 +355,10 @@ class ASH_EXPORT WmShell { |
| virtual std::unique_ptr<KeyEventWatcher> CreateKeyEventWatcher() = 0; |
| // Initializes the appropriate shelves. Does nothing for any existing shelves. |
| + // Creates the ShelfView and populates it with icons. |
|
msw
2017/01/11 00:54:54
optional nit: s/icons/items/ and remove the line a
James Cook
2017/01/11 17:03:48
Rewrote it.
|
| + // TODO(jamescook): Rename this. http://crbug.com/679925 |
| void CreateShelf(); |
| - // Show shelf view if it was created hidden (before session has started). |
| - void ShowShelf(); |
| - |
| void CreateShelfDelegate(); |
| // Called after maximize mode has started, windows might still animate though. |
| @@ -447,7 +447,7 @@ class ASH_EXPORT WmShell { |
| protected: |
| explicit WmShell(std::unique_ptr<ShellDelegate> shell_delegate); |
| - virtual ~WmShell(); |
| + ~WmShell() override; |
| base::ObserverList<ShellObserver>* shell_observers() { |
| return &shell_observers_; |
| @@ -475,6 +475,9 @@ class ASH_EXPORT WmShell { |
| void SetAcceleratorController( |
| std::unique_ptr<AcceleratorController> accelerator_controller); |
| + // SessionStateObserver: |
| + void SessionStateChanged(session_manager::SessionState state) override; |
| + |
| private: |
| friend class AcceleratorControllerTest; |
| friend class ScopedRootWindowForNewWindows; |