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

Side by Side Diff: chrome/renderer/chrome_render_thread_observer.cc

Issue 2531133002: Convert SetIsIncognitoProcess to use mojo. (Closed)
Patch Set: Convert SetIsIncognitoProcess to use mojo. Created 4 years 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
OLDNEW
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 218 matching lines...) Expand 10 before | Expand all | Expand 10 after
229 std::move(request)); 229 std::move(request));
230 } 230 }
231 231
232 } // namespace 232 } // namespace
233 233
234 bool ChromeRenderThreadObserver::is_incognito_process_ = false; 234 bool ChromeRenderThreadObserver::is_incognito_process_ = false;
235 235
236 ChromeRenderThreadObserver::ChromeRenderThreadObserver() 236 ChromeRenderThreadObserver::ChromeRenderThreadObserver()
237 : field_trial_syncer_(this), 237 : field_trial_syncer_(this),
238 visited_link_slave_(new visitedlink::VisitedLinkSlave), 238 visited_link_slave_(new visitedlink::VisitedLinkSlave),
239 renderer_configuration_binding_(this),
239 weak_factory_(this) { 240 weak_factory_(this) {
240 const base::CommandLine& command_line = 241 const base::CommandLine& command_line =
241 *base::CommandLine::ForCurrentProcess(); 242 *base::CommandLine::ForCurrentProcess();
242 243
243 RenderThread* thread = RenderThread::Get(); 244 RenderThread* thread = RenderThread::Get();
244 resource_delegate_.reset(new RendererResourceDelegate()); 245 resource_delegate_.reset(new RendererResourceDelegate());
245 thread->SetResourceDispatcherDelegate(resource_delegate_.get()); 246 thread->SetResourceDispatcherDelegate(resource_delegate_.get());
246 247
247 thread->GetInterfaceRegistry()->AddInterface( 248 thread->GetInterfaceRegistry()->AddInterface(
248 base::Bind(CreateResourceUsageReporter, weak_factory_.GetWeakPtr())); 249 base::Bind(CreateResourceUsageReporter, weak_factory_.GetWeakPtr()));
(...skipping 18 matching lines...) Expand all
267 WebSecurityPolicy::registerURLSchemeAsNoAccess(native_scheme); 268 WebSecurityPolicy::registerURLSchemeAsNoAccess(native_scheme);
268 WebSecurityPolicy::registerURLSchemeAsNotAllowingJavascriptURLs( 269 WebSecurityPolicy::registerURLSchemeAsNotAllowingJavascriptURLs(
269 native_scheme); 270 native_scheme);
270 271
271 thread->GetInterfaceRegistry()->AddInterface( 272 thread->GetInterfaceRegistry()->AddInterface(
272 visited_link_slave_->GetBindCallback()); 273 visited_link_slave_->GetBindCallback());
273 } 274 }
274 275
275 ChromeRenderThreadObserver::~ChromeRenderThreadObserver() {} 276 ChromeRenderThreadObserver::~ChromeRenderThreadObserver() {}
276 277
278 void ChromeRenderThreadObserver::RegisterMojoInterfaces(
279 content::AssociatedInterfaceRegistry* associated_interfaces) {
280 associated_interfaces->AddInterface(
281 base::Bind(&ChromeRenderThreadObserver::OnRendererInterfaceRequest,
282 base::Unretained(this)));
283 }
284
285 void ChromeRenderThreadObserver::UnregisterMojoInterfaces(
286 content::AssociatedInterfaceRegistry* associated_interfaces) {
287 associated_interfaces->RemoveInterface(
288 chrome::mojom::RendererConfiguration::Name_);
289 }
290
291 void ChromeRenderThreadObserver::OnRendererInterfaceRequest(
sky 2016/12/08 16:06:23 Make declaration/definition order match.
nigeltao1 2016/12/08 23:59:09 Ha, I discovered some unused declarations in the .
292 chrome::mojom::RendererConfigurationAssociatedRequest request) {
293 DCHECK(!renderer_configuration_binding_.is_bound());
294 renderer_configuration_binding_.Bind(std::move(request));
295 }
296
277 bool ChromeRenderThreadObserver::OnControlMessageReceived( 297 bool ChromeRenderThreadObserver::OnControlMessageReceived(
278 const IPC::Message& message) { 298 const IPC::Message& message) {
279 bool handled = true; 299 bool handled = true;
280 IPC_BEGIN_MESSAGE_MAP(ChromeRenderThreadObserver, message) 300 IPC_BEGIN_MESSAGE_MAP(ChromeRenderThreadObserver, message)
281 IPC_MESSAGE_HANDLER(ChromeViewMsg_SetIsIncognitoProcess,
282 OnSetIsIncognitoProcess)
283 IPC_MESSAGE_HANDLER(ChromeViewMsg_SetFieldTrialGroup, OnSetFieldTrialGroup) 301 IPC_MESSAGE_HANDLER(ChromeViewMsg_SetFieldTrialGroup, OnSetFieldTrialGroup)
284 IPC_MESSAGE_HANDLER(ChromeViewMsg_SetContentSettingRules, 302 IPC_MESSAGE_HANDLER(ChromeViewMsg_SetContentSettingRules,
285 OnSetContentSettingRules) 303 OnSetContentSettingRules)
286 IPC_MESSAGE_UNHANDLED(handled = false) 304 IPC_MESSAGE_UNHANDLED(handled = false)
287 IPC_END_MESSAGE_MAP() 305 IPC_END_MESSAGE_MAP()
288 return handled; 306 return handled;
289 } 307 }
290 308
291 void ChromeRenderThreadObserver::OnRenderProcessShutdown() { 309 void ChromeRenderThreadObserver::OnRenderProcessShutdown() {
292 visited_link_slave_.reset(); 310 visited_link_slave_.reset();
311 // This renderer_configuration_binding_.Unbind call works around tests that
312 // run in single-process mode, where the renderer_configuration_binding_
313 // destructor is (mistakenly??) run on the wrong thread during teardown. See
314 // https://groups.google.com/a/chromium.org/d/msg/chromium-mojo/BKjxN1DLdrc/vB CU5Pw5AAAJ
sky 2016/12/08 16:06:24 I would file a bug on this.
nigeltao1 2016/12/08 23:59:09 I filed http://crbug.com/672646
315 if (renderer_configuration_binding_.is_bound())
nigeltao1 2016/12/08 06:37:04 rockot, please take a close look at this.
316 renderer_configuration_binding_.Unbind();
293 } 317 }
294 318
295 void ChromeRenderThreadObserver::OnFieldTrialGroupFinalized( 319 void ChromeRenderThreadObserver::OnFieldTrialGroupFinalized(
296 const std::string& trial_name, 320 const std::string& trial_name,
297 const std::string& group_name) { 321 const std::string& group_name) {
298 chrome::mojom::FieldTrialRecorderPtr field_trial_recorder; 322 chrome::mojom::FieldTrialRecorderPtr field_trial_recorder;
299 content::RenderThread::Get()->GetRemoteInterfaces()->GetInterface( 323 content::RenderThread::Get()->GetRemoteInterfaces()->GetInterface(
300 &field_trial_recorder); 324 &field_trial_recorder);
301 field_trial_recorder->FieldTrialActivated(trial_name); 325 field_trial_recorder->FieldTrialActivated(trial_name);
302 } 326 }
303 327
304 void ChromeRenderThreadObserver::OnSetIsIncognitoProcess( 328 void ChromeRenderThreadObserver::SetInitialConfiguration(
305 bool is_incognito_process) { 329 bool is_incognito_process) {
306 is_incognito_process_ = is_incognito_process; 330 is_incognito_process_ = is_incognito_process;
307 } 331 }
308 332
309 void ChromeRenderThreadObserver::OnSetContentSettingRules( 333 void ChromeRenderThreadObserver::OnSetContentSettingRules(
310 const RendererContentSettingRules& rules) { 334 const RendererContentSettingRules& rules) {
311 content_setting_rules_ = rules; 335 content_setting_rules_ = rules;
312 } 336 }
313 337
314 void ChromeRenderThreadObserver::OnSetFieldTrialGroup( 338 void ChromeRenderThreadObserver::OnSetFieldTrialGroup(
315 const std::string& trial_name, 339 const std::string& trial_name,
316 const std::string& group_name) { 340 const std::string& group_name) {
317 field_trial_syncer_.OnSetFieldTrialGroup(trial_name, group_name); 341 field_trial_syncer_.OnSetFieldTrialGroup(trial_name, group_name);
318 } 342 }
319 343
320 const RendererContentSettingRules* 344 const RendererContentSettingRules*
321 ChromeRenderThreadObserver::content_setting_rules() const { 345 ChromeRenderThreadObserver::content_setting_rules() const {
322 return &content_setting_rules_; 346 return &content_setting_rules_;
323 } 347 }
OLDNEW
« no previous file with comments | « chrome/renderer/chrome_render_thread_observer.h ('k') | content/public/renderer/render_thread_observer.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698