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

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

Issue 1259673002: Make UTF16ToASCII and UTF16TOUTF8 take a StringPiece (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 5 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
« no previous file with comments | « content/renderer/npapi/webplugin_impl.cc ('k') | content/renderer/render_view_browsertest.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 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_frame_impl.h" 5 #include "content/renderer/render_frame_impl.h"
6 6
7 #include <map> 7 #include <map>
8 #include <string> 8 #include <string>
9 9
10 #include "base/auto_reset.h" 10 #include "base/auto_reset.h"
(...skipping 1951 matching lines...) Expand 10 before | Expand all | Expand 10 after
1962 blink::WebPlugin* RenderFrameImpl::createPlugin( 1962 blink::WebPlugin* RenderFrameImpl::createPlugin(
1963 blink::WebLocalFrame* frame, 1963 blink::WebLocalFrame* frame,
1964 const blink::WebPluginParams& params) { 1964 const blink::WebPluginParams& params) {
1965 DCHECK_EQ(frame_, frame); 1965 DCHECK_EQ(frame_, frame);
1966 blink::WebPlugin* plugin = NULL; 1966 blink::WebPlugin* plugin = NULL;
1967 if (GetContentClient()->renderer()->OverrideCreatePlugin( 1967 if (GetContentClient()->renderer()->OverrideCreatePlugin(
1968 this, frame, params, &plugin)) { 1968 this, frame, params, &plugin)) {
1969 return plugin; 1969 return plugin;
1970 } 1970 }
1971 1971
1972 if (base::UTF16ToUTF8(params.mimeType) == kBrowserPluginMimeType) { 1972 if (base::UTF16ToUTF8(base::StringPiece16(params.mimeType)) ==
1973 kBrowserPluginMimeType) {
1973 return BrowserPluginManager::Get()->CreateBrowserPlugin( 1974 return BrowserPluginManager::Get()->CreateBrowserPlugin(
1974 this, GetContentClient() 1975 this, GetContentClient()
1975 ->renderer() 1976 ->renderer()
1976 ->CreateBrowserPluginDelegate(this, kBrowserPluginMimeType, 1977 ->CreateBrowserPluginDelegate(this, kBrowserPluginMimeType,
1977 GURL(params.url)) 1978 GURL(params.url))
1978 ->GetWeakPtr()); 1979 ->GetWeakPtr());
1979 } 1980 }
1980 1981
1981 #if defined(ENABLE_PLUGINS) 1982 #if defined(ENABLE_PLUGINS)
1982 WebPluginInfo info; 1983 WebPluginInfo info;
(...skipping 154 matching lines...) Expand 10 before | Expand all | Expand 10 after
2137 } 2138 }
2138 2139
2139 blink::WebFrame* RenderFrameImpl::createChildFrame( 2140 blink::WebFrame* RenderFrameImpl::createChildFrame(
2140 blink::WebLocalFrame* parent, 2141 blink::WebLocalFrame* parent,
2141 blink::WebTreeScopeType scope, 2142 blink::WebTreeScopeType scope,
2142 const blink::WebString& name, 2143 const blink::WebString& name,
2143 blink::WebSandboxFlags sandbox_flags) { 2144 blink::WebSandboxFlags sandbox_flags) {
2144 // Synchronously notify the browser of a child frame creation to get the 2145 // Synchronously notify the browser of a child frame creation to get the
2145 // routing_id for the RenderFrame. 2146 // routing_id for the RenderFrame.
2146 int child_routing_id = MSG_ROUTING_NONE; 2147 int child_routing_id = MSG_ROUTING_NONE;
2147 Send(new FrameHostMsg_CreateChildFrame(routing_id_, scope, 2148 Send(new FrameHostMsg_CreateChildFrame(
2148 base::UTF16ToUTF8(name), sandbox_flags, 2149 routing_id_, scope,
2149 &child_routing_id)); 2150 base::UTF16ToUTF8(base::StringPiece16(name)), sandbox_flags,
2151 &child_routing_id));
2150 2152
2151 // Allocation of routing id failed, so we can't create a child frame. This can 2153 // Allocation of routing id failed, so we can't create a child frame. This can
2152 // happen if this RenderFrameImpl's IPCs are being filtered when in swapped 2154 // happen if this RenderFrameImpl's IPCs are being filtered when in swapped
2153 // out state or synchronous IPC message above has failed. 2155 // out state or synchronous IPC message above has failed.
2154 if (child_routing_id == MSG_ROUTING_NONE) { 2156 if (child_routing_id == MSG_ROUTING_NONE) {
2155 NOTREACHED() << "Failed to allocate routing id for child frame."; 2157 NOTREACHED() << "Failed to allocate routing id for child frame.";
2156 return nullptr; 2158 return nullptr;
2157 } 2159 }
2158 2160
2159 // Create the RenderFrame and WebLocalFrame, linking the two. 2161 // Create the RenderFrame and WebLocalFrame, linking the two.
(...skipping 96 matching lines...) Expand 10 before | Expand all | Expand 10 after
2256 // For now, send these updates only for --site-per-process, which needs to 2258 // For now, send these updates only for --site-per-process, which needs to
2257 // replicate frame names to frame proxies, and when 2259 // replicate frame names to frame proxies, and when
2258 // |report_frame_name_changes| is set (used by <webview>). If needed, this 2260 // |report_frame_name_changes| is set (used by <webview>). If needed, this
2259 // can be optimized further by only sending the update if there are any 2261 // can be optimized further by only sending the update if there are any
2260 // remote frames in the frame tree, or delaying and batching up IPCs if 2262 // remote frames in the frame tree, or delaying and batching up IPCs if
2261 // updates are happening too frequently. 2263 // updates are happening too frequently.
2262 bool is_site_per_process = base::CommandLine::ForCurrentProcess()->HasSwitch( 2264 bool is_site_per_process = base::CommandLine::ForCurrentProcess()->HasSwitch(
2263 switches::kSitePerProcess); 2265 switches::kSitePerProcess);
2264 if (is_site_per_process || 2266 if (is_site_per_process ||
2265 render_view_->renderer_preferences_.report_frame_name_changes) { 2267 render_view_->renderer_preferences_.report_frame_name_changes) {
2266 Send(new FrameHostMsg_DidChangeName(routing_id_, base::UTF16ToUTF8(name))); 2268 Send(new FrameHostMsg_DidChangeName(
2269 routing_id_, base::UTF16ToUTF8(base::StringPiece16(name))));
2267 } 2270 }
2268 } 2271 }
2269 2272
2270 void RenderFrameImpl::didChangeSandboxFlags(blink::WebFrame* child_frame, 2273 void RenderFrameImpl::didChangeSandboxFlags(blink::WebFrame* child_frame,
2271 blink::WebSandboxFlags flags) { 2274 blink::WebSandboxFlags flags) {
2272 int frame_routing_id = MSG_ROUTING_NONE; 2275 int frame_routing_id = MSG_ROUTING_NONE;
2273 if (child_frame->isWebRemoteFrame()) { 2276 if (child_frame->isWebRemoteFrame()) {
2274 frame_routing_id = 2277 frame_routing_id =
2275 RenderFrameProxy::FromWebFrame(child_frame)->routing_id(); 2278 RenderFrameProxy::FromWebFrame(child_frame)->routing_id();
2276 } else { 2279 } else {
(...skipping 1493 matching lines...) Expand 10 before | Expand all | Expand 10 after
3770 GetContentClient()->renderer()->CreateAppBannerClient(this); 3773 GetContentClient()->renderer()->CreateAppBannerClient(this);
3771 } 3774 }
3772 3775
3773 return app_banner_client_.get(); 3776 return app_banner_client_.get();
3774 } 3777 }
3775 3778
3776 void RenderFrameImpl::registerProtocolHandler(const WebString& scheme, 3779 void RenderFrameImpl::registerProtocolHandler(const WebString& scheme,
3777 const WebURL& url, 3780 const WebURL& url,
3778 const WebString& title) { 3781 const WebString& title) {
3779 bool user_gesture = WebUserGestureIndicator::isProcessingUserGesture(); 3782 bool user_gesture = WebUserGestureIndicator::isProcessingUserGesture();
3780 Send(new FrameHostMsg_RegisterProtocolHandler(routing_id_, 3783 Send(new FrameHostMsg_RegisterProtocolHandler(
3781 base::UTF16ToUTF8(scheme), 3784 routing_id_,
3782 url, 3785 base::UTF16ToUTF8(base::StringPiece16(scheme)),
3783 title, 3786 url,
3784 user_gesture)); 3787 title,
3788 user_gesture));
3785 } 3789 }
3786 3790
3787 void RenderFrameImpl::unregisterProtocolHandler(const WebString& scheme, 3791 void RenderFrameImpl::unregisterProtocolHandler(const WebString& scheme,
3788 const WebURL& url) { 3792 const WebURL& url) {
3789 bool user_gesture = WebUserGestureIndicator::isProcessingUserGesture(); 3793 bool user_gesture = WebUserGestureIndicator::isProcessingUserGesture();
3790 Send(new FrameHostMsg_UnregisterProtocolHandler(routing_id_, 3794 Send(new FrameHostMsg_UnregisterProtocolHandler(
3791 base::UTF16ToUTF8(scheme), 3795 routing_id_,
3792 url, 3796 base::UTF16ToUTF8(base::StringPiece16(scheme)),
3793 user_gesture)); 3797 url,
3798 user_gesture));
3794 } 3799 }
3795 3800
3796 blink::WebBluetooth* RenderFrameImpl::bluetooth() { 3801 blink::WebBluetooth* RenderFrameImpl::bluetooth() {
3797 if (!bluetooth_) { 3802 if (!bluetooth_) {
3798 bluetooth_.reset(new WebBluetoothImpl( 3803 bluetooth_.reset(new WebBluetoothImpl(
3799 ChildThreadImpl::current()->thread_safe_sender(), routing_id_)); 3804 ChildThreadImpl::current()->thread_safe_sender(), routing_id_));
3800 } 3805 }
3801 3806
3802 return bluetooth_.get(); 3807 return bluetooth_.get();
3803 } 3808 }
(...skipping 1240 matching lines...) Expand 10 before | Expand all | Expand 10 after
5044 void RenderFrameImpl::RegisterMojoServices() { 5049 void RenderFrameImpl::RegisterMojoServices() {
5045 // Only main frame have ImageDownloader service. 5050 // Only main frame have ImageDownloader service.
5046 if (!frame_->parent()) { 5051 if (!frame_->parent()) {
5047 GetServiceRegistry()->AddService<image_downloader::ImageDownloader>( 5052 GetServiceRegistry()->AddService<image_downloader::ImageDownloader>(
5048 base::Bind(&ImageDownloaderImpl::CreateMojoService, 5053 base::Bind(&ImageDownloaderImpl::CreateMojoService,
5049 base::Unretained(this))); 5054 base::Unretained(this)));
5050 } 5055 }
5051 } 5056 }
5052 5057
5053 } // namespace content 5058 } // namespace content
OLDNEW
« no previous file with comments | « content/renderer/npapi/webplugin_impl.cc ('k') | content/renderer/render_view_browsertest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698