Start extracting platform specific bits out of PlatformEvents
Created attachment 120268 [details] Patch
This initial patch moves all the NSEvent -> PlatformEvent construction into a new factory style construction model. The long term goal is to merge the WebKit2 WebEvents with these cleaned up PlatformEvents.
Created attachment 120369 [details] Patch
Comment on attachment 120369 [details] Patch Attachment 120369 [details] did not pass chromium-ews (chromium-xvfb): Output: http://queues.webkit.org/results/11019012
Created attachment 120375 [details] Patch
Comment on attachment 120375 [details] Patch Attachment 120375 [details] did not pass gtk-ews (gtk): Output: http://queues.webkit.org/results/10955033
Comment on attachment 120375 [details] Patch Attachment 120375 [details] did not pass qt-ews (qt): Output: http://queues.webkit.org/results/11016030
Comment on attachment 120375 [details] Patch Attachment 120375 [details] did not pass chromium-ews (chromium-xvfb): Output: http://queues.webkit.org/results/10939028
Created attachment 120383 [details] Patch
Attachment 120369 [details] did not pass style-queue: Failed to run "['Tools/Scripts/check-webkit-style', '--diff-files', u'Source/WebCore/ChangeLog', u'Source/WebCor..." exit_code: 1 Source/WebCore/platform/mac/PlatformEventFactory.h:31: Alphabetical sorting problem. [build/include_order] [4] Total errors found: 1 in 24 files If any of these errors are false positives, please file a bug against check-webkit-style.
Created attachment 120385 [details] Patch
Attachment 120385 [details] did not pass style-queue: Failed to run "['Tools/Scripts/check-webkit-style', '--diff-files', u'Source/WebCore/ChangeLog', u'Source/WebCor..." exit_code: 1 Source/WebCore/platform/mac/PlatformEventFactory.h:31: Alphabetical sorting problem. [build/include_order] [4] Total errors found: 1 in 31 files If any of these errors are false positives, please file a bug against check-webkit-style.
Comment on attachment 120385 [details] Patch Attachment 120385 [details] did not pass qt-ews (qt): Output: http://queues.webkit.org/results/11019054
Comment on attachment 120385 [details] Patch Attachment 120385 [details] did not pass chromium-ews (chromium-xvfb): Output: http://queues.webkit.org/results/10939059
Comment on attachment 120385 [details] Patch Attachment 120385 [details] did not pass gtk-ews (gtk): Output: http://queues.webkit.org/results/10955074
Created attachment 120428 [details] Patch
Attachment 120428 [details] did not pass style-queue: Failed to run "['Tools/Scripts/check-webkit-style', '--diff-files', u'Source/WebCore/ChangeLog', u'Source/WebCor..." exit_code: 1 Source/WebCore/platform/mac/PlatformEventFactory.h:31: Alphabetical sorting problem. [build/include_order] [4] Total errors found: 1 in 32 files If any of these errors are false positives, please file a bug against check-webkit-style.
Comment on attachment 120428 [details] Patch Attachment 120428 [details] did not pass gtk-ews (gtk): Output: http://queues.webkit.org/results/10962149
Comment on attachment 120428 [details] Patch Attachment 120428 [details] did not pass chromium-ews (chromium-xvfb): Output: http://queues.webkit.org/results/11019152
Created attachment 120431 [details] Patch
I am not sure if I like the 4 factory functions. I might be happier exposing the interfaces for the builder classes so that the header had classes like: class NativePlatformMouseEvent : public PlatformMouseEvent { public: NativePlatformMouseEvent(NSEvent *event, NSView *windowView); }; instead of: static PlatformMouseEvent createPlatformMouseEvent(NSEvent *, NSView *windowView); and call sites were: foo->handleMouseEvent(NativePlatformMouseEvent(cocoaEvent, view)); instead of: foo->handleMouseEvent(PlatformEventFactory::createPlatformMouseEvent(cocoaEvent, view)); Hrm.
Committed r103643: <http://trac.webkit.org/changeset/103643>
This patch appears to have broken fast/events/continuous-platform-wheelevent-in-scrolling-div.html and fast/events/platform-wheelevent-in-scrolling-div.html on Mac: Started failing here: http://build.webkit.org/builders/SnowLeopard%20Intel%20Release%20(Tests)/builds/35834 http://build.webkit.org/results/SnowLeopard%20Intel%20Release%20(Tests)/r103643%20(35834)/results.html Didn't fail on the previous build: http://build.webkit.org/results/SnowLeopard%20Intel%20Release%20(Tests)/r103641%20(35833)/results.html
This patch also broke Chromium Mac builds: http://build.webkit.org/builders/Chromium%20Mac%20Release/builds/28684/steps/compile-webkit/logs/stdio
Fixed Chromium Mac build in http://trac.webkit.org/changeset/103652.