Chromium Code Reviews| 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/renderer/chrome_content_renderer_client.h" | 5 #include "chrome/renderer/chrome_content_renderer_client.h" |
| 6 | 6 |
| 7 #include <string> | 7 #include <string> |
| 8 | 8 |
| 9 #include "base/command_line.h" | 9 #include "base/command_line.h" |
| 10 #include "base/message_loop.h" | 10 #include "base/message_loop.h" |
| (...skipping 127 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 138 chrome::UninitializePPAPI(); | 138 chrome::UninitializePPAPI(); |
| 139 } | 139 } |
| 140 | 140 |
| 141 void ChromeContentRendererClient::RenderThreadStarted() { | 141 void ChromeContentRendererClient::RenderThreadStarted() { |
| 142 chrome_observer_.reset(new ChromeRenderProcessObserver()); | 142 chrome_observer_.reset(new ChromeRenderProcessObserver()); |
| 143 extension_dispatcher_.reset(new ExtensionDispatcher()); | 143 extension_dispatcher_.reset(new ExtensionDispatcher()); |
| 144 histogram_snapshots_.reset(new RendererHistogramSnapshots()); | 144 histogram_snapshots_.reset(new RendererHistogramSnapshots()); |
| 145 net_predictor_.reset(new RendererNetPredictor()); | 145 net_predictor_.reset(new RendererNetPredictor()); |
| 146 spellcheck_.reset(new SpellCheck()); | 146 spellcheck_.reset(new SpellCheck()); |
| 147 visited_link_slave_.reset(new VisitedLinkSlave()); | 147 visited_link_slave_.reset(new VisitedLinkSlave()); |
| 148 #if defined(ENABLE_SAFE_BROWSING) | |
|
mattm
2011/07/12 21:41:58
Looks like some merges got squashed
Miranda Callahan
2011/07/13 18:13:51
Wow, did they ever. :-/ Fixed.
| |
| 149 phishing_classifier_.reset(safe_browsing::PhishingClassifierFilter::Create()); | 148 phishing_classifier_.reset(safe_browsing::PhishingClassifierFilter::Create()); |
| 150 #endif | |
| 151 | 149 |
| 152 RenderThread* thread = RenderThread::current(); | 150 RenderThread* thread = RenderThread::current(); |
| 153 thread->AddFilter(new DevToolsAgentFilter()); | 151 thread->AddFilter(new DevToolsAgentFilter()); |
| 154 | 152 |
| 155 thread->AddObserver(chrome_observer_.get()); | 153 thread->AddObserver(chrome_observer_.get()); |
| 156 thread->AddObserver(extension_dispatcher_.get()); | 154 thread->AddObserver(extension_dispatcher_.get()); |
| 157 thread->AddObserver(histogram_snapshots_.get()); | 155 thread->AddObserver(histogram_snapshots_.get()); |
| 158 #if defined(ENABLE_SAFE_BROWSING) | |
| 159 thread->AddObserver(phishing_classifier_.get()); | 156 thread->AddObserver(phishing_classifier_.get()); |
| 160 #endif | |
| 161 thread->AddObserver(spellcheck_.get()); | 157 thread->AddObserver(spellcheck_.get()); |
| 162 thread->AddObserver(visited_link_slave_.get()); | 158 thread->AddObserver(visited_link_slave_.get()); |
| 163 | 159 |
| 164 thread->RegisterExtension(extensions_v8::ExternalExtension::Get()); | 160 thread->RegisterExtension(extensions_v8::ExternalExtension::Get()); |
| 165 thread->RegisterExtension(extensions_v8::LoadTimesExtension::Get()); | 161 thread->RegisterExtension(extensions_v8::LoadTimesExtension::Get()); |
| 166 thread->RegisterExtension(extensions_v8::SearchBoxExtension::Get()); | 162 thread->RegisterExtension(extensions_v8::SearchBoxExtension::Get()); |
| 167 v8::Extension* search_extension = extensions_v8::SearchExtension::Get(); | 163 v8::Extension* search_extension = extensions_v8::SearchExtension::Get(); |
| 168 // search_extension is null if not enabled. | 164 // search_extension is null if not enabled. |
| 169 if (search_extension) | 165 if (search_extension) |
| 170 thread->RegisterExtension(search_extension); | 166 thread->RegisterExtension(search_extension); |
| (...skipping 19 matching lines...) Expand all Loading... | |
| 190 | 186 |
| 191 WebString internal_scheme(ASCIIToUTF16(chrome::kChromeInternalScheme)); | 187 WebString internal_scheme(ASCIIToUTF16(chrome::kChromeInternalScheme)); |
| 192 WebSecurityPolicy::registerURLSchemeAsDisplayIsolated(internal_scheme); | 188 WebSecurityPolicy::registerURLSchemeAsDisplayIsolated(internal_scheme); |
| 193 | 189 |
| 194 // chrome-extension: resources shouldn't trigger insecure content warnings. | 190 // chrome-extension: resources shouldn't trigger insecure content warnings. |
| 195 WebString extension_scheme(ASCIIToUTF16(chrome::kExtensionScheme)); | 191 WebString extension_scheme(ASCIIToUTF16(chrome::kExtensionScheme)); |
| 196 WebSecurityPolicy::registerURLSchemeAsSecure(extension_scheme); | 192 WebSecurityPolicy::registerURLSchemeAsSecure(extension_scheme); |
| 197 } | 193 } |
| 198 | 194 |
| 199 void ChromeContentRendererClient::RenderViewCreated(RenderView* render_view) { | 195 void ChromeContentRendererClient::RenderViewCreated(RenderView* render_view) { |
| 200 safe_browsing::PhishingClassifierDelegate* phishing_classifier = NULL; | |
| 201 #if defined(ENABLE_SAFE_BROWSING) && !defined(OS_CHROMEOS) | |
| 202 if (!CommandLine::ForCurrentProcess()->HasSwitch( | |
| 203 switches::kDisableClientSidePhishingDetection)) { | |
| 204 phishing_classifier = | |
| 205 safe_browsing::PhishingClassifierDelegate::Create(render_view, NULL); | |
| 206 } | |
| 207 #endif | |
| 208 | |
| 209 ContentSettingsObserver* content_settings = | 196 ContentSettingsObserver* content_settings = |
| 210 new ContentSettingsObserver(render_view); | 197 new ContentSettingsObserver(render_view); |
| 211 new DevToolsAgent(render_view); | 198 new DevToolsAgent(render_view); |
| 212 new ExtensionHelper(render_view, extension_dispatcher_.get()); | 199 new ExtensionHelper(render_view, extension_dispatcher_.get()); |
| 213 new MHTMLGenerator(render_view); | 200 new MHTMLGenerator(render_view); |
| 214 new PageLoadHistograms(render_view, histogram_snapshots_.get()); | 201 new PageLoadHistograms(render_view, histogram_snapshots_.get()); |
| 215 new PrintWebViewHelper(render_view); | 202 new PrintWebViewHelper(render_view); |
| 216 new SearchBox(render_view); | 203 new SearchBox(render_view); |
| 217 new SpellCheckProvider(render_view, spellcheck_.get()); | 204 new SpellCheckProvider(render_view, spellcheck_.get()); |
| 218 #if defined(ENABLE_SAFE_BROWSING) | |
| 219 safe_browsing::MalwareDOMDetails::Create(render_view); | 205 safe_browsing::MalwareDOMDetails::Create(render_view); |
| 220 #endif | |
| 221 | 206 |
| 222 #if defined(OS_MACOSX) | 207 #if defined(OS_MACOSX) |
| 223 new TextInputClientObserver(render_view); | 208 new TextInputClientObserver(render_view); |
| 224 #endif // defined(OS_MACOSX) | 209 #endif // defined(OS_MACOSX) |
| 225 | 210 |
| 226 PasswordAutofillManager* password_autofill_manager = | 211 PasswordAutofillManager* password_autofill_manager = |
| 227 new PasswordAutofillManager(render_view); | 212 new PasswordAutofillManager(render_view); |
| 228 AutofillAgent* autofill_agent = new AutofillAgent(render_view, | 213 AutofillAgent* autofill_agent = new AutofillAgent(render_view, |
| 229 password_autofill_manager); | 214 password_autofill_manager); |
| 230 PageClickTracker* page_click_tracker = new PageClickTracker(render_view); | 215 PageClickTracker* page_click_tracker = new PageClickTracker(render_view); |
| 231 // Note that the order of insertion of the listeners is important. | 216 // Note that the order of insertion of the listeners is important. |
| 232 // The password_autocomplete_manager takes the first shot at processing the | 217 // The password_autocomplete_manager takes the first shot at processing the |
| 233 // notification and can stop the propagation. | 218 // notification and can stop the propagation. |
| 234 page_click_tracker->AddListener(password_autofill_manager); | 219 page_click_tracker->AddListener(password_autofill_manager); |
| 235 page_click_tracker->AddListener(autofill_agent); | 220 page_click_tracker->AddListener(autofill_agent); |
| 236 | 221 |
| 237 TranslateHelper* translate = new TranslateHelper(render_view, autofill_agent); | 222 TranslateHelper* translate = new TranslateHelper(render_view, autofill_agent); |
| 238 new ChromeRenderViewObserver( | 223 new ChromeRenderViewObserver( |
| 239 render_view, content_settings, extension_dispatcher_.get(), | 224 render_view, content_settings, extension_dispatcher_.get(), translate); |
| 240 translate, phishing_classifier); | |
| 241 | 225 |
| 242 // Used only for testing/automation. | 226 // Used only for testing/automation. |
| 243 if (CommandLine::ForCurrentProcess()->HasSwitch( | 227 if (CommandLine::ForCurrentProcess()->HasSwitch( |
| 244 switches::kDomAutomationController)) { | 228 switches::kDomAutomationController)) { |
| 245 new AutomationRendererHelper(render_view); | 229 new AutomationRendererHelper(render_view); |
| 246 } | 230 } |
| 247 } | 231 } |
| 248 | 232 |
| 249 void ChromeContentRendererClient::SetNumberOfViews(int number_of_views) { | 233 void ChromeContentRendererClient::SetNumberOfViews(int number_of_views) { |
| 250 child_process_logging::SetNumberOfViews(number_of_views); | 234 child_process_logging::SetNumberOfViews(number_of_views); |
| (...skipping 342 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 593 if (old_url == new_url) { | 577 if (old_url == new_url) { |
| 594 bool is_extension_url = !!extensions->GetByURL(new_url); | 578 bool is_extension_url = !!extensions->GetByURL(new_url); |
| 595 if (is_extension_url != extension_dispatcher_->is_extension_process()) | 579 if (is_extension_url != extension_dispatcher_->is_extension_process()) |
| 596 return true; | 580 return true; |
| 597 } | 581 } |
| 598 | 582 |
| 599 return !extensions->InSameExtent(old_url, new_url); | 583 return !extensions->InSameExtent(old_url, new_url); |
| 600 } | 584 } |
| 601 | 585 |
| 602 } // namespace chrome | 586 } // namespace chrome |
| OLD | NEW |