Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(173)

Side by Side Diff: chrome/browser/renderer_host/chrome_render_message_filter.cc

Issue 7044095: Hooking MHTML generation to the browser. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Synced Created 9 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « chrome/browser/renderer_host/chrome_render_message_filter.h ('k') | chrome/chrome_browser.gypi » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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
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
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
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 }
OLDNEW
« no previous file with comments | « chrome/browser/renderer_host/chrome_render_message_filter.h ('k') | chrome/chrome_browser.gypi » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698