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

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

Issue 2655663004: Introduce content-side Feature Policy object and maintain in parallel with renderer policy. (Closed)
Patch Set: Simplify FP mirroring logic; move most of it to RFHI Created 3 years, 10 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_impl.h
diff --git a/content/browser/frame_host/render_frame_host_impl.h b/content/browser/frame_host/render_frame_host_impl.h
index e904d8fe4bc609dd2664c1a1d572e1cd9f439a23..9b6fbc1e208013b2982963bfdfacf09eba0f3748 100644
--- a/content/browser/frame_host/render_frame_host_impl.h
+++ b/content/browser/frame_host/render_frame_host_impl.h
@@ -80,6 +80,7 @@ namespace content {
class AppWebMessagePortMessageFilter;
class AssociatedInterfaceProviderImpl;
class CrossProcessFrameConnector;
+class FeaturePolicy;
class FrameTree;
class FrameTreeNode;
class MediaInterfaceProxy;
@@ -589,6 +590,13 @@ class CONTENT_EXPORT RenderFrameHostImpl
// in a non-loading state.
void ResetLoadingState();
+ // Returns the feature policy which should be enforced on this RenderFrame.
+ const FeaturePolicy* GetFeaturePolicy();
alexmos 2017/02/09 05:59:50 nit: no const (see a note in https://www.chromium.
iclelland 2017/02/09 17:16:18 Done. (I thought this only applied to headers in c
+
+ // Clears any existing policy and constructs a new policy for this frame,
+ // based on its parent frame.
+ void ResetFeaturePolicy();
+
// Tells the renderer that this RenderFrame will soon be swapped out, and thus
// not to create any new modal dialogs until it happens. This must be done
// separately so that the ScopedPageLoadDeferrers of any current dialogs are
@@ -1143,6 +1151,9 @@ class CONTENT_EXPORT RenderFrameHostImpl
// See BindingsPolicy for details.
int enabled_bindings_ = 0;
+ // Tracks the feature policy which has been set on this frame.
+ std::unique_ptr<FeaturePolicy> feature_policy_;
alexmos 2017/02/09 05:59:50 Currently, seems like this will be null from the t
iclelland 2017/02/09 17:16:17 Acknowledged. I'll see about doing an explicit pre
+
// NOTE: This must be the last member.
base::WeakPtrFactory<RenderFrameHostImpl> weak_ptr_factory_;

Powered by Google App Engine
This is Rietveld 408576698