| Index: third_party/WebKit/Source/core/dom/DocumentUserGestureToken.h
|
| diff --git a/third_party/WebKit/Source/core/dom/DocumentUserGestureToken.h b/third_party/WebKit/Source/core/dom/DocumentUserGestureToken.h
|
| index a5e7ef5530edfc61c76becda8f691f7265065246..d4cd560b21112be05f6d9490d75fc9094af9825b 100644
|
| --- a/third_party/WebKit/Source/core/dom/DocumentUserGestureToken.h
|
| +++ b/third_party/WebKit/Source/core/dom/DocumentUserGestureToken.h
|
| @@ -20,14 +20,22 @@ class DocumentUserGestureToken final : public UserGestureToken {
|
| static PassRefPtr<UserGestureToken> create(
|
| Document* document,
|
| Status status = PossiblyExistingGesture) {
|
| - return adoptRef(new DocumentUserGestureToken(document, status));
|
| + setHasReceivedUserGesture(document);
|
| + return adoptRef(new DocumentUserGestureToken(status));
|
| }
|
|
|
| - ~DocumentUserGestureToken() final {}
|
| + static PassRefPtr<UserGestureToken> adopt(Document* document,
|
| + UserGestureToken* token) {
|
| + if (!token || !token->hasGestures())
|
| + return nullptr;
|
| + setHasReceivedUserGesture(document);
|
| + return token;
|
| + }
|
|
|
| private:
|
| - DocumentUserGestureToken(Document* document, Status status)
|
| - : UserGestureToken(status) {
|
| + DocumentUserGestureToken(Status status) : UserGestureToken(status) {}
|
| +
|
| + static void setHasReceivedUserGesture(Document* document) {
|
| if (!document || document->hasReceivedUserGesture())
|
| return;
|
| document->setHasReceivedUserGesture();
|
|
|