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