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

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

Issue 351013: Chrome changes to extract the code from V8Proxy that special-cases... (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: '' Created 11 years, 1 month 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
« no previous file with comments | « chrome/renderer/render_view.h ('k') | chrome/renderer/renderer_glue.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 (c) 2009 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2009 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/render_view.h" 5 #include "chrome/renderer/render_view.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 #include <string> 8 #include <string>
9 #include <vector> 9 #include <vector>
10 10
(...skipping 2404 matching lines...) Expand 10 before | Expand all | Expand 10 after
2415 Send(new ViewHostMsg_DidDisplayInsecureContent(routing_id_)); 2415 Send(new ViewHostMsg_DidDisplayInsecureContent(routing_id_));
2416 } 2416 }
2417 2417
2418 void RenderView::didRunInsecureContent( 2418 void RenderView::didRunInsecureContent(
2419 WebFrame* frame, const WebSecurityOrigin& origin) { 2419 WebFrame* frame, const WebSecurityOrigin& origin) {
2420 Send(new ViewHostMsg_DidRunInsecureContent( 2420 Send(new ViewHostMsg_DidRunInsecureContent(
2421 routing_id_, 2421 routing_id_,
2422 origin.toString().utf8())); 2422 origin.toString().utf8()));
2423 } 2423 }
2424 2424
2425 bool RenderView::allowScript(WebFrame* frame, bool enabled_per_settings) {
2426 if (enabled_per_settings)
2427 return true;
2428
2429 WebSecurityOrigin origin = frame->securityOrigin();
2430 if (origin.isEmpty())
2431 return false; // Uninitialized document?
2432
2433 if (EqualsASCII(origin.protocol(), chrome::kChromeUIScheme))
2434 return true; // Browser UI elements should still work.
2435
2436 // If the scheme is ftp: or file:, an empty file name indicates a directory
2437 // listing, which requires JavaScript to function properly.
2438 GURL frame_url = frame->url();
2439 const char* kDirProtocols[] = { "ftp", "file" };
2440 for (size_t i = 0; i < arraysize(kDirProtocols); ++i) {
2441 if (EqualsASCII(origin.protocol(), kDirProtocols[i])) {
2442 return frame_url.SchemeIs(kDirProtocols[i]) &&
2443 frame_url.ExtractFileName().empty();
2444 }
2445 }
2446
2447 return false; // Other protocols fall through here.
2448 }
2449
2425 void RenderView::didExhaustMemoryAvailableForScript(WebFrame* frame) { 2450 void RenderView::didExhaustMemoryAvailableForScript(WebFrame* frame) {
2426 Send(new ViewHostMsg_JSOutOfMemory(routing_id_)); 2451 Send(new ViewHostMsg_JSOutOfMemory(routing_id_));
2427 } 2452 }
2428 2453
2429 void RenderView::didCreateScriptContext(WebFrame* frame) { 2454 void RenderView::didCreateScriptContext(WebFrame* frame) {
2430 EventBindings::HandleContextCreated(frame, false); 2455 EventBindings::HandleContextCreated(frame, false);
2431 } 2456 }
2432 2457
2433 void RenderView::didDestroyScriptContext(WebFrame* frame) { 2458 void RenderView::didDestroyScriptContext(WebFrame* frame) {
2434 EventBindings::HandleContextDestroyed(frame); 2459 EventBindings::HandleContextDestroyed(frame);
(...skipping 1279 matching lines...) Expand 10 before | Expand all | Expand 10 after
3714 new PluginMsg_SignalModalDialogEvent(host_window_)); 3739 new PluginMsg_SignalModalDialogEvent(host_window_));
3715 3740
3716 message->EnableMessagePumping(); // Runs a nested message loop. 3741 message->EnableMessagePumping(); // Runs a nested message loop.
3717 bool rv = Send(message); 3742 bool rv = Send(message);
3718 3743
3719 PluginChannelHost::Broadcast( 3744 PluginChannelHost::Broadcast(
3720 new PluginMsg_ResetModalDialogEvent(host_window_)); 3745 new PluginMsg_ResetModalDialogEvent(host_window_));
3721 3746
3722 return rv; 3747 return rv;
3723 } 3748 }
OLDNEW
« no previous file with comments | « chrome/renderer/render_view.h ('k') | chrome/renderer/renderer_glue.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698