summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--webkit/plugins/ppapi/ppapi_plugin_instance.cc11
1 files changed, 9 insertions, 2 deletions
diff --git a/webkit/plugins/ppapi/ppapi_plugin_instance.cc b/webkit/plugins/ppapi/ppapi_plugin_instance.cc
index f012793..f3616af 100644
--- a/webkit/plugins/ppapi/ppapi_plugin_instance.cc
+++ b/webkit/plugins/ppapi/ppapi_plugin_instance.cc
@@ -1844,8 +1844,15 @@ PP_Var PluginInstance::ExecuteScript(PP_Instance instance,
}
NPVariant result;
- bool ok = WebBindings::evaluate(NULL, frame->windowObject(), &np_script,
- &result);
+ bool ok = false;
+ if (IsProcessingUserGesture()) {
+ WebKit::WebScopedUserGesture user_gesture;
+ ok = WebBindings::evaluate(NULL, frame->windowObject(), &np_script,
+ &result);
+ } else {
+ ok = WebBindings::evaluate(NULL, frame->windowObject(), &np_script,
+ &result);
+ }
if (!ok) {
// TryCatch doesn't catch the exceptions properly. Since this is only for
// a trusted API, just set to a general exception message.