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

Side by Side Diff: content/renderer/render_view_impl.cc

Issue 15947004: Allow renderer to create pepper ResourceHosts in the browser (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years, 6 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 | Annotate | Revision Log
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 "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 80 matching lines...) Expand 10 before | Expand all | Expand 10 after
91 #include "content/renderer/media/audio_renderer_mixer_manager.h" 91 #include "content/renderer/media/audio_renderer_mixer_manager.h"
92 #include "content/renderer/media/media_stream_dependency_factory.h" 92 #include "content/renderer/media/media_stream_dependency_factory.h"
93 #include "content/renderer/media/media_stream_dispatcher.h" 93 #include "content/renderer/media/media_stream_dispatcher.h"
94 #include "content/renderer/media/media_stream_impl.h" 94 #include "content/renderer/media/media_stream_impl.h"
95 #include "content/renderer/media/render_media_log.h" 95 #include "content/renderer/media/render_media_log.h"
96 #include "content/renderer/media/renderer_gpu_video_decoder_factories.h" 96 #include "content/renderer/media/renderer_gpu_video_decoder_factories.h"
97 #include "content/renderer/media/rtc_peer_connection_handler.h" 97 #include "content/renderer/media/rtc_peer_connection_handler.h"
98 #include "content/renderer/media/video_capture_impl_manager.h" 98 #include "content/renderer/media/video_capture_impl_manager.h"
99 #include "content/renderer/mhtml_generator.h" 99 #include "content/renderer/mhtml_generator.h"
100 #include "content/renderer/notification_provider.h" 100 #include "content/renderer/notification_provider.h"
101 #include "content/renderer/pepper/pepper_browser_connection.h"
101 #include "content/renderer/pepper/pepper_plugin_delegate_impl.h" 102 #include "content/renderer/pepper/pepper_plugin_delegate_impl.h"
102 #include "content/renderer/plugin_channel_host.h" 103 #include "content/renderer/plugin_channel_host.h"
103 #include "content/renderer/render_process.h" 104 #include "content/renderer/render_process.h"
104 #include "content/renderer/render_thread_impl.h" 105 #include "content/renderer/render_thread_impl.h"
105 #include "content/renderer/render_view_impl_params.h" 106 #include "content/renderer/render_view_impl_params.h"
106 #include "content/renderer/render_view_mouse_lock_dispatcher.h" 107 #include "content/renderer/render_view_mouse_lock_dispatcher.h"
107 #include "content/renderer/render_widget_fullscreen_pepper.h" 108 #include "content/renderer/render_widget_fullscreen_pepper.h"
108 #include "content/renderer/renderer_date_time_picker.h" 109 #include "content/renderer/renderer_date_time_picker.h"
109 #include "content/renderer/renderer_webapplicationcachehost_impl.h" 110 #include "content/renderer/renderer_webapplicationcachehost_impl.h"
110 #include "content/renderer/renderer_webcolorchooser_impl.h" 111 #include "content/renderer/renderer_webcolorchooser_impl.h"
(...skipping 701 matching lines...) Expand 10 before | Expand all | Expand 10 after
812 if (params->opener_id != MSG_ROUTING_NONE && !params->is_renderer_created) { 813 if (params->opener_id != MSG_ROUTING_NONE && !params->is_renderer_created) {
813 RenderViewImpl* opener_view = FromRoutingID(params->opener_id); 814 RenderViewImpl* opener_view = FromRoutingID(params->opener_id);
814 if (opener_view) 815 if (opener_view)
815 webview()->mainFrame()->setOpener(opener_view->webview()->mainFrame()); 816 webview()->mainFrame()->setOpener(opener_view->webview()->mainFrame());
816 } 817 }
817 818
818 // If we are initially swapped out, navigate to kSwappedOutURL. 819 // If we are initially swapped out, navigate to kSwappedOutURL.
819 // This ensures we are in a unique origin that others cannot script. 820 // This ensures we are in a unique origin that others cannot script.
820 if (is_swapped_out_) 821 if (is_swapped_out_)
821 NavigateToSwappedOutURL(webview()->mainFrame()); 822 NavigateToSwappedOutURL(webview()->mainFrame());
823
824 // Lifetime is managed as a RenderViewObserver.
825 pepper_browser_connection_ = new PepperBrowserConnection(this);
822 } 826 }
823 827
824 RenderViewImpl::~RenderViewImpl() { 828 RenderViewImpl::~RenderViewImpl() {
825 history_page_ids_.clear(); 829 history_page_ids_.clear();
826 830
827 if (decrement_shared_popup_at_destruction_) 831 if (decrement_shared_popup_at_destruction_)
828 shared_popup_counter_->data--; 832 shared_popup_counter_->data--;
829 833
830 // If file chooser is still waiting for answer, dispatch empty answer. 834 // If file chooser is still waiting for answer, dispatch empty answer.
831 while (!file_chooser_completions_.empty()) { 835 while (!file_chooser_completions_.empty()) {
(...skipping 5730 matching lines...) Expand 10 before | Expand all | Expand 10 after
6562 WebURL url = icon_urls[i].iconURL(); 6566 WebURL url = icon_urls[i].iconURL();
6563 if (!url.isEmpty()) 6567 if (!url.isEmpty())
6564 urls.push_back(FaviconURL(url, 6568 urls.push_back(FaviconURL(url,
6565 ToFaviconType(icon_urls[i].iconType()))); 6569 ToFaviconType(icon_urls[i].iconType())));
6566 } 6570 }
6567 SendUpdateFaviconURL(urls); 6571 SendUpdateFaviconURL(urls);
6568 } 6572 }
6569 6573
6570 6574
6571 } // namespace content 6575 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698