Files
brave-core/patches/third_party-blink-renderer-core-dom-events-event_dispatcher.cc.patch
T

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.