Chromium Code Reviews| Index: android_webview/renderer/aw_render_view_ext.cc |
| diff --git a/android_webview/renderer/aw_render_view_ext.cc b/android_webview/renderer/aw_render_view_ext.cc |
| index ae0035dbe8c28010e170799ddae4f2b440739b38..47019d4cca2968715da6e49c2f8aa6d2d40908bb 100644 |
| --- a/android_webview/renderer/aw_render_view_ext.cc |
| +++ b/android_webview/renderer/aw_render_view_ext.cc |
| @@ -5,17 +5,20 @@ |
| #include "android_webview/renderer/aw_render_view_ext.h" |
| #include "android_webview/common/render_view_messages.h" |
| +#include "content/public/common/url_constants.h" |
| #include "content/public/renderer/render_view.h" |
| +#include "third_party/WebKit/Source/WebKit/chromium/public/platform/WebURL.h" |
| +#include "third_party/WebKit/Source/WebKit/chromium/public/platform/WebVector.h" |
| #include "third_party/WebKit/Source/WebKit/chromium/public/WebDocument.h" |
| #include "third_party/WebKit/Source/WebKit/chromium/public/WebElement.h" |
| #include "third_party/WebKit/Source/WebKit/chromium/public/WebFrame.h" |
| #include "third_party/WebKit/Source/WebKit/chromium/public/WebView.h" |
| -#include "third_party/WebKit/Source/WebKit/chromium/public/platform/WebVector.h" |
| namespace android_webview { |
| AwRenderViewExt::AwRenderViewExt(content::RenderView* render_view) |
| : content::RenderViewObserver(render_view) { |
| + render_view->GetWebView()->setPermissionClient(this); |
| } |
| AwRenderViewExt::~AwRenderViewExt() {} |
| @@ -48,4 +51,19 @@ void AwRenderViewExt::OnDocumentHasImagesRequest(int id) { |
| hasImages)); |
| } |
| +bool AwRenderViewExt::allowImage(WebKit::WebFrame* frame, |
| + bool enabled_per_settings, |
| + const WebKit::WebURL& imageURL) { |
|
joth
2012/09/25 20:28:21
nit : imageURL => image_url
boliu
2012/09/25 20:52:28
stupid me...Done
|
| + // Implementing setBlockNetworkImages, so allow local scheme images to be |
| + // loaded. |
| + if (enabled_per_settings) |
| + return true; |
| + |
| + // For compatibility, only blacklist network schemes instead of whitelisting. |
| + const GURL url(imageURL); |
| + return !(url.SchemeIs(chrome::kHttpScheme) || |
| + url.SchemeIs(chrome::kHttpsScheme) || |
| + url.SchemeIs(chrome::kFtpScheme)); |
| +} |
| + |
| } // namespace android_webview |