| Index: extensions/renderer/request_sender.cc
|
| ===================================================================
|
| --- extensions/renderer/request_sender.cc (revision 265681)
|
| +++ extensions/renderer/request_sender.cc (working copy)
|
| @@ -11,18 +11,23 @@
|
| #include "extensions/renderer/script_context.h"
|
| #include "third_party/WebKit/public/web/WebDocument.h"
|
| #include "third_party/WebKit/public/web/WebFrame.h"
|
| +#include "third_party/WebKit/public/web/WebScopedUserGesture.h"
|
| #include "third_party/WebKit/public/web/WebUserGestureIndicator.h"
|
| +#include "third_party/WebKit/public/web/WebUserGestureToken.h"
|
|
|
| namespace extensions {
|
|
|
| // Contains info relevant to a pending API request.
|
| struct PendingRequest {
|
| public:
|
| - PendingRequest(const std::string& name, RequestSender::Source* source)
|
| - : name(name), source(source) {}
|
| + PendingRequest(const std::string& name,
|
| + RequestSender::Source* source,
|
| + blink::WebUserGestureToken token)
|
| + : name(name), source(source), token(token) {}
|
|
|
| std::string name;
|
| RequestSender::Source* source;
|
| + blink::WebUserGestureToken token;
|
| };
|
|
|
| RequestSender::ScopedTabID::ScopedTabID(RequestSender* request_sender,
|
| @@ -95,7 +100,8 @@
|
| if (blink::WebFrame* webframe = context->web_frame())
|
| source_url = webframe->document().url();
|
|
|
| - InsertRequest(request_id, new PendingRequest(name, source));
|
| + InsertRequest(request_id, new PendingRequest(name, source,
|
| + blink::WebUserGestureIndicator::currentUserGestureToken()));
|
|
|
| ExtensionHostMsg_Request_Params params;
|
| params.name = name;
|
| @@ -127,6 +133,7 @@
|
| return;
|
| }
|
|
|
| + blink::WebScopedUserGesture gesture(request->token);
|
| request->source->OnResponseReceived(
|
| request->name, request_id, success, response, error);
|
| }
|
|
|