OLD | NEW |
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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_COMMON_CONTENT_CLIENT_H_ | 5 #ifndef CONTENT_COMMON_CONTENT_CLIENT_H_ |
6 #define CONTENT_COMMON_CONTENT_CLIENT_H_ | 6 #define CONTENT_COMMON_CONTENT_CLIENT_H_ |
7 #pragma once | 7 #pragma once |
8 | 8 |
9 #include <vector> | 9 #include <vector> |
10 | 10 |
11 #include "base/basictypes.h" | 11 #include "base/basictypes.h" |
12 #include "build/build_config.h" | 12 #include "build/build_config.h" |
13 | 13 |
14 class GURL; | 14 class GURL; |
15 struct GPUInfo; | 15 struct GPUInfo; |
16 struct PepperPluginInfo; | 16 struct PepperPluginInfo; |
17 | 17 |
| 18 namespace IPC { |
| 19 class Message; |
| 20 } |
| 21 |
18 namespace content { | 22 namespace content { |
19 | 23 |
20 class ContentBrowserClient; | 24 class ContentBrowserClient; |
21 class ContentClient; | 25 class ContentClient; |
22 class ContentPluginClient; | 26 class ContentPluginClient; |
23 class ContentRendererClient; | 27 class ContentRendererClient; |
24 | 28 |
25 // Setter and getter for the client. The client should be set early, before any | 29 // Setter and getter for the client. The client should be set early, before any |
26 // content code is called. | 30 // content code is called. |
27 void SetContentClient(ContentClient* client); | 31 void SetContentClient(ContentClient* client); |
(...skipping 14 matching lines...) Expand all Loading... |
42 | 46 |
43 // Sets the currently active URL. Use GURL() to clear the URL. | 47 // Sets the currently active URL. Use GURL() to clear the URL. |
44 virtual void SetActiveURL(const GURL& url) {} | 48 virtual void SetActiveURL(const GURL& url) {} |
45 | 49 |
46 // Sets the data on the current gpu. | 50 // Sets the data on the current gpu. |
47 virtual void SetGpuInfo(const GPUInfo& gpu_info) {} | 51 virtual void SetGpuInfo(const GPUInfo& gpu_info) {} |
48 | 52 |
49 // Gives the embedder a chance to register its own pepper plugins. | 53 // Gives the embedder a chance to register its own pepper plugins. |
50 virtual void AddPepperPlugins(std::vector<PepperPluginInfo>* plugins) {} | 54 virtual void AddPepperPlugins(std::vector<PepperPluginInfo>* plugins) {} |
51 | 55 |
| 56 // Returns whether the given message should be allowed to be sent from a |
| 57 // swapped out renderer. |
| 58 virtual bool CanSendWhileSwappedOut(const IPC::Message* msg) { return false; } |
| 59 |
| 60 // Returns whether the given message should be processed in the browser on |
| 61 // behalf of a swapped out renderer. |
| 62 virtual bool CanHandleWhileSwappedOut(const IPC::Message& msg) { |
| 63 return false; |
| 64 } |
| 65 |
52 private: | 66 private: |
53 // The embedder API for participating in browser logic. | 67 // The embedder API for participating in browser logic. |
54 ContentBrowserClient* browser_; | 68 ContentBrowserClient* browser_; |
55 // The embedder API for participating in plugin logic. | 69 // The embedder API for participating in plugin logic. |
56 ContentPluginClient* plugin_; | 70 ContentPluginClient* plugin_; |
57 // The embedder API for participating in renderer logic. | 71 // The embedder API for participating in renderer logic. |
58 ContentRendererClient* renderer_; | 72 ContentRendererClient* renderer_; |
59 }; | 73 }; |
60 | 74 |
61 } // namespace content | 75 } // namespace content |
62 | 76 |
63 #endif // CONTENT_COMMON_CONTENT_CLIENT_H_ | 77 #endif // CONTENT_COMMON_CONTENT_CLIENT_H_ |
OLD | NEW |