https://bugs.webkit.org/show_bug.cgi?id=222853
rdar://73509018
Reviewed by Sam Weinig.
Source/WebCore:
Commit r266333 or thereabouts broke trackpad scrolling in the inspector timeline.
This scrolling works via a wheel event handler on a non-scrollable element that
dispatches a copy of the wheel event to a proxy overflow:scroll in script. This
broke the default wheel event handling path.
Fix by having EventHandler::defaultWheelEventHandler() only respect latching and
m_currentWheelEventAllowsScrolling (which is set based on WheelEventProcessingSteps
from the scrolling thread) for user events, i.e. those with an underlying native event.
Also make Event loggable, and add some braces.
Test: fast/events/wheel/redispatched-wheel-event.html
* dom/Event.cpp:
(WebCore::Event::debugDescription const):
(WebCore::operator<<):
* dom/Event.h:
* dom/EventDispatcher.cpp:
(WebCore::EventDispatcher::dispatchEvent):
* dom/Node.cpp:
(WebCore::Node::defaultEventHandler): This clause needs braces.
* page/EventHandler.cpp:
(WebCore::EventHandler::defaultWheelEventHandler):
LayoutTests:
* fast/events/wheel/redispatched-wheel-event-expected.txt: Added.
* fast/events/wheel/redispatched-wheel-event.html: Added.
Canonical link: https://commits.webkit.org/235025@main
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@274091 268f45cc-cd09-0410-ab3c-d52691b4dbfc