<html><head><style type="text/css"><!-- DIV {margin:0px;} --></style></head><body><div style="font-family:times new roman, new york, times, serif;font-size:12pt"><div>Mark,</div><div>Thanks a lot. I'm still wondering how the Mouse/Key events are associated with the Render Tree? i.e, how thoses events are routed to every render node?</div><div>I saw there is a "Widget" class implemented for different platforms, and also RenderWidget. seems there is something (specific to mouse events) happening while building up the render tree? </div><div style="font-family:times new roman, new york, times, serif;font-size:12pt"><br></div><div style="font-family:times new roman, new york, times, serif;font-size:12pt">Thnaks!</div><div style="font-family:times new roman, new york, times, serif;font-size:12pt">-Tau</div><div style="font-family:times new roman, new york, times, serif;font-size:12pt"><br><div style="font-family:arial, helvetica,
sans-serif;font-size:13px">----- Original Message ----<br>From: Mark Rowe <mrowe@apple.com><br>To: Tau After <aftertau@yahoo.com><br>Cc: webkit-dev@lists.webkit.org<br>Sent: Sunday, September 21, 2008 1:16:28 PM<br>Subject: Re: [webkit-dev] How WebCore receives Mouse events?<br><br>
<br>On Sep 20, 2008, at 9:18 PM, Tau After wrote:<br><br>> Hello,<br>> Could anybody point me the source code where the WebCore register <br>> itself with the low layer system to receive the Mouse events? (maybe <br>> also key events for elements like buttons)<br><br>WebCore doesn't register for mouse events, the WebKit layer takes care <br>of passing mouse events down to WebCore when needed. For example, <br>when a button is pressed WebKit on Mac (<<a href="http://trac.webkit.org/browser/trunk/WebKit/mac/WebView/WebHTMLView.mm?rev=36685#L3132" target="_blank">http://trac.webkit.org/browser/trunk/WebKit/mac/WebView/WebHTMLView.mm?rev=36685#L3132</a> <br> >) calls into EventHandler::mouseDown (<<a href="http://trac.webkit.org/browser/trunk/WebCore/page/mac/EventHandlerMac.mm?rev=36685#L474" target="_blank">http://trac.webkit.org/browser/trunk/WebCore/page/mac/EventHandlerMac.mm?rev=36685#L474</a> <br> >), which then calls into the
cross-platform <br>EventHandler::handleMousePressEvent (<<a href="http://trac.webkit.org/browser/trunk/WebCore/page/EventHandler.cpp?rev=36685#L317" target="_blank">http://trac.webkit.org/browser/trunk/WebCore/page/EventHandler.cpp?rev=36685#L317</a> <br> >). EventHandler then takes care of the necessary text selection, <br>dispatch of DOM events, etc.<br><br>Hope this helps,<br><br>- Mark<br><br></div></div><div style="position:fixed"></div></div><br>
</body></html>