14 lines
982 B
Diff
14 lines
982 B
Diff
diff --git a/third_party/blink/renderer/core/dom/events/event_dispatcher.cc b/third_party/blink/renderer/core/dom/events/event_dispatcher.cc
|
|
index d22ef41c172d6d0415d3f814f0d138832c9f9589..f63e698ecda90224689df78b631bab5e68d95e8d 100644
|
|
--- a/third_party/blink/renderer/core/dom/events/event_dispatcher.cc
|
|
+++ b/third_party/blink/renderer/core/dom/events/event_dispatcher.cc
|
|
@@ -437,7 +437,7 @@ inline void EventDispatcher::DispatchEventPostProcess(
|
|
// Call default event handlers. While the DOM does have a concept of
|
|
// preventing default handling, the detail of which handlers are called is an
|
|
// internal implementation detail and not part of the DOM.
|
|
- if (!event_->defaultPrevented() && !event_->DefaultHandled() &&
|
|
+ if ((!event_->defaultPrevented() || ShouldBypassDefaultPreventedForContextMenu(event_)) && !event_->DefaultHandled() &&
|
|
is_trusted_or_click) {
|
|
// Non-bubbling events call only one default event handler, the one for the
|
|
// target.
|