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

Side by Side Diff: content/browser/browser_plugin/browser_plugin_embedder.cc

Issue 11111020: <browser>: Always read <browser>.src attribute from <object>.src. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Address comments from creis@ Created 8 years, 2 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/browser/browser_plugin/browser_plugin_embedder.h" 5 #include "content/browser/browser_plugin/browser_plugin_embedder.h"
6 6
7 #include <set> 7 #include <set>
8 8
9 #include "base/logging.h" 9 #include "base/logging.h"
10 #include "base/stl_util.h" 10 #include "base/stl_util.h"
(...skipping 105 matching lines...) Expand 10 before | Expand all | Expand 10 after
116 RenderViewHost* render_view_host, 116 RenderViewHost* render_view_host,
117 int instance_id, 117 int instance_id,
118 const std::string& src, 118 const std::string& src,
119 const BrowserPluginHostMsg_ResizeGuest_Params& resize_params) { 119 const BrowserPluginHostMsg_ResizeGuest_Params& resize_params) {
120 BrowserPluginGuest* guest = GetGuestByInstanceID(instance_id); 120 BrowserPluginGuest* guest = GetGuestByInstanceID(instance_id);
121 CHECK(guest); 121 CHECK(guest);
122 GURL url(src); 122 GURL url(src);
123 WebContentsImpl* guest_web_contents = 123 WebContentsImpl* guest_web_contents =
124 static_cast<WebContentsImpl*>(guest->GetWebContents()); 124 static_cast<WebContentsImpl*>(guest->GetWebContents());
125 125
126 // We ignore loading empty urls in web_contents. 126 // We do not load empty urls in web_contents.
127 // If a guest sets empty src attribute after it has navigated to some 127 // If a guest sets empty src attribute after it has navigated to some
128 // non-empty page, the action is considered no-op. 128 // non-empty page, the action is considered no-op. This empty src navigation
129 // TODO(lazyboy): The js shim for browser-plugin might need to reflect empty 129 // should never be sent to BrowserPluginEmbedder (browser process).
130 // src ignoring in the shadow DOM element: http://crbug.com/149001. 130 DCHECK(!src.empty());
131 if (!src.empty()) { 131 if (!src.empty()) {
132 // TODO(creis): Check the validity of the URL: http://crbug.com/139397.
132 guest_web_contents->GetController().LoadURL(url, 133 guest_web_contents->GetController().LoadURL(url,
133 Referrer(), 134 Referrer(),
134 PAGE_TRANSITION_AUTO_SUBFRAME, 135 PAGE_TRANSITION_AUTO_SUBFRAME,
135 std::string()); 136 std::string());
136 } 137 }
137 138
138 // Resize the guest if the resize parameter was set from the renderer. 139 // Resize the guest if the resize parameter was set from the renderer.
139 ResizeGuest(render_view_host, instance_id, resize_params); 140 ResizeGuest(render_view_host, instance_id, resize_params);
140 } 141 }
141 142
(...skipping 174 matching lines...) Expand 10 before | Expand all | Expand 10 after
316 bool visible = *Details<bool>(details).ptr(); 317 bool visible = *Details<bool>(details).ptr();
317 WebContentsVisibilityChanged(visible); 318 WebContentsVisibilityChanged(visible);
318 break; 319 break;
319 } 320 }
320 default: 321 default:
321 NOTREACHED() << "Unexpected notification type: " << type; 322 NOTREACHED() << "Unexpected notification type: " << type;
322 } 323 }
323 } 324 }
324 325
325 } // namespace content 326 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698