Index: content/renderer/render_frame_proxy.cc |
diff --git a/content/renderer/render_frame_proxy.cc b/content/renderer/render_frame_proxy.cc |
index fe58b65b758864d090f39cd88d2da9fc6ec89e2e..efae9632dd70c718c1a2d370be5fad761b2f76dd 100644 |
--- a/content/renderer/render_frame_proxy.cc |
+++ b/content/renderer/render_frame_proxy.cc |
@@ -243,6 +243,8 @@ void RenderFrameProxy::SetReplicatedState(const FrameReplicationState& state) { |
state.has_potentially_trustworthy_unique_origin); |
web_frame_->setReplicatedFeaturePolicyHeader( |
ToWebParsedFeaturePolicy(state.feature_policy_header)); |
+ if (state.has_received_user_gesture) |
+ web_frame_->setHasReceivedUserGesture(); |
web_frame_->resetReplicatedContentSecurityPolicy(); |
for (const auto& header : state.accumulated_csp_headers) |
@@ -302,6 +304,8 @@ bool RenderFrameProxy::OnMessageReceived(const IPC::Message& msg) { |
IPC_MESSAGE_HANDLER(InputMsg_SetFocus, OnSetPageFocus) |
IPC_MESSAGE_HANDLER(FrameMsg_SetFocusedFrame, OnSetFocusedFrame) |
IPC_MESSAGE_HANDLER(FrameMsg_WillEnterFullscreen, OnWillEnterFullscreen) |
+ IPC_MESSAGE_HANDLER(FrameMsg_SetHasReceivedUserGesture, |
+ OnSetHasReceivedUserGesture) |
IPC_MESSAGE_UNHANDLED(handled = false) |
IPC_END_MESSAGE_MAP() |
@@ -409,6 +413,10 @@ void RenderFrameProxy::OnWillEnterFullscreen() { |
web_frame_->willEnterFullscreen(); |
} |
+void RenderFrameProxy::OnSetHasReceivedUserGesture() { |
+ web_frame_->setHasReceivedUserGesture(); |
+} |
+ |
void RenderFrameProxy::frameDetached(DetachType type) { |
if (type == DetachType::Remove && web_frame_->parent()) { |
web_frame_->parent()->removeChild(web_frame_); |
@@ -503,10 +511,6 @@ void RenderFrameProxy::visibilityChanged(bool visible) { |
Send(new FrameHostMsg_VisibilityChanged(routing_id_, visible)); |
} |
-void RenderFrameProxy::setHasReceivedUserGesture() { |
- Send(new FrameHostMsg_SetHasReceivedUserGesture(routing_id_)); |
-} |
- |
void RenderFrameProxy::didChangeOpener(blink::WebFrame* opener) { |
// A proxy shouldn't normally be disowning its opener. It is possible to get |
// here when a proxy that is being detached clears its opener, in which case |