| 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 #include "chrome/renderer/chrome_render_thread_observer.h" | 5 #include "chrome/renderer/chrome_render_thread_observer.h" |
| 6 | 6 |
| 7 #include <stddef.h> | 7 #include <stddef.h> |
| 8 | 8 |
| 9 #include <limits> | 9 #include <limits> |
| 10 #include <memory> | 10 #include <memory> |
| (...skipping 219 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 230 std::move(request)); | 230 std::move(request)); |
| 231 } | 231 } |
| 232 | 232 |
| 233 } // namespace | 233 } // namespace |
| 234 | 234 |
| 235 bool ChromeRenderThreadObserver::is_incognito_process_ = false; | 235 bool ChromeRenderThreadObserver::is_incognito_process_ = false; |
| 236 | 236 |
| 237 ChromeRenderThreadObserver::ChromeRenderThreadObserver() | 237 ChromeRenderThreadObserver::ChromeRenderThreadObserver() |
| 238 : field_trial_syncer_(this), | 238 : field_trial_syncer_(this), |
| 239 visited_link_slave_(new visitedlink::VisitedLinkSlave), | 239 visited_link_slave_(new visitedlink::VisitedLinkSlave), |
| 240 renderer_binding_(this), |
| 240 weak_factory_(this) { | 241 weak_factory_(this) { |
| 241 const base::CommandLine& command_line = | 242 const base::CommandLine& command_line = |
| 242 *base::CommandLine::ForCurrentProcess(); | 243 *base::CommandLine::ForCurrentProcess(); |
| 243 | 244 |
| 244 RenderThread* thread = RenderThread::Get(); | 245 RenderThread* thread = RenderThread::Get(); |
| 245 resource_delegate_.reset(new RendererResourceDelegate()); | 246 resource_delegate_.reset(new RendererResourceDelegate()); |
| 246 thread->SetResourceDispatcherDelegate(resource_delegate_.get()); | 247 thread->SetResourceDispatcherDelegate(resource_delegate_.get()); |
| 247 | 248 |
| 248 thread->GetInterfaceRegistry()->AddInterface( | 249 thread->GetInterfaceRegistry()->AddInterface( |
| 249 base::Bind(CreateResourceUsageReporter, weak_factory_.GetWeakPtr())); | 250 base::Bind(CreateResourceUsageReporter, weak_factory_.GetWeakPtr())); |
| (...skipping 18 matching lines...) Expand all Loading... |
| 268 WebSecurityPolicy::registerURLSchemeAsNoAccess(native_scheme); | 269 WebSecurityPolicy::registerURLSchemeAsNoAccess(native_scheme); |
| 269 WebSecurityPolicy::registerURLSchemeAsNotAllowingJavascriptURLs( | 270 WebSecurityPolicy::registerURLSchemeAsNotAllowingJavascriptURLs( |
| 270 native_scheme); | 271 native_scheme); |
| 271 | 272 |
| 272 thread->GetInterfaceRegistry()->AddInterface( | 273 thread->GetInterfaceRegistry()->AddInterface( |
| 273 visited_link_slave_->GetBindCallback()); | 274 visited_link_slave_->GetBindCallback()); |
| 274 } | 275 } |
| 275 | 276 |
| 276 ChromeRenderThreadObserver::~ChromeRenderThreadObserver() {} | 277 ChromeRenderThreadObserver::~ChromeRenderThreadObserver() {} |
| 277 | 278 |
| 279 void ChromeRenderThreadObserver::RegisterMojoInterfaces( |
| 280 content::AssociatedInterfaceRegistry* associated_interfaces) { |
| 281 associated_interfaces->AddInterface( |
| 282 base::Bind(&ChromeRenderThreadObserver::OnRendererInterfaceRequest, |
| 283 base::Unretained(this))); |
| 284 } |
| 285 |
| 286 void ChromeRenderThreadObserver::OnRendererInterfaceRequest( |
| 287 chrome::mojom::RendererAssociatedRequest request) { |
| 288 DCHECK(!renderer_binding_.is_bound()); |
| 289 renderer_binding_.Bind(std::move(request)); |
| 290 } |
| 291 |
| 278 bool ChromeRenderThreadObserver::OnControlMessageReceived( | 292 bool ChromeRenderThreadObserver::OnControlMessageReceived( |
| 279 const IPC::Message& message) { | 293 const IPC::Message& message) { |
| 280 bool handled = true; | 294 bool handled = true; |
| 281 IPC_BEGIN_MESSAGE_MAP(ChromeRenderThreadObserver, message) | 295 IPC_BEGIN_MESSAGE_MAP(ChromeRenderThreadObserver, message) |
| 282 IPC_MESSAGE_HANDLER(ChromeViewMsg_SetIsIncognitoProcess, | |
| 283 OnSetIsIncognitoProcess) | |
| 284 IPC_MESSAGE_HANDLER(ChromeViewMsg_SetFieldTrialGroup, OnSetFieldTrialGroup) | 296 IPC_MESSAGE_HANDLER(ChromeViewMsg_SetFieldTrialGroup, OnSetFieldTrialGroup) |
| 285 IPC_MESSAGE_HANDLER(ChromeViewMsg_SetContentSettingRules, | 297 IPC_MESSAGE_HANDLER(ChromeViewMsg_SetContentSettingRules, |
| 286 OnSetContentSettingRules) | 298 OnSetContentSettingRules) |
| 287 IPC_MESSAGE_UNHANDLED(handled = false) | 299 IPC_MESSAGE_UNHANDLED(handled = false) |
| 288 IPC_END_MESSAGE_MAP() | 300 IPC_END_MESSAGE_MAP() |
| 289 return handled; | 301 return handled; |
| 290 } | 302 } |
| 291 | 303 |
| 292 void ChromeRenderThreadObserver::OnRenderProcessShutdown() { | 304 void ChromeRenderThreadObserver::OnRenderProcessShutdown() { |
| 293 visited_link_slave_.reset(); | 305 visited_link_slave_.reset(); |
| 294 } | 306 } |
| 295 | 307 |
| 296 void ChromeRenderThreadObserver::OnFieldTrialGroupFinalized( | 308 void ChromeRenderThreadObserver::OnFieldTrialGroupFinalized( |
| 297 const std::string& trial_name, | 309 const std::string& trial_name, |
| 298 const std::string& group_name) { | 310 const std::string& group_name) { |
| 299 content::RenderThread::Get()->Send( | 311 content::RenderThread::Get()->Send( |
| 300 new ChromeViewHostMsg_FieldTrialActivated(trial_name)); | 312 new ChromeViewHostMsg_FieldTrialActivated(trial_name)); |
| 301 } | 313 } |
| 302 | 314 |
| 303 void ChromeRenderThreadObserver::OnSetIsIncognitoProcess( | 315 void ChromeRenderThreadObserver::InitialConfiguration( |
| 304 bool is_incognito_process) { | 316 chrome::mojom::InitialConfigurationParamsPtr params) { |
| 305 is_incognito_process_ = is_incognito_process; | 317 is_incognito_process_ = params->is_incognito_process; |
| 306 } | 318 } |
| 307 | 319 |
| 308 void ChromeRenderThreadObserver::OnSetContentSettingRules( | 320 void ChromeRenderThreadObserver::OnSetContentSettingRules( |
| 309 const RendererContentSettingRules& rules) { | 321 const RendererContentSettingRules& rules) { |
| 310 content_setting_rules_ = rules; | 322 content_setting_rules_ = rules; |
| 311 } | 323 } |
| 312 | 324 |
| 313 void ChromeRenderThreadObserver::OnSetFieldTrialGroup( | 325 void ChromeRenderThreadObserver::OnSetFieldTrialGroup( |
| 314 const std::string& trial_name, | 326 const std::string& trial_name, |
| 315 const std::string& group_name) { | 327 const std::string& group_name) { |
| 316 field_trial_syncer_.OnSetFieldTrialGroup(trial_name, group_name); | 328 field_trial_syncer_.OnSetFieldTrialGroup(trial_name, group_name); |
| 317 } | 329 } |
| 318 | 330 |
| 319 const RendererContentSettingRules* | 331 const RendererContentSettingRules* |
| 320 ChromeRenderThreadObserver::content_setting_rules() const { | 332 ChromeRenderThreadObserver::content_setting_rules() const { |
| 321 return &content_setting_rules_; | 333 return &content_setting_rules_; |
| 322 } | 334 } |
| OLD | NEW |