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

Unified Diff: content/browser/frame_host/render_frame_host_manager.h

Issue 367653002: Add a FrameHostMsg_BeginNavigation IPC (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Added unit test + fixed bug in parent_is_render_frame_computation Created 6 years, 5 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
Index: content/browser/frame_host/render_frame_host_manager.h
diff --git a/content/browser/frame_host/render_frame_host_manager.h b/content/browser/frame_host/render_frame_host_manager.h
index b7039f5cbe7b8a6959f6c2d93bb69a65f7f27c21..f7440592f3f086b5ef906a327d1d150ba368c917 100644
--- a/content/browser/frame_host/render_frame_host_manager.h
+++ b/content/browser/frame_host/render_frame_host_manager.h
@@ -17,6 +17,7 @@
#include "content/public/browser/notification_registrar.h"
#include "content/public/common/referrer.h"
+struct FrameHostMsg_BeginNavigation_Params;
namespace content {
class BrowserContext;
@@ -27,6 +28,7 @@ class FrameTreeNode;
class NavigationControllerImpl;
class NavigationEntry;
class NavigationEntryImpl;
+class NavigationRequest;
class RenderFrameHost;
class RenderFrameHostDelegate;
class RenderFrameHostImpl;
@@ -175,6 +177,11 @@ class CONTENT_EXPORT RenderFrameHostManager : public NotificationObserver {
pending_and_current_web_ui_.get();
}
+ // Returns the current navigation request (used in the PlzNavigate navigation
nasko 2014/07/07 11:35:09 Now that you mention it like this, it might not be
+ // logic refactoring project).
+ NavigationRequest* navigation_request() const {
nasko 2014/07/07 11:35:09 This is only used for tests, so it should be named
clamy 2014/07/07 13:36:23 Done.
+ return navigation_request_.get(); }
+
// Sets the pending Web UI for the pending navigation, ensuring that the
// bindings are appropriate for the given NavigationEntry.
void SetPendingWebUI(const NavigationEntryImpl& entry);
@@ -300,6 +307,9 @@ class CONTENT_EXPORT RenderFrameHostManager : public NotificationObserver {
// of WebContentsImpl.
void ResetProxyHosts();
+ // Used to start a navigation, part of PlzNavigate project.
+ void BeginNavigation(const FrameHostMsg_BeginNavigation_Params& params);
+
private:
friend class RenderFrameHostManagerTest;
friend class TestWebContents;
@@ -494,6 +504,9 @@ class CONTENT_EXPORT RenderFrameHostManager : public NotificationObserver {
NotificationRegistrar registrar_;
+ // Owns a navigation request that originated in that frame until it commits.
+ scoped_ptr<NavigationRequest> navigation_request_;
+
base::WeakPtrFactory<RenderFrameHostManager> weak_factory_;
DISALLOW_COPY_AND_ASSIGN(RenderFrameHostManager);

Powered by Google App Engine
This is Rietveld 408576698