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

Unified Diff: content/renderer/render_frame_impl.cc

Issue 18178006: Implement WebFrameClient in RenderFrame and proxy all calls to RenderView (for now). (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rebase to resolve conflict. Created 7 years, 6 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « content/renderer/render_frame_impl.h ('k') | content/renderer/render_view_impl.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: content/renderer/render_frame_impl.cc
diff --git a/content/renderer/render_frame_impl.cc b/content/renderer/render_frame_impl.cc
index cc692102960c595724f7db24e3650fa34440f19f..92c7ecab72402472e339a0815fcec2296fc29044 100644
--- a/content/renderer/render_frame_impl.cc
+++ b/content/renderer/render_frame_impl.cc
@@ -9,6 +9,31 @@
namespace content {
+static RenderFrameImpl* (*g_create_render_frame_impl)(RenderViewImpl*, int32) =
+ NULL;
+
+// static
+RenderFrameImpl* RenderFrameImpl::Create(
+ RenderViewImpl* render_view,
+ int32 routing_id) {
+ DCHECK(routing_id != MSG_ROUTING_NONE);
+
+ RenderFrameImpl* render_frame = NULL;
+ if (g_create_render_frame_impl)
+ render_frame = g_create_render_frame_impl(render_view, routing_id);
+ else
+ render_frame = new RenderFrameImpl(render_view, routing_id);
+
+ return render_frame;
+}
+
+// static
+void RenderFrameImpl::InstallCreateHook(
+ RenderFrameImpl* (*create_render_frame_impl)(RenderViewImpl*, int32)) {
+ CHECK(!g_create_render_frame_impl);
+ g_create_render_frame_impl = create_render_frame_impl;
+}
+
RenderFrameImpl::RenderFrameImpl(RenderViewImpl* render_view, int routing_id)
: render_view_(render_view),
routing_id_(routing_id) {
@@ -104,17 +129,6 @@ void RenderFrameImpl::loadURLExternally(
WebKit::WebNavigationPolicy RenderFrameImpl::decidePolicyForNavigation(
WebKit::WebFrame* frame,
- WebKit::WebDataSource::ExtraData* extraData,
- const WebKit::WebURLRequest& request,
- WebKit::WebNavigationType type,
- WebKit::WebNavigationPolicy default_policy,
- bool is_redirect) {
- return render_view_->decidePolicyForNavigation(
- frame, extraData, request, type, default_policy, is_redirect);
-}
-
-WebKit::WebNavigationPolicy RenderFrameImpl::decidePolicyForNavigation(
- WebKit::WebFrame* frame,
const WebKit::WebURLRequest& request,
WebKit::WebNavigationType type,
WebKit::WebNavigationPolicy default_policy,
« no previous file with comments | « content/renderer/render_frame_impl.h ('k') | content/renderer/render_view_impl.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698