| Index: third_party/WebKit/Source/core/frame/Frame.cpp
|
| diff --git a/third_party/WebKit/Source/core/frame/Frame.cpp b/third_party/WebKit/Source/core/frame/Frame.cpp
|
| index b9731fff21bfd2b679f3641b2dc96ffc35b8bb0e..36729ad46393f405d1d0a128f320b3bc3125a1e4 100644
|
| --- a/third_party/WebKit/Source/core/frame/Frame.cpp
|
| +++ b/third_party/WebKit/Source/core/frame/Frame.cpp
|
| @@ -174,8 +174,7 @@ bool Frame::canNavigate(const Frame& targetFrame) {
|
| canNavigateWithoutFramebusting(targetFrame, errorReason);
|
| const bool sandboxed = securityContext()->getSandboxFlags() != SandboxNone;
|
| const bool hasUserGesture =
|
| - isLocalFrame() ? toLocalFrame(this)->document()->hasReceivedUserGesture()
|
| - : false;
|
| + isLocalFrame() ? toLocalFrame(this)->hasReceivedUserGesture() : false;
|
|
|
| // Top navigation in sandbox with or w/o 'allow-top-navigation'.
|
| if (targetFrame != this && sandboxed && targetFrame == tree().top()) {
|
| @@ -400,6 +399,12 @@ void Frame::didChangeVisibilityState() {
|
| childFrames[i]->didChangeVisibilityState();
|
| }
|
|
|
| +void Frame::setDocumentHasReceivedUserGesture() {
|
| + m_hasReceivedUserGesture = true;
|
| + if (Frame* parent = tree().parent())
|
| + parent->setDocumentHasReceivedUserGesture();
|
| +}
|
| +
|
| Frame::Frame(FrameClient* client, FrameHost* host, FrameOwner* owner)
|
| : m_treeNode(this),
|
| m_host(host),
|
|
|