| 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 #include "chrome/browser/renderer_host/chrome_render_message_filter.h" | 5 #include "chrome/browser/renderer_host/chrome_render_message_filter.h" |
| 6 | 6 |
| 7 #include "base/file_path.h" | 7 #include "base/file_path.h" |
| 8 #include "base/metrics/histogram.h" | 8 #include "base/metrics/histogram.h" |
| 9 #include "chrome/browser/automation/automation_resource_message_filter.h" | 9 #include "chrome/browser/automation/automation_resource_message_filter.h" |
| 10 #include "chrome/browser/browser_process.h" | 10 #include "chrome/browser/browser_process.h" |
| 11 #include "chrome/browser/content_settings/host_content_settings_map.h" | 11 #include "chrome/browser/content_settings/host_content_settings_map.h" |
| 12 #include "chrome/browser/content_settings/tab_specific_content_settings.h" | 12 #include "chrome/browser/content_settings/tab_specific_content_settings.h" |
| 13 #include "chrome/browser/download/mhtml_generation_manager.h" |
| 13 #include "chrome/browser/extensions/extension_event_router.h" | 14 #include "chrome/browser/extensions/extension_event_router.h" |
| 14 #include "chrome/browser/extensions/extension_function_dispatcher.h" | 15 #include "chrome/browser/extensions/extension_function_dispatcher.h" |
| 15 #include "chrome/browser/extensions/extension_message_service.h" | 16 #include "chrome/browser/extensions/extension_message_service.h" |
| 16 #include "chrome/browser/metrics/histogram_synchronizer.h" | 17 #include "chrome/browser/metrics/histogram_synchronizer.h" |
| 17 #include "chrome/browser/nacl_host/nacl_process_host.h" | 18 #include "chrome/browser/nacl_host/nacl_process_host.h" |
| 18 #include "chrome/browser/net/chrome_url_request_context.h" | 19 #include "chrome/browser/net/chrome_url_request_context.h" |
| 19 #include "chrome/browser/net/predictor_api.h" | 20 #include "chrome/browser/net/predictor_api.h" |
| 20 #include "chrome/browser/prefs/pref_member.h" | 21 #include "chrome/browser/prefs/pref_member.h" |
| 21 #include "chrome/browser/profiles/profile.h" | 22 #include "chrome/browser/profiles/profile.h" |
| 22 #include "chrome/browser/task_manager/task_manager.h" | 23 #include "chrome/browser/task_manager/task_manager.h" |
| (...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 91 IPC_MESSAGE_HANDLER(ViewHostMsg_AllowDOMStorage, OnAllowDOMStorage) | 92 IPC_MESSAGE_HANDLER(ViewHostMsg_AllowDOMStorage, OnAllowDOMStorage) |
| 92 IPC_MESSAGE_HANDLER(ViewHostMsg_AllowFileSystem, OnAllowFileSystem) | 93 IPC_MESSAGE_HANDLER(ViewHostMsg_AllowFileSystem, OnAllowFileSystem) |
| 93 IPC_MESSAGE_HANDLER(ViewHostMsg_AllowIndexedDB, OnAllowIndexedDB) | 94 IPC_MESSAGE_HANDLER(ViewHostMsg_AllowIndexedDB, OnAllowIndexedDB) |
| 94 IPC_MESSAGE_HANDLER(ViewHostMsg_GetPluginContentSetting, | 95 IPC_MESSAGE_HANDLER(ViewHostMsg_GetPluginContentSetting, |
| 95 OnGetPluginContentSetting) | 96 OnGetPluginContentSetting) |
| 96 IPC_MESSAGE_HANDLER(ViewHostMsg_CanTriggerClipboardRead, | 97 IPC_MESSAGE_HANDLER(ViewHostMsg_CanTriggerClipboardRead, |
| 97 OnCanTriggerClipboardRead) | 98 OnCanTriggerClipboardRead) |
| 98 IPC_MESSAGE_HANDLER(ViewHostMsg_CanTriggerClipboardWrite, | 99 IPC_MESSAGE_HANDLER(ViewHostMsg_CanTriggerClipboardWrite, |
| 99 OnCanTriggerClipboardWrite) | 100 OnCanTriggerClipboardWrite) |
| 100 IPC_MESSAGE_HANDLER(ViewHostMsg_ClearPredictorCache, OnClearPredictorCache) | 101 IPC_MESSAGE_HANDLER(ViewHostMsg_ClearPredictorCache, OnClearPredictorCache) |
| 102 IPC_MESSAGE_HANDLER(ViewHostMsg_SavedPageAsMHTML, OnSavedPageAsMHTML) |
| 101 IPC_MESSAGE_UNHANDLED(handled = false) | 103 IPC_MESSAGE_UNHANDLED(handled = false) |
| 102 IPC_END_MESSAGE_MAP() | 104 IPC_END_MESSAGE_MAP() |
| 103 | 105 |
| 104 if ((message.type() == ViewHostMsg_GetCookies::ID || | 106 if ((message.type() == ViewHostMsg_GetCookies::ID || |
| 105 message.type() == ViewHostMsg_SetCookie::ID) && | 107 message.type() == ViewHostMsg_SetCookie::ID) && |
| 106 AutomationResourceMessageFilter::ShouldFilterCookieMessages( | 108 AutomationResourceMessageFilter::ShouldFilterCookieMessages( |
| 107 render_process_id_, message.routing_id())) { | 109 render_process_id_, message.routing_id())) { |
| 108 // ChromeFrame then we need to get/set cookies from the external host. | 110 // ChromeFrame then we need to get/set cookies from the external host. |
| 109 IPC_BEGIN_MESSAGE_MAP_EX(ChromeRenderMessageFilter, message, | 111 IPC_BEGIN_MESSAGE_MAP_EX(ChromeRenderMessageFilter, message, |
| 110 *message_was_ok) | 112 *message_was_ok) |
| (...skipping 19 matching lines...) Expand all Loading... |
| 130 void ChromeRenderMessageFilter::OverrideThreadForMessage( | 132 void ChromeRenderMessageFilter::OverrideThreadForMessage( |
| 131 const IPC::Message& message, BrowserThread::ID* thread) { | 133 const IPC::Message& message, BrowserThread::ID* thread) { |
| 132 switch (message.type()) { | 134 switch (message.type()) { |
| 133 case ViewHostMsg_ResourceTypeStats::ID: | 135 case ViewHostMsg_ResourceTypeStats::ID: |
| 134 #if defined(USE_TCMALLOC) | 136 #if defined(USE_TCMALLOC) |
| 135 case ViewHostMsg_RendererTcmalloc::ID: | 137 case ViewHostMsg_RendererTcmalloc::ID: |
| 136 #endif | 138 #endif |
| 137 case ExtensionHostMsg_AddListener::ID: | 139 case ExtensionHostMsg_AddListener::ID: |
| 138 case ExtensionHostMsg_RemoveListener::ID: | 140 case ExtensionHostMsg_RemoveListener::ID: |
| 139 case ExtensionHostMsg_CloseChannel::ID: | 141 case ExtensionHostMsg_CloseChannel::ID: |
| 142 case ViewHostMsg_UpdatedCacheStats::ID: |
| 143 case ViewHostMsg_SavedPageAsMHTML::ID: |
| 140 *thread = BrowserThread::UI; | 144 *thread = BrowserThread::UI; |
| 141 break; | 145 break; |
| 142 case ViewHostMsg_UpdatedCacheStats::ID: | |
| 143 *thread = BrowserThread::UI; | |
| 144 default: | 146 default: |
| 145 break; | 147 break; |
| 146 } | 148 } |
| 147 } | 149 } |
| 148 | 150 |
| 149 void ChromeRenderMessageFilter::OnLaunchNaCl( | 151 void ChromeRenderMessageFilter::OnLaunchNaCl( |
| 150 const std::wstring& url, int channel_descriptor, IPC::Message* reply_msg) { | 152 const std::wstring& url, int channel_descriptor, IPC::Message* reply_msg) { |
| 151 NaClProcessHost* host = new NaClProcessHost(url); | 153 NaClProcessHost* host = new NaClProcessHost(url); |
| 152 host->Launch(this, channel_descriptor, reply_msg); | 154 host->Launch(this, channel_descriptor, reply_msg); |
| 153 } | 155 } |
| (...skipping 339 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 493 reply_msg, url); | 495 reply_msg, url); |
| 494 } | 496 } |
| 495 | 497 |
| 496 void ChromeRenderMessageFilter::OnSetCookie(const IPC::Message& message, | 498 void ChromeRenderMessageFilter::OnSetCookie(const IPC::Message& message, |
| 497 const GURL& url, | 499 const GURL& url, |
| 498 const GURL& first_party_for_cookies, | 500 const GURL& first_party_for_cookies, |
| 499 const std::string& cookie) { | 501 const std::string& cookie) { |
| 500 AutomationResourceMessageFilter::SetCookiesForUrl( | 502 AutomationResourceMessageFilter::SetCookiesForUrl( |
| 501 render_process_id_, message.routing_id(), url, cookie); | 503 render_process_id_, message.routing_id(), url, cookie); |
| 502 } | 504 } |
| 505 |
| 506 |
| 507 void ChromeRenderMessageFilter::OnSavedPageAsMHTML(int job_id, bool success) { |
| 508 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); |
| 509 g_browser_process->mhtml_generation_manager()-> |
| 510 MHTMLGenerated(job_id, success); |
| 511 } |
| OLD | NEW |