OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef EXTENSIONS_BROWSER_EXTENSIONS_BROWSER_CLIENT_H_ | 5 #ifndef EXTENSIONS_BROWSER_EXTENSIONS_BROWSER_CLIENT_H_ |
6 #define EXTENSIONS_BROWSER_EXTENSIONS_BROWSER_CLIENT_H_ | 6 #define EXTENSIONS_BROWSER_EXTENSIONS_BROWSER_CLIENT_H_ |
7 | 7 |
8 #include <string> | 8 #include <string> |
9 #include <vector> | 9 #include <vector> |
10 | 10 |
11 #include "base/memory/scoped_ptr.h" | 11 #include "base/memory/scoped_ptr.h" |
12 #include "extensions/browser/extension_prefs_observer.h" | 12 #include "extensions/browser/extension_prefs_observer.h" |
13 | 13 |
14 class ExtensionFunctionRegistry; | 14 class ExtensionFunctionRegistry; |
15 class PrefService; | 15 class PrefService; |
16 | 16 |
17 namespace base { | 17 namespace base { |
18 class CommandLine; | 18 class CommandLine; |
19 class FilePath; | 19 class FilePath; |
| 20 class ListValue; |
20 } | 21 } |
21 | 22 |
22 namespace content { | 23 namespace content { |
23 class BrowserContext; | 24 class BrowserContext; |
24 class WebContents; | 25 class WebContents; |
25 } | 26 } |
26 | 27 |
27 namespace net { | 28 namespace net { |
28 class NetLog; | 29 class NetLog; |
29 class NetworkDelegate; | 30 class NetworkDelegate; |
(...skipping 145 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
175 // management-related events such as update and installation on behalf of the | 176 // management-related events such as update and installation on behalf of the |
176 // core runtime API implementation. | 177 // core runtime API implementation. |
177 virtual scoped_ptr<RuntimeAPIDelegate> CreateRuntimeAPIDelegate( | 178 virtual scoped_ptr<RuntimeAPIDelegate> CreateRuntimeAPIDelegate( |
178 content::BrowserContext* context) const = 0; | 179 content::BrowserContext* context) const = 0; |
179 | 180 |
180 // Returns the manager of resource bundles used in extensions. Returns NULL if | 181 // Returns the manager of resource bundles used in extensions. Returns NULL if |
181 // the manager doesn't exist. | 182 // the manager doesn't exist. |
182 virtual ComponentExtensionResourceManager* | 183 virtual ComponentExtensionResourceManager* |
183 GetComponentExtensionResourceManager() = 0; | 184 GetComponentExtensionResourceManager() = 0; |
184 | 185 |
| 186 // Propagate a event to all the renderers in every browser context. The |
| 187 // implementation must be safe to call from any thread. |
| 188 virtual void BroadcastEventToRenderers(const std::string& event_name, |
| 189 scoped_ptr<base::ListValue> args) = 0; |
| 190 |
185 // Returns the embedder's net::NetLog. | 191 // Returns the embedder's net::NetLog. |
186 virtual net::NetLog* GetNetLog() = 0; | 192 virtual net::NetLog* GetNetLog() = 0; |
187 | 193 |
188 // Returns the single instance of |this|. | 194 // Returns the single instance of |this|. |
189 static ExtensionsBrowserClient* Get(); | 195 static ExtensionsBrowserClient* Get(); |
190 | 196 |
191 // Initialize the single instance. | 197 // Initialize the single instance. |
192 static void Set(ExtensionsBrowserClient* client); | 198 static void Set(ExtensionsBrowserClient* client); |
193 }; | 199 }; |
194 | 200 |
195 } // namespace extensions | 201 } // namespace extensions |
196 | 202 |
197 #endif // EXTENSIONS_BROWSER_EXTENSIONS_BROWSER_CLIENT_H_ | 203 #endif // EXTENSIONS_BROWSER_EXTENSIONS_BROWSER_CLIENT_H_ |
OLD | NEW |