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

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

Issue 137463002: RenderFrame: flesh out Observer (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@lkgr
Patch Set: Remove obsolete WebFrame parameter Created 6 years, 11 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
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_content_renderer_client.h" 5 #include "chrome/renderer/chrome_content_renderer_client.h"
6 6
7 #include "base/command_line.h" 7 #include "base/command_line.h"
8 #include "base/debug/crash_logging.h" 8 #include "base/debug/crash_logging.h"
9 #include "base/logging.h" 9 #include "base/logging.h"
10 #include "base/metrics/histogram.h" 10 #include "base/metrics/histogram.h"
(...skipping 359 matching lines...) Expand 10 before | Expand all | Expand 10 after
370 // TODO(jam): when a RenderFrame is per WebFrame, this can be simplified by 370 // TODO(jam): when a RenderFrame is per WebFrame, this can be simplified by
371 // getting a RenderFrame's WebFrame and calling its parent() method. 371 // getting a RenderFrame's WebFrame and calling its parent() method.
372 if (render_frame->GetRenderView()->GetMainRenderFrame() != render_frame) { 372 if (render_frame->GetRenderView()->GetMainRenderFrame() != render_frame) {
373 // Avoid any race conditions from having the browser tell subframes that 373 // Avoid any race conditions from having the browser tell subframes that
374 // they're prerendering. 374 // they're prerendering.
375 if (prerender::PrerenderHelper::IsPrerendering( 375 if (prerender::PrerenderHelper::IsPrerendering(
376 render_frame->GetRenderView()->GetMainRenderFrame())) { 376 render_frame->GetRenderView()->GetMainRenderFrame())) {
377 new prerender::PrerenderHelper(render_frame); 377 new prerender::PrerenderHelper(render_frame);
378 } 378 }
379 } 379 }
380
381 if (!render_frame->GetWebFrame()->parent()) {
382 // Only attach NetErrorHelper to the main frame, since only the main frame
383 // should get error pages.
384 new NetErrorHelper(render_frame);
385 }
380 } 386 }
381 387
382 void ChromeContentRendererClient::RenderViewCreated( 388 void ChromeContentRendererClient::RenderViewCreated(
383 content::RenderView* render_view) { 389 content::RenderView* render_view) {
384 new extensions::ExtensionHelper(render_view, extension_dispatcher_.get()); 390 new extensions::ExtensionHelper(render_view, extension_dispatcher_.get());
385 new PageLoadHistograms(render_view); 391 new PageLoadHistograms(render_view);
386 #if defined(ENABLE_PRINTING) 392 #if defined(ENABLE_PRINTING)
387 new printing::PrintWebViewHelper(render_view); 393 new printing::PrintWebViewHelper(render_view);
388 #endif 394 #endif
389 #if defined(ENABLE_SPELLCHECK) 395 #if defined(ENABLE_SPELLCHECK)
390 new SpellCheckProvider(render_view, spellcheck_.get()); 396 new SpellCheckProvider(render_view, spellcheck_.get());
391 #endif 397 #endif
392 new prerender::PrerendererClient(render_view); 398 new prerender::PrerendererClient(render_view);
393 #if defined(FULL_SAFE_BROWSING) 399 #if defined(FULL_SAFE_BROWSING)
394 safe_browsing::MalwareDOMDetails::Create(render_view); 400 safe_browsing::MalwareDOMDetails::Create(render_view);
395 #endif 401 #endif
396 402
397 PasswordAutofillAgent* password_autofill_agent = 403 PasswordAutofillAgent* password_autofill_agent =
398 new PasswordAutofillAgent(render_view); 404 new PasswordAutofillAgent(render_view);
399 new AutofillAgent(render_view, password_autofill_agent); 405 new AutofillAgent(render_view, password_autofill_agent);
400 406
401 CommandLine* command_line = CommandLine::ForCurrentProcess(); 407 CommandLine* command_line = CommandLine::ForCurrentProcess();
402 if (autofill::password_generation::IsPasswordGenerationEnabled()) 408 if (autofill::password_generation::IsPasswordGenerationEnabled())
403 new PasswordGenerationAgent(render_view); 409 new PasswordGenerationAgent(render_view);
404 if (command_line->HasSwitch(switches::kInstantProcess)) 410 if (command_line->HasSwitch(switches::kInstantProcess))
405 new SearchBox(render_view); 411 new SearchBox(render_view);
406 412
407 new ChromeRenderViewObserver(render_view, chrome_observer_.get()); 413 new ChromeRenderViewObserver(render_view, chrome_observer_.get());
408
409 new NetErrorHelper(render_view);
410 } 414 }
411 415
412 void ChromeContentRendererClient::SetNumberOfViews(int number_of_views) { 416 void ChromeContentRendererClient::SetNumberOfViews(int number_of_views) {
413 base::debug::SetCrashKeyValue(crash_keys::kNumberOfViews, 417 base::debug::SetCrashKeyValue(crash_keys::kNumberOfViews,
414 base::IntToString(number_of_views)); 418 base::IntToString(number_of_views));
415 } 419 }
416 420
417 SkBitmap* ChromeContentRendererClient::GetSadPluginBitmap() { 421 SkBitmap* ChromeContentRendererClient::GetSadPluginBitmap() {
418 return const_cast<SkBitmap*>(ResourceBundle::GetSharedInstance(). 422 return const_cast<SkBitmap*>(ResourceBundle::GetSharedInstance().
419 GetImageNamed(IDR_SAD_PLUGIN).ToSkBitmap()); 423 GetImageNamed(IDR_SAD_PLUGIN).ToSkBitmap());
(...skipping 572 matching lines...) Expand 10 before | Expand all | Expand 10 after
992 NOTREACHED() << "unable to load template. ID: " << resource_id; 996 NOTREACHED() << "unable to load template. ID: " << resource_id;
993 } else { 997 } else {
994 base::DictionaryValue error_strings; 998 base::DictionaryValue error_strings;
995 LocalizedError::GetAppErrorStrings(failed_url, extension, 999 LocalizedError::GetAppErrorStrings(failed_url, extension,
996 &error_strings); 1000 &error_strings);
997 // "t" is the id of the template's root node. 1001 // "t" is the id of the template's root node.
998 *error_html = webui::GetTemplatesHtml(template_html, &error_strings, 1002 *error_html = webui::GetTemplatesHtml(template_html, &error_strings,
999 "t"); 1003 "t");
1000 } 1004 }
1001 } else { 1005 } else {
1002 NetErrorHelper* helper = NetErrorHelper::Get(render_view); 1006 // TODO(ellyjones): change GetNavigationErrorStrings to take a RenderFrame
1007 // instead of a RenderView, then pass that in.
1008 // This is safe for now because we only install the NetErrorHelper on the
1009 // main render frame anyway; see the TODO(ellyjones) in
1010 // RenderFrameCreated.
1011 content::RenderFrame* main_render_frame =
1012 render_view->GetMainRenderFrame();
1013 NetErrorHelper* helper = NetErrorHelper::Get(main_render_frame);
1003 helper->GetErrorHTML(frame, error, is_post, error_html); 1014 helper->GetErrorHTML(frame, error, is_post, error_html);
1004 } 1015 }
1005 } 1016 }
1006 1017
1007 if (error_description) { 1018 if (error_description) {
1008 if (!extension) 1019 if (!extension)
1009 *error_description = LocalizedError::GetErrorDetails(error, is_post); 1020 *error_description = LocalizedError::GetErrorDetails(error, is_post);
1010 } 1021 }
1011 } 1022 }
1012 1023
(...skipping 378 matching lines...) Expand 10 before | Expand all | Expand 10 after
1391 CommandLine* command_line = CommandLine::ForCurrentProcess(); 1402 CommandLine* command_line = CommandLine::ForCurrentProcess();
1392 return !command_line->HasSwitch(switches::kExtensionProcess); 1403 return !command_line->HasSwitch(switches::kExtensionProcess);
1393 } 1404 }
1394 1405
1395 blink::WebWorkerPermissionClientProxy* 1406 blink::WebWorkerPermissionClientProxy*
1396 ChromeContentRendererClient::CreateWorkerPermissionClientProxy( 1407 ChromeContentRendererClient::CreateWorkerPermissionClientProxy(
1397 content::RenderFrame* render_frame, 1408 content::RenderFrame* render_frame,
1398 blink::WebFrame* frame) { 1409 blink::WebFrame* frame) {
1399 return new WorkerPermissionClientProxy(render_frame, frame); 1410 return new WorkerPermissionClientProxy(render_frame, frame);
1400 } 1411 }
OLDNEW
« no previous file with comments | « no previous file | chrome/renderer/net/net_error_helper.h » ('j') | chrome/renderer/net/net_error_helper.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698