1f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)// Copyright 2014 The Chromium Authors. All rights reserved. 2f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be 3f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)// found in the LICENSE file. 4f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) 5f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)#include "android_webview/renderer/aw_render_frame_ext.h" 6f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)#include "content/public/renderer/document_state.h" 7f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)#include "content/public/renderer/render_frame.h" 8f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)#include "third_party/WebKit/public/web/WebDocument.h" 9f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)#include "third_party/WebKit/public/web/WebSecurityOrigin.h" 10f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) 11f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)namespace android_webview { 12f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) 13f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)AwRenderFrameExt::AwRenderFrameExt(content::RenderFrame* render_frame) 14f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) : content::RenderFrameObserver(render_frame) { 15f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)} 16f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) 17f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)AwRenderFrameExt::~AwRenderFrameExt() { 18f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)} 19f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) 20f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)void AwRenderFrameExt::DidCommitProvisionalLoad(bool is_new_navigation) { 21f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) blink::WebFrame* frame = render_frame()->GetWebFrame(); 22f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) content::DocumentState* document_state = 23f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) content::DocumentState::FromDataSource(frame->dataSource()); 24f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) if (document_state->can_load_local_resources()) { 25f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) blink::WebSecurityOrigin origin = frame->document().securityOrigin(); 26f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) origin.grantLoadLocalResources(); 27f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) } 28f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)} 29f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) 30f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)} 31f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) 32f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) 33