| Index: content/renderer/browser_plugin/browser_plugin.cc
 | 
| diff --git a/content/renderer/browser_plugin/browser_plugin.cc b/content/renderer/browser_plugin/browser_plugin.cc
 | 
| index 48491e6c5861af1089e573f46c264eef382ee4e9..044459f0b7659b1b051bca1d1d63e46745bae9af 100644
 | 
| --- a/content/renderer/browser_plugin/browser_plugin.cc
 | 
| +++ b/content/renderer/browser_plugin/browser_plugin.cc
 | 
| @@ -501,6 +501,18 @@ bool BrowserPlugin::handleInputEvent(const blink::WebInputEvent& event,
 | 
|    if (guest_crashed_ || !attached())
 | 
|      return false;
 | 
|  
 | 
| +  if (event.type == blink::WebInputEvent::MouseWheel) {
 | 
| +    auto wheel_event = static_cast<const blink::WebMouseWheelEvent&>(event);
 | 
| +    if (wheel_event.resendingPluginId == browser_plugin_instance_id_)
 | 
| +      return false;
 | 
| +  }
 | 
| +
 | 
| +  if (blink::WebInputEvent::isGestureEventType(event.type)) {
 | 
| +    auto gesture_event = static_cast<const blink::WebGestureEvent&>(event);
 | 
| +    if (gesture_event.resendingPluginId == browser_plugin_instance_id_)
 | 
| +      return false;
 | 
| +  }
 | 
| +
 | 
|    if (event.type == blink::WebInputEvent::ContextMenu)
 | 
|      return true;
 | 
|  
 | 
| @@ -518,6 +530,12 @@ bool BrowserPlugin::handleInputEvent(const blink::WebInputEvent& event,
 | 
|                                                  view_rect_,
 | 
|                                                  &event));
 | 
|    GetWebKitCursorInfo(cursor_, &cursor_info);
 | 
| +
 | 
| +  // Although we forward this event to the guest, we don't report it as consumed
 | 
| +  // since other targets of this event in Blink never get that chance either.
 | 
| +  if (event.type == blink::WebInputEvent::GestureFlingStart)
 | 
| +    return false;
 | 
| +
 | 
|    return true;
 | 
|  }
 | 
|  
 | 
| 
 |