diff options
Diffstat (limited to 'chrome/browser/automation/automation_provider_observers.cc')
-rw-r--r-- | chrome/browser/automation/automation_provider_observers.cc | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/chrome/browser/automation/automation_provider_observers.cc b/chrome/browser/automation/automation_provider_observers.cc index aaca274..cf18d7b 100644 --- a/chrome/browser/automation/automation_provider_observers.cc +++ b/chrome/browser/automation/automation_provider_observers.cc @@ -3022,3 +3022,30 @@ void ExtensionPopupObserver::Observe( delete this; } } + +#if defined(OS_LINUX) +WindowMaximizedObserver::WindowMaximizedObserver( + AutomationProvider* automation, + IPC::Message* reply_message) + : automation_(automation->AsWeakPtr()), + reply_message_(reply_message) { + registrar_.Add(this, chrome::NOTIFICATION_BROWSER_WINDOW_MAXIMIZED, + content::NotificationService::AllSources()); +} + +WindowMaximizedObserver::~WindowMaximizedObserver() {} + +void WindowMaximizedObserver::Observe( + int type, + const content::NotificationSource& source, + const content::NotificationDetails& details) { + DCHECK_EQ(chrome::NOTIFICATION_BROWSER_WINDOW_MAXIMIZED, type); + + if (automation_) { + AutomationJSONReply(automation_, reply_message_.release()) + .SendSuccess(NULL); + } + delete this; +} +#endif // defined(OS_LINUX) + |