Bug 131960

Summary: [Mac] After a horizontal overflow scroll with a mechanical wheel mouse, vertical scrolling no longer works
Product: WebKit Reporter: Brent Fulgham <bfulgham>
Component: Layout and RenderingAssignee: Brent Fulgham <bfulgham>
Status: RESOLVED FIXED    
Severity: Normal CC: bfulgham, buildbot, mario, ossy, pmolnar.u-szeged, rniwa, simon.fraser
Priority: P2 Keywords: InRadar
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
Patch
darin: review+, buildbot: commit-queue-
Archive of layout-test-results from webkit-ews-09 for mac-mountainlion-wk2
none
Archive of layout-test-results from webkit-ews-04 for mac-mountainlion none

Description Brent Fulgham 2014-04-21 17:19:23 PDT
Steps:
1. load http://www.modelenginemaker.com/index.php?topic=3240.msg56903;topicseen#new in a window that's narrow enough to not show the full width of the images in the first post.
2. Vertical scroll a bit with the scroll wheel (works OK)
3. When over one of the big photos, hold down the shift key, and use the scroll wheel to scroll horizontally (works OK)
4. Now release the shift key, and try using the scroll wheel to scroll vertically. You can't scroll.
Comment 1 Brent Fulgham 2014-04-21 17:27:47 PDT
I tracked this down to the changes I made in <http://trac.webkit.org/changeset/163975/trunk/Source/WebCore/page/EventHandler.cpp>

In short:

1. Previously, if latching was not being used, we would always clear m_latchedWheelEventElement and  m_previousWheelScrolledElement.
2. After my change, these values were only cleared if we were explicitly resetting latching.

This is correct for track pads and other scrolling devices that provide momentum and multiple scroll gesture phases.

However, the mechanical wheel mouse always produces scroll events of type "PlatformWheelEventPhaseNone". My new logic effectively ignored this case, and did not reset the latched and last scrolled nodes. This didn't seem to be a problem, because without wheel gesture phase information, we never set the m_latchedWheelEventElement, and the latching logic never kicks in.

What I missed previously, is that when latching is NOT happening, EventHandler::defaultWheelEventHandler always remembers the "stopElement" it encountered when scrolling. In future calls to this method, it stops looking for possible scroll candidates as soon as it hits this element.

In the old code, since m_previousWheelScrolledElement was always reset, we could 'bubble up' out of the inner div to find the enclosing frame for scrolling. With my change, we would stop looking on the current div, because that was the last item scrolled.

The fix is to revise my new logic to handle the case of "not latching" so that it can clear m_previousWheelScrolledElement as it had previously.
Comment 2 Brent Fulgham 2014-04-21 18:33:21 PDT
Created attachment 229846 [details]
Patch
Comment 3 Build Bot 2014-04-21 19:32:57 PDT
Comment on attachment 229846 [details]
Patch

Attachment 229846 [details] did not pass mac-wk2-ews (mac-wk2):
Output: http://webkit-queues.appspot.com/results/4678084787699712

New failing tests:
platform/mac/fast/scrolling/scroll-div-no-latching.html
Comment 4 Build Bot 2014-04-21 19:33:00 PDT
Created attachment 229851 [details]
Archive of layout-test-results from webkit-ews-09 for mac-mountainlion-wk2

The attached test failures were seen while running run-webkit-tests on the mac-wk2-ews.
Bot: webkit-ews-09  Port: mac-mountainlion-wk2  Platform: Mac OS X 10.8.5
Comment 5 Build Bot 2014-04-21 20:55:36 PDT
Comment on attachment 229846 [details]
Patch

Attachment 229846 [details] did not pass mac-ews (mac):
Output: http://webkit-queues.appspot.com/results/6519947740053504

New failing tests:
platform/mac/fast/scrolling/scroll-iframe-latched-mainframe.html
platform/mac/fast/scrolling/scroll-select-latched-mainframe.html
platform/mac/fast/scrolling/scroll-div-latched-mainframe.html
Comment 6 Build Bot 2014-04-21 20:55:38 PDT
Created attachment 229859 [details]
Archive of layout-test-results from webkit-ews-04 for mac-mountainlion

The attached test failures were seen while running run-webkit-tests on the mac-ews.
Bot: webkit-ews-04  Port: mac-mountainlion  Platform: Mac OS X 10.8.5
Comment 7 Brent Fulgham 2014-04-21 20:57:12 PDT
<rdar://problem/16142100>
Comment 8 Brent Fulgham 2014-04-21 20:57:32 PDT
Correcting tests for WK1 and WK2 support while landing.
Comment 9 Brent Fulgham 2014-04-21 20:59:36 PDT
Committed r167648: <http://trac.webkit.org/changeset/167648>
Comment 10 Brent Fulgham 2014-04-21 22:40:30 PDT
This change broke three of my scrolling tests. A follow-up patch is forthcoming,
Comment 11 Brent Fulgham 2014-04-21 22:47:17 PDT
Committed follow-up fix in r167650.  <http://trac.webkit.org/changeset/167650>
Comment 12 Csaba Osztrogonác 2014-04-22 00:00:17 PDT
(In reply to comment #11)
> Committed follow-up fix in r167650.  <http://trac.webkit.org/changeset/167650>

It broke the non Cocoa builds. Could you possibly fix it?

Apple Windows build log:
-------------------------
         EventHandler.cpp
     1>..\page\EventHandler.cpp(2579): error C2039: 'phase' : is not a member of 'WebCore::PlatformWheelEvent'
                 C:\cygwin\home\buildbot\slave\win-release\build\Source\WebCore\platform\PlatformWheelEvent.h(68) : see declaration of 'WebCore::PlatformWheelEvent'
     1>..\page\EventHandler.cpp(2579): error C2065: 'PlatformWheelEventPhaseNone' : undeclared identifier
     1>..\page\EventHandler.cpp(2579): error C2039: 'momentumPhase' : is not a member of 'WebCore::PlatformWheelEvent'
                 C:\cygwin\home\buildbot\slave\win-release\build\Source\WebCore\platform\PlatformWheelEvent.h(68) : see declaration of 'WebCore::PlatformWheelEvent'
     1>Done Building Project "C:\cygwin\home\buildbot\slave\win-release\build\Source\WebCore\WebCore.vcxproj\WebCore.vcxproj" (Build target(s)) -- FAILED.

EFL build log:
---------------
[ 14%] Building CXX object Source/WebCore/CMakeFiles/WebCore.dir/page/EventHandler.cpp.o
/mnt/buildbot/efl-linux-slave-3/efl-linux-32-release/build/Source/WebCore/page/EventHandler.cpp: In member function 'bool WebCore::EventHandler::handleWheelEvent(const WebCore::PlatformWheelEvent&)':
/mnt/buildbot/efl-linux-slave-3/efl-linux-32-release/build/Source/WebCore/page/EventHandler.cpp:2579:11: error: 'const class WebCore::PlatformWheelEvent' has no member named 'phase'
     if (e.phase() == PlatformWheelEventPhaseNone && e.momentumPhase() == PlatformWheelEventPhaseNone) {
           ^
/mnt/buildbot/efl-linux-slave-3/efl-linux-32-release/build/Source/WebCore/page/EventHandler.cpp:2579:22: error: 'PlatformWheelEventPhaseNone' was not declared in this scope
     if (e.phase() == PlatformWheelEventPhaseNone && e.momentumPhase() == PlatformWheelEventPhaseNone) {
                      ^
/mnt/buildbot/efl-linux-slave-3/efl-linux-32-release/build/Source/WebCore/page/EventHandler.cpp:2579:55: error: 'const class WebCore::PlatformWheelEvent' has no member named 'momentumPhase'
     if (e.phase() == PlatformWheelEventPhaseNone && e.momentumPhase() == PlatformWheelEventPhaseNone) {
                                                       ^

GTK build log:
---------------
[6/89] Building CXX object Source/WebCore/CMakeFiles/WebCore.dir/page/EventHandler.cpp.o[K
FAILED: /usr/lib/ccache/c++   -DBUILDING_GTK__=1 -DBUILDING_WEBKIT -DBUILDING_WITH_CMAKE=1 -DBUILDING_WebCore -DDATA_DIR=\"share\" -DENABLE_3D_RENDERING=1 -DGETTEXT_PACKAGE=\"WebKitGTK-3.0\" -DHAVE_CONFIG_H=1 -DMOZ_X11 -DUSER_AGENT_GTK_MAJOR_VERSION=537 -DUSER_AGENT_GTK_MINOR_VERSION=30 -DWEBKITGTK_API_VERSION_STRING=\"3.0\" -DWTF_PLATFORM_X11=1 -DWTF_USE_3D_GRAPHICS=1 -DWTF_USE_ACCELERATED_COMPOSITING=1 -DWTF_USE_EGL=1 -DWTF_USE_GLX=1 -DWTF_USE_GSTREAMER -DWTF_USE_LEVELDB=1 -DWTF_USE_OPENGL=1 -DWTF_USE_TEXTURE_MAPPER=1 -DWTF_USE_TEXTURE_MAPPER_GL=1 -DWTF_USE_WEBAUDIO_GSTREAMER -DXP_UNIX -march=pentium4 -msse2 -mfpmath=sse   -std=c++11 -fno-exceptions -fno-strict-aliasing -fno-rtti -fno-omit-frame-pointer -fno-tree-dce -O3 -DNDEBUG -I../../Source/WebCore -I../../Source/WebCore/Modules/battery -I../../Source/WebCore/Modules/encryptedmedia -I../../Source/WebCore/Modules/gamepad -I../../Source/WebCore/Modules/geolocation -I../../Source/WebCore/Modules/indexeddb -I../../Source/WebCore/Modules/indexeddb/leveldb -I../../Source/WebCore/Modules/indieui -I../../Source/WebCore/Modules/mediacontrols -I../../Source/WebCore/Modules/mediasource -I../../Source/WebCore/Modules/mediastream -I../../Source/WebCore/Modules/navigatorcontentutils -I../../Source/WebCore/Modules/notifications -I../../Source/WebCore/Modules/plugins -I../../Source/WebCore/Modules/proximity -I../../Source/WebCore/Modules/quota -I../../Source/WebCore/Modules/vibration -I../../Source/WebCore/Modules/webaudio -I../../Source/WebCore/Modules/webdatabase -I../../Source/WebCore/Modules/websockets -I../../Source/WebCore/accessibility -I../../Source/WebCore/bindings -I../../Source/WebCore/bindings/generic -I../../Source/WebCore/bindings/js -I../../Source/WebCore/bridge -I../../Source/WebCore/bridge/c -I../../Source/WebCore/bridge/jsc -I../../Source/WebCore/crypto -I../../Source/WebCore/crypto/keys -I../../Source/WebCore/css -I../../Source/WebCore/cssjit -I../../Source/WebCore/dom -I../../Source/WebCore/dom/default -I../../Source/WebCore/editing -I../../Source/WebCore/fileapi -I../../Source/WebCore/history -I../../Source/WebCore/html -I../../Source/WebCore/html/canvas -I../../Source/WebCore/html/forms -I../../Source/WebCore/html/parser -I../../Source/WebCore/html/shadow -I../../Source/WebCore/html/track -I../../Source/WebCore/inspector -I../../Source/WebCore/loader -I../../Source/WebCore/loader/appcache -I../../Source/WebCore/loader/archive -I../../Source/WebCore/loader/archive/mhtml -I../../Source/WebCore/loader/cache -I../../Source/WebCore/loader/icon -I../../Source/WebCore/mathml -I../../Source/WebCore/page -I../../Source/WebCore/page/animation -I../../Source/WebCore/page/scrolling -I../../Source/WebCore/platform -I../../Source/WebCore/platform/animation -I../../Source/WebCore/platform/audio -I../../Source/WebCore/platform/graphics -I../../Source/WebCore/platform/graphics/cpu/arm -I../../Source/WebCore/platform/graphics/cpu/arm/filters -I../../Source/WebCore/platform/graphics/filters -I../../Source/WebCore/platform/graphics/filters/texmap -I../../Source/WebCore/platform/graphics/harfbuzz -I../../Source/WebCore/platform/graphics/harfbuzz/ng -I../../Source/WebCore/platform/graphics/opentype -I../../Source/WebCore/platform/graphics/texmap -I../../Source/WebCore/platform/graphics/transforms -I../../Source/WebCore/platform/image-decoders -I../../Source/WebCore/platform/image-decoders/bmp -I../../Source/WebCore/platform/image-decoders/gif -I../../Source/WebCore/platform/image-decoders/ico -I../../Source/WebCore/platform/image-decoders/jpeg -I../../Source/WebCore/platform/image-decoders/png -I../../Source/WebCore/platform/image-decoders/webp -I../../Source/WebCore/platform/leveldb -I../../Source/WebCore/platform/mediastream -I../../Source/WebCore/platform/mock -I../../Source/WebCore/platform/network -I../../Source/WebCore/platform/sql -I../../Source/WebCore/platform/text -I../../Source/WebCore/platform/text/icu -I../../Source/WebCore/plugins -I../../Source/WebCore/rendering -I../../Source/WebCore/rendering/line -I../../Source/WebCore/rendering/mathml -I../../Source/WebCore/rendering/shapes -I../../Source/WebCore/rendering/style -I../../Source/WebCore/rendering/svg -I../../Source/WebCore/replay -I../../Source/WebCore/storage -I../../Source/WebCore/style -I../../Source/WebCore/svg -I../../Source/WebCore/svg/animation -I../../Source/WebCore/svg/graphics -I../../Source/WebCore/svg/graphics/filters -I../../Source/WebCore/svg/properties -I../../Source/WebCore/websockets -I../../Source/WebCore/workers -I../../Source/WebCore/xml -I../../Source/WebCore/xml/parser -I../../Source/JavaScriptCore -I../../Source/JavaScriptCore/ForwardingHeaders -I../../Source/JavaScriptCore/API -I../../Source/JavaScriptCore/assembler -I../../Source/JavaScriptCore/bytecode -I../../Source/JavaScriptCore/bytecompiler -I../../Source/JavaScriptCore/dfg -I../../Source/JavaScriptCore/disassembler -I../../Source/JavaScriptCore/heap -I../../Source/JavaScriptCore/debugger -I../../Source/JavaScriptCore/interpreter -I../../Source/JavaScriptCore/jit -I../../Source/JavaScriptCore/llint -I../../Source/JavaScriptCore/parser -I../../Source/JavaScriptCore/profiler -I../../Source/JavaScriptCore/runtime -I../../Source/JavaScriptCore/yarr -I../../Source/WTF -IDerivedSources/ForwardingHeaders -IDerivedSources/JavaScriptCore -IDerivedSources/WebCore -I../../Source -I. -I../../Source/ThirdParty/leveldb/include -I../../Source/ThirdParty/leveldb -I../../Source/ThirdParty/ANGLE/src -I../../Source/ThirdParty/ANGLE/include -I../../Source/ThirdParty/ANGLE/include/KHR -I../../Source/ThirdParty/ANGLE/include/GLSLANG -I../../Source/WebCore/platform/graphics/gpu -I../../Source/WebCore/accessibility/atk -I../../Source/WebCore/editing/atk -I../../Source/WebCore/page/gtk -I../../Source/WebCore/platform/cairo -I../../Source/WebCore/platform/geoclue -I../../Source/WebCore/platform/gtk -I../../Source/WebCore/platform/graphics/cairo -I../../Source/WebCore/platform/graphics/egl -I../../Source/WebCore/platform/graphics/glx -I../../Source/WebCore/platform/graphics/gtk -I../../Source/WebCore/platform/graphics/freetype -I../../Source/WebCore/platform/graphics/opengl -I../../Source/WebCore/platform/linux -I../../Source/WebCore/platform/mediastream/gstreamer -I../../Source/WebCore/platform/mock/mediasource -I../../Source/WebCore/platform/network/gtk -I../../Source/WebCore/platform/network/soup -I../../Source/WebCore/platform/text/gtk -I../Dependencies/Root/include/atk-1.0 -I../Dependencies/Root/include/cairo -I/usr/include/enchant -I../Dependencies/Root/include/freetype2/freetype -I../Dependencies/Root/include/freetype2 -I../Dependencies/Root/include/libxml2 -I../Dependencies/Root/include/glib-2.0 -I../Dependencies/Root/lib/glib-2.0/include -I/usr/include/dbus-1.0 -I/usr/lib/i386-linux-gnu/dbus-1.0/include -I../Dependencies/Root/include/gio-unix-2.0 -I/usr/include/gudev-1.0 -I../Dependencies/Root/include/harfbuzz -I/usr/include/libsecret-1 -I../Dependencies/Root/include/libsoup-2.4 -I../../Source/WebCore/platform/graphics/gstreamer -I../Dependencies/Root/include/gstreamer-1.0 -I../../Source/WebCore/platform/audio/gstreamer -IDerivedSources -IDerivedSources/webkitdom -I../../Source/WebCore/testing    -Wall -Wextra -Wcast-align -Wformat-security -Wmissing-format-attribute -Wpointer-arith -Wundef -Wwrite-strings -fPIC -MMD -MT Source/WebCore/CMakeFiles/WebCore.dir/page/EventHandler.cpp.o -MF "Source/WebCore/CMakeFiles/WebCore.dir/page/EventHandler.cpp.o.d" -o Source/WebCore/CMakeFiles/WebCore.dir/page/EventHandler.cpp.o -c ../../Source/WebCore/page/EventHandler.cpp
../../Source/WebCore/page/EventHandler.cpp: In member function ‘bool WebCore::EventHandler::handleWheelEvent(const WebCore::PlatformWheelEvent&)’:
../../Source/WebCore/page/EventHandler.cpp:2579:11: error: ‘const class WebCore::PlatformWheelEvent’ has no member named ‘phase’
     if (e.phase() == PlatformWheelEventPhaseNone && e.momentumPhase() == PlatformWheelEventPhaseNone) {
           ^
../../Source/WebCore/page/EventHandler.cpp:2579:22: error: ‘PlatformWheelEventPhaseNone’ was not declared in this scope
     if (e.phase() == PlatformWheelEventPhaseNone && e.momentumPhase() == PlatformWheelEventPhaseNone) {
                      ^
../../Source/WebCore/page/EventHandler.cpp:2579:55: error: ‘const class WebCore::PlatformWheelEvent’ has no member named ‘momentumPhase’
     if (e.phase() == PlatformWheelEventPhaseNone && e.momentumPhase() == PlatformWheelEventPhaseNone) {
                                                       ^
ninja: build stopped: subcommand failed.
Comment 13 Peter Molnar 2014-04-22 02:44:09 PDT
Created a quick fix for this build breakage: https://bugs.webkit.org/show_bug.cgi?id=131980


(In reply to comment #12)
> (In reply to comment #11)
> > Committed follow-up fix in r167650.  <http://trac.webkit.org/changeset/167650>
> 
> It broke the non Cocoa builds. Could you possibly fix it?
> 
> Apple Windows build log:
> -------------------------
>          EventHandler.cpp
>      1>..\page\EventHandler.cpp(2579): error C2039: 'phase' : is not a member of 'WebCore::PlatformWheelEvent'
>                  C:\cygwin\home\buildbot\slave\win-release\build\Source\WebCore\platform\PlatformWheelEvent.h(68) : see declaration of 'WebCore::PlatformWheelEvent'
>      1>..\page\EventHandler.cpp(2579): error C2065: 'PlatformWheelEventPhaseNone' : undeclared identifier
>      1>..\page\EventHandler.cpp(2579): error C2039: 'momentumPhase' : is not a member of 'WebCore::PlatformWheelEvent'
>                  C:\cygwin\home\buildbot\slave\win-release\build\Source\WebCore\platform\PlatformWheelEvent.h(68) : see declaration of 'WebCore::PlatformWheelEvent'
>      1>Done Building Project "C:\cygwin\home\buildbot\slave\win-release\build\Source\WebCore\WebCore.vcxproj\WebCore.vcxproj" (Build target(s)) -- FAILED.
> 
> EFL build log:
> ---------------
> [ 14%] Building CXX object Source/WebCore/CMakeFiles/WebCore.dir/page/EventHandler.cpp.o
> /mnt/buildbot/efl-linux-slave-3/efl-linux-32-release/build/Source/WebCore/page/EventHandler.cpp: In member function 'bool WebCore::EventHandler::handleWheelEvent(const WebCore::PlatformWheelEvent&)':
> /mnt/buildbot/efl-linux-slave-3/efl-linux-32-release/build/Source/WebCore/page/EventHandler.cpp:2579:11: error: 'const class WebCore::PlatformWheelEvent' has no member named 'phase'
>      if (e.phase() == PlatformWheelEventPhaseNone && e.momentumPhase() == PlatformWheelEventPhaseNone) {
>            ^
> /mnt/buildbot/efl-linux-slave-3/efl-linux-32-release/build/Source/WebCore/page/EventHandler.cpp:2579:22: error: 'PlatformWheelEventPhaseNone' was not declared in this scope
>      if (e.phase() == PlatformWheelEventPhaseNone && e.momentumPhase() == PlatformWheelEventPhaseNone) {
>                       ^
> /mnt/buildbot/efl-linux-slave-3/efl-linux-32-release/build/Source/WebCore/page/EventHandler.cpp:2579:55: error: 'const class WebCore::PlatformWheelEvent' has no member named 'momentumPhase'
>      if (e.phase() == PlatformWheelEventPhaseNone && e.momentumPhase() == PlatformWheelEventPhaseNone) {
>                                                        ^
> 
> GTK build log:
> ---------------
> [6/89] Building CXX object Source/WebCore/CMakeFiles/WebCore.dir/page/EventHandler.cpp.o[K
> FAILED: /usr/lib/ccache/c++   -DBUILDING_GTK__=1 -DBUILDING_WEBKIT -DBUILDING_WITH_CMAKE=1 -DBUILDING_WebCore -DDATA_DIR=\"share\" -DENABLE_3D_RENDERING=1 -DGETTEXT_PACKAGE=\"WebKitGTK-3.0\" -DHAVE_CONFIG_H=1 -DMOZ_X11 -DUSER_AGENT_GTK_MAJOR_VERSION=537 -DUSER_AGENT_GTK_MINOR_VERSION=30 -DWEBKITGTK_API_VERSION_STRING=\"3.0\" -DWTF_PLATFORM_X11=1 -DWTF_USE_3D_GRAPHICS=1 -DWTF_USE_ACCELERATED_COMPOSITING=1 -DWTF_USE_EGL=1 -DWTF_USE_GLX=1 -DWTF_USE_GSTREAMER -DWTF_USE_LEVELDB=1 -DWTF_USE_OPENGL=1 -DWTF_USE_TEXTURE_MAPPER=1 -DWTF_USE_TEXTURE_MAPPER_GL=1 -DWTF_USE_WEBAUDIO_GSTREAMER -DXP_UNIX -march=pentium4 -msse2 -mfpmath=sse   -std=c++11 -fno-exceptions -fno-strict-aliasing -fno-rtti -fno-omit-frame-pointer -fno-tree-dce -O3 -DNDEBUG -I../../Source/WebCore -I../../Source/WebCore/Modules/battery -I../../Source/WebCore/Modules/encryptedmedia -I../../Source/WebCore/Modules/gamepad -I../../Source/WebCore/Modules/geolocation -I../../Source/WebCore/Modules/indexeddb -I../../Source/WebCore/Modules/indexeddb/leveldb -I../../Source/WebCore/Modules/indieui -I../../Source/WebCore/Modules/mediacontrols -I../../Source/WebCore/Modules/mediasource -I../../Source/WebCore/Modules/mediastream -I../../Source/WebCore/Modules/navigatorcontentutils -I../../Source/WebCore/Modules/notifications -I../../Source/WebCore/Modules/plugins -I../../Source/WebCore/Modules/proximity -I../../Source/WebCore/Modules/quota -I../../Source/WebCore/Modules/vibration -I../../Source/WebCore/Modules/webaudio -I../../Source/WebCore/Modules/webdatabase -I../../Source/WebCore/Modules/websockets -I../../Source/WebCore/accessibility -I../../Source/WebCore/bindings -I../../Source/WebCore/bindings/generic -I../../Source/WebCore/bindings/js -I../../Source/WebCore/bridge -I../../Source/WebCore/bridge/c -I../../Source/WebCore/bridge/jsc -I../../Source/WebCore/crypto -I../../Source/WebCore/crypto/keys -I../../Source/WebCore/css -I../../Source/WebCore/cssjit -I../../Source/WebCore/dom -I../../Source/WebCore/dom/default -I../../Source/WebCore/editing -I../../Source/WebCore/fileapi -I../../Source/WebCore/history -I../../Source/WebCore/html -I../../Source/WebCore/html/canvas -I../../Source/WebCore/html/forms -I../../Source/WebCore/html/parser -I../../Source/WebCore/html/shadow -I../../Source/WebCore/html/track -I../../Source/WebCore/inspector -I../../Source/WebCore/loader -I../../Source/WebCore/loader/appcache -I../../Source/WebCore/loader/archive -I../../Source/WebCore/loader/archive/mhtml -I../../Source/WebCore/loader/cache -I../../Source/WebCore/loader/icon -I../../Source/WebCore/mathml -I../../Source/WebCore/page -I../../Source/WebCore/page/animation -I../../Source/WebCore/page/scrolling -I../../Source/WebCore/platform -I../../Source/WebCore/platform/animation -I../../Source/WebCore/platform/audio -I../../Source/WebCore/platform/graphics -I../../Source/WebCore/platform/graphics/cpu/arm -I../../Source/WebCore/platform/graphics/cpu/arm/filters -I../../Source/WebCore/platform/graphics/filters -I../../Source/WebCore/platform/graphics/filters/texmap -I../../Source/WebCore/platform/graphics/harfbuzz -I../../Source/WebCore/platform/graphics/harfbuzz/ng -I../../Source/WebCore/platform/graphics/opentype -I../../Source/WebCore/platform/graphics/texmap -I../../Source/WebCore/platform/graphics/transforms -I../../Source/WebCore/platform/image-decoders -I../../Source/WebCore/platform/image-decoders/bmp -I../../Source/WebCore/platform/image-decoders/gif -I../../Source/WebCore/platform/image-decoders/ico -I../../Source/WebCore/platform/image-decoders/jpeg -I../../Source/WebCore/platform/image-decoders/png -I../../Source/WebCore/platform/image-decoders/webp -I../../Source/WebCore/platform/leveldb -I../../Source/WebCore/platform/mediastream -I../../Source/WebCore/platform/mock -I../../Source/WebCore/platform/network -I../../Source/WebCore/platform/sql -I../../Source/WebCore/platform/text -I../../Source/WebCore/platform/text/icu -I../../Source/WebCore/plugins -I../../Source/WebCore/rendering -I../../Source/WebCore/rendering/line -I../../Source/WebCore/rendering/mathml -I../../Source/WebCore/rendering/shapes -I../../Source/WebCore/rendering/style -I../../Source/WebCore/rendering/svg -I../../Source/WebCore/replay -I../../Source/WebCore/storage -I../../Source/WebCore/style -I../../Source/WebCore/svg -I../../Source/WebCore/svg/animation -I../../Source/WebCore/svg/graphics -I../../Source/WebCore/svg/graphics/filters -I../../Source/WebCore/svg/properties -I../../Source/WebCore/websockets -I../../Source/WebCore/workers -I../../Source/WebCore/xml -I../../Source/WebCore/xml/parser -I../../Source/JavaScriptCore -I../../Source/JavaScriptCore/ForwardingHeaders -I../../Source/JavaScriptCore/API -I../../Source/JavaScriptCore/assembler -I../../Source/JavaScriptCore/bytecode -I../../Source/JavaScriptCore/bytecompiler -I../../Source/JavaScriptCore/dfg -I../../Source/JavaScriptCore/disassembler -I../../Source/JavaScriptCore/heap -I../../Source/JavaScriptCore/debugger -I../../Source/JavaScriptCore/interpreter -I../../Source/JavaScriptCore/jit -I../../Source/JavaScriptCore/llint -I../../Source/JavaScriptCore/parser -I../../Source/JavaScriptCore/profiler -I../../Source/JavaScriptCore/runtime -I../../Source/JavaScriptCore/yarr -I../../Source/WTF -IDerivedSources/ForwardingHeaders -IDerivedSources/JavaScriptCore -IDerivedSources/WebCore -I../../Source -I. -I../../Source/ThirdParty/leveldb/include -I../../Source/ThirdParty/leveldb -I../../Source/ThirdParty/ANGLE/src -I../../Source/ThirdParty/ANGLE/include -I../../Source/ThirdParty/ANGLE/include/KHR -I../../Source/ThirdParty/ANGLE/include/GLSLANG -I../../Source/WebCore/platform/graphics/gpu -I../../Source/WebCore/accessibility/atk -I../../Source/WebCore/editing/atk -I../../Source/WebCore/page/gtk -I../../Source/WebCore/platform/cairo -I../../Source/WebCore/platform/geoclue -I../../Source/WebCore/platform/gtk -I../../Source/WebCore/platform/graphics/cairo -I../../Source/WebCore/platform/graphics/egl -I../../Source/WebCore/platform/graphics/glx -I../../Source/WebCore/platform/graphics/gtk -I../../Source/WebCore/platform/graphics/freetype -I../../Source/WebCore/platform/graphics/opengl -I../../Source/WebCore/platform/linux -I../../Source/WebCore/platform/mediastream/gstreamer -I../../Source/WebCore/platform/mock/mediasource -I../../Source/WebCore/platform/network/gtk -I../../Source/WebCore/platform/network/soup -I../../Source/WebCore/platform/text/gtk -I../Dependencies/Root/include/atk-1.0 -I../Dependencies/Root/include/cairo -I/usr/include/enchant -I../Dependencies/Root/include/freetype2/freetype -I../Dependencies/Root/include/freetype2 -I../Dependencies/Root/include/libxml2 -I../Dependencies/Root/include/glib-2.0 -I../Dependencies/Root/lib/glib-2.0/include -I/usr/include/dbus-1.0 -I/usr/lib/i386-linux-gnu/dbus-1.0/include -I../Dependencies/Root/include/gio-unix-2.0 -I/usr/include/gudev-1.0 -I../Dependencies/Root/include/harfbuzz -I/usr/include/libsecret-1 -I../Dependencies/Root/include/libsoup-2.4 -I../../Source/WebCore/platform/graphics/gstreamer -I../Dependencies/Root/include/gstreamer-1.0 -I../../Source/WebCore/platform/audio/gstreamer -IDerivedSources -IDerivedSources/webkitdom -I../../Source/WebCore/testing    -Wall -Wextra -Wcast-align -Wformat-security -Wmissing-format-attribute -Wpointer-arith -Wundef -Wwrite-strings -fPIC -MMD -MT Source/WebCore/CMakeFiles/WebCore.dir/page/EventHandler.cpp.o -MF "Source/WebCore/CMakeFiles/WebCore.dir/page/EventHandler.cpp.o.d" -o Source/WebCore/CMakeFiles/WebCore.dir/page/EventHandler.cpp.o -c ../../Source/WebCore/page/EventHandler.cpp
> ../../Source/WebCore/page/EventHandler.cpp: In member function ‘bool WebCore::EventHandler::handleWheelEvent(const WebCore::PlatformWheelEvent&)’:
> ../../Source/WebCore/page/EventHandler.cpp:2579:11: error: ‘const class WebCore::PlatformWheelEvent’ has no member named ‘phase’
>      if (e.phase() == PlatformWheelEventPhaseNone && e.momentumPhase() == PlatformWheelEventPhaseNone) {
>            ^
> ../../Source/WebCore/page/EventHandler.cpp:2579:22: error: ‘PlatformWheelEventPhaseNone’ was not declared in this scope
>      if (e.phase() == PlatformWheelEventPhaseNone && e.momentumPhase() == PlatformWheelEventPhaseNone) {
>                       ^
> ../../Source/WebCore/page/EventHandler.cpp:2579:55: error: ‘const class WebCore::PlatformWheelEvent’ has no member named ‘momentumPhase’
>      if (e.phase() == PlatformWheelEventPhaseNone && e.momentumPhase() == PlatformWheelEventPhaseNone) {
>                                                        ^
> ninja: build stopped: subcommand failed.
Comment 14 Mario Sanchez Prada 2014-04-22 02:49:46 PDT
(In reply to comment #13)
> Created a quick fix for this build breakage: https://bugs.webkit.org/show_bug.cgi?id=131980
> 

Brent, would you mind taking a look to it when you have a chance?
Comment 15 Brent Fulgham 2014-04-22 08:50:39 PDT
(In reply to comment #14)
> (In reply to comment #13)
> > Created a quick fix for this build breakage: https://bugs.webkit.org/show_bug.cgi?id=131980
> > 
> 
> Brent, would you mind taking a look to it when you have a chance?

Looks like you guys took care of it. Sorry for the breakage!