chromium android 的事件响应机制

来源:互联网 发布:独角兽全武装数据 编辑:程序博客网 时间:2024/06/05 23:59

最近研究了一下Chromium在android平台下的事件响应,总结一下。

事件分为:MouseEvent, MouseWheelEvent,KeyboardEvent,GestureEvent,TouchEvent。

从app层传到WebCore,经历以下几个阶段:

(1) app层将用户输入事件封装为WebInputEvent,传递给WebKit。例如点击事件的调用过程:WebViewCore.nativeSingleTap->WebViewCoreImpl::SingleTap。在WebViewCoreImpl::SingleTap中将app事件封装为WebGestureEvent。

 WebGestureEvent为WebKit概念,继承自WebInputEvent。

(2) WebKit将WebInputEvent封装为PlatformEvent。

(3) EventHandler将PlatformEvent分发给处于焦点中的Node。

(4) Node将PlatformEvent封装成Event,交给EventDispatcher处理。

(5) 由EventDispatcher决定最终将Event交给谁处理。


原创粉丝点击