Add EventDispatcher class to WebKit2
authorjberlin@webkit.org <jberlin@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 13 Dec 2011 00:52:46 +0000 (00:52 +0000)
committerjberlin@webkit.org <jberlin@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 13 Dec 2011 00:52:46 +0000 (00:52 +0000)
commit74399bc5a814ecdbff3b49208cb45a83fe3fa792
tree7ccba0197abd294f2b527e939e3997756fa8a4f0
parent03c472d190ef79abef9c0e080a9d55ac2af22660
Add EventDispatcher class to WebKit2
https://bugs.webkit.org/show_bug.cgi?id=74344

Patch by Anders Carlsson <andersca@apple.com> on 2011-12-12
Reviewed by Sam Weinig.

The EventDispatcher is a singleton which will be in charge of dispatching events to WebPage objects.

* DerivedSources.make:
* DerivedSources.pri:
* GNUmakefile.am:
* Target.pri:
* WebKit2.xcodeproj/project.pbxproj:
* win/WebKit2.vcproj:
Add new files.

* Platform/CoreIPC/MessageID.h:
Add EventDispatcher.

* WebProcess/WebConnectionToUIProcess.cpp:
(WebKit::WebConnectionToUIProcess::WebConnectionToUIProcess):
(WebKit::WebConnectionToUIProcess::invalidate):
* WebProcess/WebConnectionToUIProcess.h:
WebConnectionToUIProcess doesn't need to be a QueueClient. Also, move the call to open into WebProcess since
we don't want to add queue clients after the connection has been opened.

* WebProcess/WebPage/EventDispatcher.cpp: Added.
(WebKit::EventDispatcher::EventDispatcher):
(WebKit::EventDispatcher::~EventDispatcher):
(WebKit::EventDispatcher::didReceiveMessageOnConnectionWorkQueue):
(WebKit::EventDispatcher::wheelEvent):
* WebProcess/WebPage/EventDispatcher.h:
* WebProcess/WebPage/EventDispatcher.messages.in: Added.
Add new stub files.

* WebProcess/WebProcess.cpp:
(WebKit::WebProcess::initialize):
Add the event dispatcher as a queue client.

* WebProcess/WebProcess.h:
Add an EventDispatcher member variable to the web process.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@102640 268f45cc-cd09-0410-ab3c-d52691b4dbfc
15 files changed:
Source/WebKit2/ChangeLog
Source/WebKit2/DerivedSources.make
Source/WebKit2/DerivedSources.pri
Source/WebKit2/GNUmakefile.am
Source/WebKit2/Platform/CoreIPC/MessageID.h
Source/WebKit2/Target.pri
Source/WebKit2/WebKit2.xcodeproj/project.pbxproj
Source/WebKit2/WebProcess/WebConnectionToUIProcess.cpp
Source/WebKit2/WebProcess/WebConnectionToUIProcess.h
Source/WebKit2/WebProcess/WebPage/EventDispatcher.cpp [new file with mode: 0644]
Source/WebKit2/WebProcess/WebPage/EventDispatcher.h [new file with mode: 0644]
Source/WebKit2/WebProcess/WebPage/EventDispatcher.messages.in [new file with mode: 0644]
Source/WebKit2/WebProcess/WebProcess.cpp
Source/WebKit2/WebProcess/WebProcess.h
Source/WebKit2/win/WebKit2.vcproj