| Index: ui/aura/desktop.cc
|
| diff --git a/ui/aura/desktop.cc b/ui/aura/desktop.cc
|
| index 565628e5139741a1a1e3a37d23dfaed8377fe132..38a22422b037aa896bdbaa2562e136bc42bba148 100644
|
| --- a/ui/aura/desktop.cc
|
| +++ b/ui/aura/desktop.cc
|
| @@ -9,6 +9,7 @@
|
| #include "base/message_loop.h"
|
| #include "ui/aura/desktop_delegate.h"
|
| #include "ui/aura/desktop_host.h"
|
| +#include "ui/aura/desktop_observer.h"
|
| #include "ui/aura/focus_manager.h"
|
| #include "ui/aura/root_window.h"
|
| #include "ui/aura/screen_aura.h"
|
| @@ -98,6 +99,7 @@ void Desktop::OnHostResized(const gfx::Size& size) {
|
| gfx::Rect bounds(0, 0, size.width(), size.height());
|
| compositor_->WidgetSizeChanged(size);
|
| window_->SetBounds(bounds);
|
| + FOR_EACH_OBSERVER(DesktopObserver, observers_, OnDesktopResized(size));
|
| }
|
|
|
| void Desktop::ScheduleDraw() {
|
| @@ -164,6 +166,14 @@ MessageLoop::Dispatcher* Desktop::GetDispatcher() {
|
| return host_.get();
|
| }
|
|
|
| +void Desktop::AddObserver(DesktopObserver* observer) {
|
| + observers_.AddObserver(observer);
|
| +}
|
| +
|
| +void Desktop::RemoveObserver(DesktopObserver* observer) {
|
| + observers_.RemoveObserver(observer);
|
| +}
|
| +
|
| // static
|
| Desktop* Desktop::GetInstance() {
|
| if (!instance_) {
|
|
|