| Index: ash/shell.cc
|
| diff --git a/ash/shell.cc b/ash/shell.cc
|
| index 3b0b0b8b3664673c117cede8f80b73b0e709c717..8f4b07281205d13a722bda3c3beddbec6bd6c132 100644
|
| --- a/ash/shell.cc
|
| +++ b/ash/shell.cc
|
| @@ -657,6 +657,7 @@ void Shell::Init() {
|
| DCHECK_EQ(1U, GetRootWindowEventFilterCount());
|
| partial_screenshot_filter_.reset(new internal::PartialScreenshotEventFilter);
|
| AddRootWindowEventFilter(partial_screenshot_filter_.get());
|
| + AddShellObserver(partial_screenshot_filter_.get());
|
|
|
| // Then AcceleratorFilter and InputMethodEventFilter must be added (in this
|
| // order) since they have the second highest priority.
|
| @@ -772,6 +773,7 @@ void Shell::Init() {
|
|
|
| drag_drop_controller_.reset(new internal::DragDropController);
|
| power_button_controller_.reset(new PowerButtonController);
|
| + AddShellObserver(power_button_controller_.get());
|
| video_detector_.reset(new VideoDetector);
|
| window_cycle_controller_.reset(new WindowCycleController);
|
| monitor_controller_.reset(new internal::MonitorController);
|
| @@ -860,6 +862,18 @@ void Shell::SetMonitorWorkAreaInsets(Window* contains,
|
| OnMonitorWorkAreaInsetsChanged());
|
| }
|
|
|
| +void Shell::OnLoginStateChanged(user::LoginStatus status) {
|
| + FOR_EACH_OBSERVER(ShellObserver, observers_, OnLoginStateChanged(status));
|
| +}
|
| +
|
| +void Shell::OnAppTerminating() {
|
| + FOR_EACH_OBSERVER(ShellObserver, observers_, OnAppTerminating());
|
| +}
|
| +
|
| +void Shell::OnLockStateChanged(bool locked) {
|
| + FOR_EACH_OBSERVER(ShellObserver, observers_, OnLockStateChanged(locked));
|
| +}
|
| +
|
| void Shell::CreateLauncher() {
|
| if (launcher_.get())
|
| return;
|
|
|