Index: third_party/WebKit/Source/core/input/EventHandler.cpp |
diff --git a/third_party/WebKit/Source/core/input/EventHandler.cpp b/third_party/WebKit/Source/core/input/EventHandler.cpp |
index 85aa0c06f3c9cba37e12e2f60dd74189df73e244..6dfd2d0fe9a503f97360087ffc4ebec7720159f4 100644 |
--- a/third_party/WebKit/Source/core/input/EventHandler.cpp |
+++ b/third_party/WebKit/Source/core/input/EventHandler.cpp |
@@ -1811,7 +1811,8 @@ static bool ShouldShowContextMenuAtSelection(const FrameSelection& selection) { |
} |
WebInputEventResult EventHandler::ShowNonLocatedContextMenu( |
- Element* override_target_element) { |
+ Element* override_target_element, |
+ WebMenuSourceType source_type) { |
FrameView* view = frame_->View(); |
if (!view) |
return WebInputEventResult::kNotHandled; |
@@ -1892,7 +1893,10 @@ WebInputEventResult EventHandler::ShowNonLocatedContextMenu( |
WebFloatPoint(location_in_root_frame.X(), location_in_root_frame.Y()), |
WebFloatPoint(global_position.X(), global_position.Y()), |
WebPointerProperties::Button::kNoButton, /* clickCount */ 0, |
- WebInputEvent::kNoModifiers, TimeTicks::Now().InSeconds()); |
+ ((source_type == kMenuSourceTouchHandle) |
+ ? WebInputEvent::kIsCompatibilityEventForTouch |
+ : WebInputEvent::kNoModifiers), |
+ TimeTicks::Now().InSeconds()); |
// TODO(dtapuska): Transition the mouseEvent to be created really in viewport |
// coordinates instead of root frame coordinates. |