Index: extensions/shell/browser/shell_extensions_browser_client.cc |
diff --git a/extensions/shell/browser/shell_extensions_browser_client.cc b/extensions/shell/browser/shell_extensions_browser_client.cc |
index 84e757c9b9ee06e619a258f92b577c46ccc18cb8..2c9822e15f63bb52f23771f48a49e20a32db35b8 100644 |
--- a/extensions/shell/browser/shell_extensions_browser_client.cc |
+++ b/extensions/shell/browser/shell_extensions_browser_client.cc |
@@ -9,8 +9,10 @@ |
#include "base/prefs/testing_pref_store.h" |
#include "components/pref_registry/pref_registry_syncable.h" |
#include "components/user_prefs/user_prefs.h" |
+#include "content/public/browser/browser_thread.h" |
#include "extensions/browser/api/generated_api_registration.h" |
#include "extensions/browser/app_sorting.h" |
+#include "extensions/browser/event_router.h" |
#include "extensions/browser/extension_function_registry.h" |
#include "extensions/browser/extension_prefs.h" |
#include "extensions/shell/browser/api/generated_api_registration.h" |
@@ -21,6 +23,7 @@ |
#include "extensions/shell/browser/shell_runtime_api_delegate.h" |
using content::BrowserContext; |
+using content::BrowserThread; |
namespace extensions { |
namespace { |
@@ -196,6 +199,25 @@ ShellExtensionsBrowserClient::GetComponentExtensionResourceManager() { |
return NULL; |
} |
+void ShellExtensionsBrowserClient::BroadcastEventToRenderers( |
+ const std::string& event_name, |
+ scoped_ptr<base::ListValue> args) { |
+ if (!BrowserThread::CurrentlyOn(BrowserThread::UI)) { |
+ BrowserThread::PostTask( |
+ BrowserThread::UI, |
+ FROM_HERE, |
+ base::Bind(&ShellExtensionsBrowserClient::BroadcastEventToRenderers, |
+ base::Unretained(this), |
+ event_name, |
+ base::Passed(&args))); |
+ return; |
+ } |
+ |
+ scoped_ptr<extensions::Event> event( |
Daniel Erat
2014/08/30 01:44:20
nit: you shouldn't need "extensions::" here or on
|
+ new extensions::Event(event_name, args.Pass())); |
+ extensions::EventRouter::Get(browser_context_)->BroadcastEvent(event.Pass()); |
+} |
+ |
net::NetLog* ShellExtensionsBrowserClient::GetNetLog() { |
return NULL; |
} |