Index: content/renderer/render_view_impl.cc |
diff --git a/content/renderer/render_view_impl.cc b/content/renderer/render_view_impl.cc |
index 37d1011dc930132ba83deb303b2f85c65398c999..1dcfe80060b6ee487deef89bd6e5cc907800f806 100644 |
--- a/content/renderer/render_view_impl.cc |
+++ b/content/renderer/render_view_impl.cc |
@@ -146,6 +146,7 @@ |
#include "third_party/WebKit/Source/WebKit/chromium/public/WebIntentServiceInfo.h" |
#include "third_party/WebKit/Source/WebKit/chromium/public/WebMediaPlayerAction.h" |
#include "third_party/WebKit/Source/WebKit/chromium/public/WebMessagePortChannel.h" |
+#include "third_party/WebKit/Source/WebKit/chromium/public/WebNavigationPolicy.h" |
#include "third_party/WebKit/Source/WebKit/chromium/public/WebNodeList.h" |
#include "third_party/WebKit/Source/WebKit/chromium/public/WebPageSerializer.h" |
#include "third_party/WebKit/Source/WebKit/chromium/public/WebPlugin.h" |
@@ -505,6 +506,29 @@ static void NotifyTimezoneChange(WebKit::WebFrame* frame) { |
NotifyTimezoneChange(child); |
} |
+static WindowOpenDisposition NavigationPolicyToDisposition( |
+ WebNavigationPolicy policy) { |
+ switch (policy) { |
+ case WebKit::WebNavigationPolicyIgnore: |
+ return IGNORE_ACTION; |
+ case WebKit::WebNavigationPolicyDownload: |
+ return SAVE_TO_DISK; |
+ case WebKit::WebNavigationPolicyCurrentTab: |
+ return CURRENT_TAB; |
+ case WebKit::WebNavigationPolicyNewBackgroundTab: |
+ return NEW_BACKGROUND_TAB; |
+ case WebKit::WebNavigationPolicyNewForegroundTab: |
+ return NEW_FOREGROUND_TAB; |
+ case WebKit::WebNavigationPolicyNewWindow: |
+ return NEW_WINDOW; |
+ case WebKit::WebNavigationPolicyNewPopup: |
+ return NEW_POPUP; |
+ default: |
+ NOTREACHED() << "Unexpected WebNavigationPolicy"; |
+ return IGNORE_ACTION; |
+ } |
+} |
+ |
/////////////////////////////////////////////////////////////////////////////// |
struct RenderViewImpl::PendingFileChooser { |