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 "content/renderer/render_view_impl.h" | 5 #include "content/renderer/render_view_impl.h" |
6 | 6 |
7 #include <algorithm> | 7 #include <algorithm> |
8 #include <cmath> | 8 #include <cmath> |
9 | 9 |
10 #include "base/auto_reset.h" | 10 #include "base/auto_reset.h" |
(...skipping 78 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
89 #include "content/renderer/load_progress_tracker.h" | 89 #include "content/renderer/load_progress_tracker.h" |
90 #include "content/renderer/media/audio_device_factory.h" | 90 #include "content/renderer/media/audio_device_factory.h" |
91 #include "content/renderer/media/media_stream_dependency_factory.h" | 91 #include "content/renderer/media/media_stream_dependency_factory.h" |
92 #include "content/renderer/media/media_stream_dispatcher.h" | 92 #include "content/renderer/media/media_stream_dispatcher.h" |
93 #include "content/renderer/media/midi_dispatcher.h" | 93 #include "content/renderer/media/midi_dispatcher.h" |
94 #include "content/renderer/media/video_capture_impl_manager.h" | 94 #include "content/renderer/media/video_capture_impl_manager.h" |
95 #include "content/renderer/memory_benchmarking_extension.h" | 95 #include "content/renderer/memory_benchmarking_extension.h" |
96 #include "content/renderer/mhtml_generator.h" | 96 #include "content/renderer/mhtml_generator.h" |
97 #include "content/renderer/push_messaging_dispatcher.h" | 97 #include "content/renderer/push_messaging_dispatcher.h" |
98 #include "content/renderer/render_frame_impl.h" | 98 #include "content/renderer/render_frame_impl.h" |
| 99 #include "content/renderer/render_frame_proxy.h" |
99 #include "content/renderer/render_process.h" | 100 #include "content/renderer/render_process.h" |
100 #include "content/renderer/render_thread_impl.h" | 101 #include "content/renderer/render_thread_impl.h" |
101 #include "content/renderer/render_view_impl_params.h" | 102 #include "content/renderer/render_view_impl_params.h" |
102 #include "content/renderer/render_view_mouse_lock_dispatcher.h" | 103 #include "content/renderer/render_view_mouse_lock_dispatcher.h" |
103 #include "content/renderer/render_widget_fullscreen_pepper.h" | 104 #include "content/renderer/render_widget_fullscreen_pepper.h" |
104 #include "content/renderer/renderer_webapplicationcachehost_impl.h" | 105 #include "content/renderer/renderer_webapplicationcachehost_impl.h" |
105 #include "content/renderer/resizing_mode_selector.h" | 106 #include "content/renderer/resizing_mode_selector.h" |
106 #include "content/renderer/savable_resources.h" | 107 #include "content/renderer/savable_resources.h" |
107 #include "content/renderer/skia_benchmarking_extension.h" | 108 #include "content/renderer/skia_benchmarking_extension.h" |
108 #include "content/renderer/speech_recognition_dispatcher.h" | 109 #include "content/renderer/speech_recognition_dispatcher.h" |
(...skipping 577 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
686 // Ensure we start with a valid next_page_id_ from the browser. | 687 // Ensure we start with a valid next_page_id_ from the browser. |
687 DCHECK_GE(next_page_id_, 0); | 688 DCHECK_GE(next_page_id_, 0); |
688 | 689 |
689 RenderFrameImpl* main_render_frame = RenderFrameImpl::Create( | 690 RenderFrameImpl* main_render_frame = RenderFrameImpl::Create( |
690 this, params->main_frame_routing_id); | 691 this, params->main_frame_routing_id); |
691 // The main frame WebLocalFrame object is closed by | 692 // The main frame WebLocalFrame object is closed by |
692 // RenderFrameImpl::frameDetached(). | 693 // RenderFrameImpl::frameDetached(). |
693 WebLocalFrame* web_frame = WebLocalFrame::create(main_render_frame); | 694 WebLocalFrame* web_frame = WebLocalFrame::create(main_render_frame); |
694 main_render_frame->SetWebFrame(web_frame); | 695 main_render_frame->SetWebFrame(web_frame); |
695 | 696 |
| 697 if (params->proxy_routing_id != MSG_ROUTING_NONE) { |
| 698 CHECK(params->swapped_out); |
| 699 RenderFrameProxy* proxy = |
| 700 RenderFrameProxy::CreateFrameProxy(params->proxy_routing_id, |
| 701 params->main_frame_routing_id); |
| 702 main_render_frame->set_render_frame_proxy(proxy); |
| 703 } |
| 704 |
696 webwidget_ = WebView::create(this); | 705 webwidget_ = WebView::create(this); |
697 webwidget_mouse_lock_target_.reset(new WebWidgetLockTarget(webwidget_)); | 706 webwidget_mouse_lock_target_.reset(new WebWidgetLockTarget(webwidget_)); |
698 | 707 |
699 const CommandLine& command_line = *CommandLine::ForCurrentProcess(); | 708 const CommandLine& command_line = *CommandLine::ForCurrentProcess(); |
700 | 709 |
701 if (command_line.HasSwitch(switches::kStatsCollectionController)) | 710 if (command_line.HasSwitch(switches::kStatsCollectionController)) |
702 stats_collection_observer_.reset(new StatsCollectionObserver(this)); | 711 stats_collection_observer_.reset(new StatsCollectionObserver(this)); |
703 | 712 |
704 #if defined(OS_ANDROID) | 713 #if defined(OS_ANDROID) |
705 const std::string region_code = | 714 const std::string region_code = |
(...skipping 190 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
896 } | 905 } |
897 | 906 |
898 /*static*/ | 907 /*static*/ |
899 RenderViewImpl* RenderViewImpl::Create( | 908 RenderViewImpl* RenderViewImpl::Create( |
900 int32 opener_id, | 909 int32 opener_id, |
901 bool window_was_created_with_opener, | 910 bool window_was_created_with_opener, |
902 const RendererPreferences& renderer_prefs, | 911 const RendererPreferences& renderer_prefs, |
903 const WebPreferences& webkit_prefs, | 912 const WebPreferences& webkit_prefs, |
904 int32 routing_id, | 913 int32 routing_id, |
905 int32 main_frame_routing_id, | 914 int32 main_frame_routing_id, |
| 915 int32 proxy_routing_id, |
906 int32 surface_id, | 916 int32 surface_id, |
907 int64 session_storage_namespace_id, | 917 int64 session_storage_namespace_id, |
908 const base::string16& frame_name, | 918 const base::string16& frame_name, |
909 bool is_renderer_created, | 919 bool is_renderer_created, |
910 bool swapped_out, | 920 bool swapped_out, |
911 bool hidden, | 921 bool hidden, |
912 bool never_visible, | 922 bool never_visible, |
913 int32 next_page_id, | 923 int32 next_page_id, |
914 const blink::WebScreenInfo& screen_info, | 924 const blink::WebScreenInfo& screen_info, |
915 AccessibilityMode accessibility_mode) { | 925 AccessibilityMode accessibility_mode) { |
916 DCHECK(routing_id != MSG_ROUTING_NONE); | 926 DCHECK(routing_id != MSG_ROUTING_NONE); |
917 RenderViewImplParams params(opener_id, | 927 RenderViewImplParams params(opener_id, |
918 window_was_created_with_opener, | 928 window_was_created_with_opener, |
919 renderer_prefs, | 929 renderer_prefs, |
920 webkit_prefs, | 930 webkit_prefs, |
921 routing_id, | 931 routing_id, |
922 main_frame_routing_id, | 932 main_frame_routing_id, |
| 933 proxy_routing_id, |
923 surface_id, | 934 surface_id, |
924 session_storage_namespace_id, | 935 session_storage_namespace_id, |
925 frame_name, | 936 frame_name, |
926 is_renderer_created, | 937 is_renderer_created, |
927 swapped_out, | 938 swapped_out, |
928 hidden, | 939 hidden, |
929 never_visible, | 940 never_visible, |
930 next_page_id, | 941 next_page_id, |
931 screen_info, | 942 screen_info, |
932 accessibility_mode); | 943 accessibility_mode); |
(...skipping 517 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1450 // return from this call synchronously, we just have to make our best guess | 1461 // return from this call synchronously, we just have to make our best guess |
1451 // and rely on the browser sending a WasHidden / WasShown message if it | 1462 // and rely on the browser sending a WasHidden / WasShown message if it |
1452 // disagrees. | 1463 // disagrees. |
1453 RenderViewImpl* view = RenderViewImpl::Create( | 1464 RenderViewImpl* view = RenderViewImpl::Create( |
1454 routing_id_, | 1465 routing_id_, |
1455 true, // window_was_created_with_opener | 1466 true, // window_was_created_with_opener |
1456 renderer_preferences_, | 1467 renderer_preferences_, |
1457 webkit_preferences_, | 1468 webkit_preferences_, |
1458 routing_id, | 1469 routing_id, |
1459 main_frame_routing_id, | 1470 main_frame_routing_id, |
| 1471 MSG_ROUTING_NONE, |
1460 surface_id, | 1472 surface_id, |
1461 cloned_session_storage_namespace_id, | 1473 cloned_session_storage_namespace_id, |
1462 base::string16(), // WebCore will take care of setting the correct name. | 1474 base::string16(), // WebCore will take care of setting the correct name. |
1463 true, // is_renderer_created | 1475 true, // is_renderer_created |
1464 false, // swapped_out | 1476 false, // swapped_out |
1465 params.disposition == NEW_BACKGROUND_TAB, // hidden | 1477 params.disposition == NEW_BACKGROUND_TAB, // hidden |
1466 never_visible, | 1478 never_visible, |
1467 1, // next_page_id | 1479 1, // next_page_id |
1468 screen_info_, | 1480 screen_info_, |
1469 accessibility_mode_); | 1481 accessibility_mode_); |
(...skipping 2595 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4065 std::vector<gfx::Size> sizes; | 4077 std::vector<gfx::Size> sizes; |
4066 ConvertToFaviconSizes(icon_urls[i].sizes(), &sizes); | 4078 ConvertToFaviconSizes(icon_urls[i].sizes(), &sizes); |
4067 if (!url.isEmpty()) | 4079 if (!url.isEmpty()) |
4068 urls.push_back( | 4080 urls.push_back( |
4069 FaviconURL(url, ToFaviconType(icon_urls[i].iconType()), sizes)); | 4081 FaviconURL(url, ToFaviconType(icon_urls[i].iconType()), sizes)); |
4070 } | 4082 } |
4071 SendUpdateFaviconURL(urls); | 4083 SendUpdateFaviconURL(urls); |
4072 } | 4084 } |
4073 | 4085 |
4074 } // namespace content | 4086 } // namespace content |
OLD | NEW |