| 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_BROWSER_RENDERER_HOST_RENDER_MESSAGE_FILTER_H_ | 5 #ifndef CONTENT_BROWSER_RENDERER_HOST_RENDER_MESSAGE_FILTER_H_ |
| 6 #define CONTENT_BROWSER_RENDERER_HOST_RENDER_MESSAGE_FILTER_H_ | 6 #define CONTENT_BROWSER_RENDERER_HOST_RENDER_MESSAGE_FILTER_H_ |
| 7 | 7 |
| 8 #include <stddef.h> | 8 #include <stddef.h> |
| 9 #include <stdint.h> | 9 #include <stdint.h> |
| 10 | 10 |
| (...skipping 78 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 89 | 89 |
| 90 namespace content { | 90 namespace content { |
| 91 class BrowserContext; | 91 class BrowserContext; |
| 92 class CacheStorageContextImpl; | 92 class CacheStorageContextImpl; |
| 93 class CacheStorageCache; | 93 class CacheStorageCache; |
| 94 class DOMStorageContextWrapper; | 94 class DOMStorageContextWrapper; |
| 95 class MediaInternals; | 95 class MediaInternals; |
| 96 class RenderWidgetHelper; | 96 class RenderWidgetHelper; |
| 97 class ResourceContext; | 97 class ResourceContext; |
| 98 class ResourceDispatcherHostImpl; | 98 class ResourceDispatcherHostImpl; |
| 99 struct Referrer; | |
| 100 | 99 |
| 101 // This class filters out incoming IPC messages for the renderer process on the | 100 // This class filters out incoming IPC messages for the renderer process on the |
| 102 // IPC thread. | 101 // IPC thread. |
| 103 class CONTENT_EXPORT RenderMessageFilter : public BrowserMessageFilter { | 102 class CONTENT_EXPORT RenderMessageFilter : public BrowserMessageFilter { |
| 104 public: | 103 public: |
| 105 // Create the filter. | 104 // Create the filter. |
| 106 RenderMessageFilter(int render_process_id, | 105 RenderMessageFilter(int render_process_id, |
| 107 BrowserContext* browser_context, | 106 BrowserContext* browser_context, |
| 108 net::URLRequestContextGetter* request_context, | 107 net::URLRequestContextGetter* request_context, |
| 109 RenderWidgetHelper* render_widget_helper, | 108 RenderWidgetHelper* render_widget_helper, |
| 110 media::AudioManager* audio_manager, | 109 media::AudioManager* audio_manager, |
| 111 MediaInternals* media_internals, | 110 MediaInternals* media_internals, |
| 112 DOMStorageContextWrapper* dom_storage_context, | 111 DOMStorageContextWrapper* dom_storage_context, |
| 113 CacheStorageContextImpl* cache_storage_context); | 112 CacheStorageContextImpl* cache_storage_context); |
| 114 | 113 |
| 115 // BrowserMessageFilter methods: | 114 // BrowserMessageFilter methods: |
| 116 bool OnMessageReceived(const IPC::Message& message) override; | 115 bool OnMessageReceived(const IPC::Message& message) override; |
| 117 void OnDestruct() const override; | 116 void OnDestruct() const override; |
| 118 void OverrideThreadForMessage(const IPC::Message& message, | 117 void OverrideThreadForMessage(const IPC::Message& message, |
| 119 BrowserThread::ID* thread) override; | 118 BrowserThread::ID* thread) override; |
| 120 base::TaskRunner* OverrideTaskRunnerForMessage( | 119 base::TaskRunner* OverrideTaskRunnerForMessage( |
| 121 const IPC::Message& message) override; | 120 const IPC::Message& message) override; |
| 122 | 121 |
| 123 int render_process_id() const { return render_process_id_; } | 122 int render_process_id() const { return render_process_id_; } |
| 124 | 123 |
| 125 protected: | 124 protected: |
| 126 ~RenderMessageFilter() override; | 125 ~RenderMessageFilter() override; |
| 127 | 126 |
| 128 // This method will be overridden by TestSaveImageFromDataURL class for test. | |
| 129 virtual void DownloadUrl(int render_view_id, | |
| 130 int render_frame_id, | |
| 131 const GURL& url, | |
| 132 const Referrer& referrer, | |
| 133 const base::string16& suggested_name, | |
| 134 const bool use_prompt) const; | |
| 135 | |
| 136 private: | 127 private: |
| 137 friend class BrowserThread; | 128 friend class BrowserThread; |
| 138 friend class base::DeleteHelper<RenderMessageFilter>; | 129 friend class base::DeleteHelper<RenderMessageFilter>; |
| 139 | 130 |
| 140 void OnGetProcessMemorySizes(size_t* private_bytes, size_t* shared_bytes); | 131 void OnGetProcessMemorySizes(size_t* private_bytes, size_t* shared_bytes); |
| 141 void OnCreateWindow(const ViewHostMsg_CreateWindow_Params& params, | 132 void OnCreateWindow(const ViewHostMsg_CreateWindow_Params& params, |
| 142 ViewHostMsg_CreateWindow_Reply* reply); | 133 ViewHostMsg_CreateWindow_Reply* reply); |
| 143 void OnCreateWidget(int opener_id, | 134 void OnCreateWidget(int opener_id, |
| 144 blink::WebPopupType popup_type, | 135 blink::WebPopupType popup_type, |
| 145 int* route_id); | 136 int* route_id); |
| 146 void OnCreateFullscreenWidget(int opener_id, int* route_id); | 137 void OnCreateFullscreenWidget(int opener_id, int* route_id); |
| 147 | 138 |
| 148 #if defined(OS_MACOSX) | 139 #if defined(OS_MACOSX) |
| 149 // Messages for OOP font loading. | 140 // Messages for OOP font loading. |
| 150 void OnLoadFont(const FontDescriptor& font, IPC::Message* reply_msg); | 141 void OnLoadFont(const FontDescriptor& font, IPC::Message* reply_msg); |
| 151 void SendLoadFontReply(IPC::Message* reply, FontLoader::Result* result); | 142 void SendLoadFontReply(IPC::Message* reply, FontLoader::Result* result); |
| 152 #elif defined(OS_WIN) | 143 #elif defined(OS_WIN) |
| 153 void OnPreCacheFontCharacters(const LOGFONT& log_font, | 144 void OnPreCacheFontCharacters(const LOGFONT& log_font, |
| 154 const base::string16& characters); | 145 const base::string16& characters); |
| 155 #endif | 146 #endif |
| 156 | 147 |
| 157 void OnGenerateRoutingID(int* route_id); | 148 void OnGenerateRoutingID(int* route_id); |
| 158 void OnDownloadUrl(int render_view_id, | |
| 159 int render_frame_id, | |
| 160 const GURL& url, | |
| 161 const Referrer& referrer, | |
| 162 const base::string16& suggested_name); | |
| 163 void OnSaveImageFromDataURL(int render_view_id, | |
| 164 int render_frame_id, | |
| 165 const std::string& url_str); | |
| 166 | 149 |
| 167 void OnGetAudioHardwareConfig(media::AudioParameters* input_params, | 150 void OnGetAudioHardwareConfig(media::AudioParameters* input_params, |
| 168 media::AudioParameters* output_params); | 151 media::AudioParameters* output_params); |
| 169 | 152 |
| 170 #if defined(OS_WIN) | 153 #if defined(OS_WIN) |
| 171 // Used to look up the monitor color profile. | 154 // Used to look up the monitor color profile. |
| 172 void OnGetMonitorColorProfile(std::vector<char>* profile); | 155 void OnGetMonitorColorProfile(std::vector<char>* profile); |
| 173 #endif | 156 #endif |
| 174 | 157 |
| 175 // Message handlers called on the browser IO thread: | 158 // Message handlers called on the browser IO thread: |
| (...skipping 102 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 278 CacheStorageContextImpl* cache_storage_context_; | 261 CacheStorageContextImpl* cache_storage_context_; |
| 279 | 262 |
| 280 base::WeakPtrFactory<RenderMessageFilter> weak_ptr_factory_; | 263 base::WeakPtrFactory<RenderMessageFilter> weak_ptr_factory_; |
| 281 | 264 |
| 282 DISALLOW_COPY_AND_ASSIGN(RenderMessageFilter); | 265 DISALLOW_COPY_AND_ASSIGN(RenderMessageFilter); |
| 283 }; | 266 }; |
| 284 | 267 |
| 285 } // namespace content | 268 } // namespace content |
| 286 | 269 |
| 287 #endif // CONTENT_BROWSER_RENDERER_HOST_RENDER_MESSAGE_FILTER_H_ | 270 #endif // CONTENT_BROWSER_RENDERER_HOST_RENDER_MESSAGE_FILTER_H_ |
| OLD | NEW |