| 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;
|
| }
|
|
|
|
|