OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 CONTENT_PUBLIC_RENDERER_CONTENT_RENDERER_CLIENT_H_ | 5 #ifndef CONTENT_PUBLIC_RENDERER_CONTENT_RENDERER_CLIENT_H_ |
6 #define CONTENT_PUBLIC_RENDERER_CONTENT_RENDERER_CLIENT_H_ | 6 #define CONTENT_PUBLIC_RENDERER_CONTENT_RENDERER_CLIENT_H_ |
7 | 7 |
8 #include <string> | 8 #include <string> |
| 9 #include <vector> |
9 | 10 |
10 #include "base/memory/weak_ptr.h" | 11 #include "base/memory/weak_ptr.h" |
11 #include "base/strings/string16.h" | 12 #include "base/strings/string16.h" |
12 #include "content/public/common/content_client.h" | 13 #include "content/public/common/content_client.h" |
13 #include "content/public/common/page_transition_types.h" | 14 #include "content/public/common/page_transition_types.h" |
14 #include "ipc/ipc_message.h" | 15 #include "ipc/ipc_message.h" |
15 #include "third_party/WebKit/public/web/WebNavigationPolicy.h" | 16 #include "third_party/WebKit/public/web/WebNavigationPolicy.h" |
16 #include "third_party/WebKit/public/web/WebNavigationType.h" | 17 #include "third_party/WebKit/public/web/WebNavigationType.h" |
17 #include "third_party/WebKit/public/web/WebPageVisibilityState.h" | 18 #include "third_party/WebKit/public/web/WebPageVisibilityState.h" |
18 #include "v8/include/v8.h" | 19 #include "v8/include/v8.h" |
(...skipping 25 matching lines...) Expand all Loading... |
44 class WebThemeEngine; | 45 class WebThemeEngine; |
45 class WebURLRequest; | 46 class WebURLRequest; |
46 struct WebPluginParams; | 47 struct WebPluginParams; |
47 struct WebURLError; | 48 struct WebURLError; |
48 } | 49 } |
49 | 50 |
50 namespace content { | 51 namespace content { |
51 | 52 |
52 class RenderView; | 53 class RenderView; |
53 class SynchronousCompositor; | 54 class SynchronousCompositor; |
| 55 struct KeySystemInfo; |
54 struct WebPluginInfo; | 56 struct WebPluginInfo; |
55 | 57 |
56 // Embedder API for participating in renderer logic. | 58 // Embedder API for participating in renderer logic. |
57 class CONTENT_EXPORT ContentRendererClient { | 59 class CONTENT_EXPORT ContentRendererClient { |
58 public: | 60 public: |
59 virtual ~ContentRendererClient() {} | 61 virtual ~ContentRendererClient() {} |
60 | 62 |
61 // Notifies us that the RenderThread has been created. | 63 // Notifies us that the RenderThread has been created. |
62 virtual void RenderThreadStarted() {} | 64 virtual void RenderThreadStarted() {} |
63 | 65 |
(...skipping 173 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
237 // pp::FileIO::RequestOSFileHandle. | 239 // pp::FileIO::RequestOSFileHandle. |
238 virtual bool IsPluginAllowedToCallRequestOSFileHandle( | 240 virtual bool IsPluginAllowedToCallRequestOSFileHandle( |
239 WebKit::WebPluginContainer* container); | 241 WebKit::WebPluginContainer* container); |
240 | 242 |
241 // Returns whether BrowserPlugin should be allowed within the |container|. | 243 // Returns whether BrowserPlugin should be allowed within the |container|. |
242 virtual bool AllowBrowserPlugin(WebKit::WebPluginContainer* container); | 244 virtual bool AllowBrowserPlugin(WebKit::WebPluginContainer* container); |
243 | 245 |
244 // Returns true if the page at |url| can use Pepper MediaStream APIs. | 246 // Returns true if the page at |url| can use Pepper MediaStream APIs. |
245 virtual bool AllowPepperMediaStreamAPI(const GURL& url); | 247 virtual bool AllowPepperMediaStreamAPI(const GURL& url); |
246 | 248 |
| 249 // Gives the embedder a chance to register the key system(s) it supports by |
| 250 // populating |key_systems|. |
| 251 virtual void AddKeySystems(std::vector<KeySystemInfo>* key_systems); |
| 252 |
247 // Returns true if we should report a detailed message (including a stack | 253 // Returns true if we should report a detailed message (including a stack |
248 // trace) for console [logs|errors|exceptions]. |source| is the WebKit- | 254 // trace) for console [logs|errors|exceptions]. |source| is the WebKit- |
249 // reported source for the error; this can point to a page or a script, | 255 // reported source for the error; this can point to a page or a script, |
250 // and can be external or internal. | 256 // and can be external or internal. |
251 virtual bool ShouldReportDetailedMessageForSource( | 257 virtual bool ShouldReportDetailedMessageForSource( |
252 const base::string16& source) const; | 258 const base::string16& source) const; |
253 | 259 |
254 // Returns true if we should apply the cross-site document blocking policy to | 260 // Returns true if we should apply the cross-site document blocking policy to |
255 // this renderer process. Currently, we apply the policy only to a renderer | 261 // this renderer process. Currently, we apply the policy only to a renderer |
256 // process running on a normal page from the web. | 262 // process running on a normal page from the web. |
257 virtual bool ShouldEnableSiteIsolationPolicy() const; | 263 virtual bool ShouldEnableSiteIsolationPolicy() const; |
258 }; | 264 }; |
259 | 265 |
260 } // namespace content | 266 } // namespace content |
261 | 267 |
262 #endif // CONTENT_PUBLIC_RENDERER_CONTENT_RENDERER_CLIENT_H_ | 268 #endif // CONTENT_PUBLIC_RENDERER_CONTENT_RENDERER_CLIENT_H_ |
OLD | NEW |