miniblink滚轮太慢bug修复

时间:2022-05-28 04:28:17

原因是没设置webWheelEvent.hasPreciseScrollingDeltas = true;。

说起来简单,实际上找到这个原因花了一晚上。通过各种log打印,发现从发送m_webViewImpl->handleInputEvent(webWheelEvent);

到真正让layer开始滚动的WebLayerImpl::setScrollPositionDouble之间,隔了很久。于是调试handleInputEvent里面为啥没走到setScrollPositionDouble,

最后发现是ScrollAnimatorNone::PerAxisData::animateScroll里跳走了。这几个函数有点复杂,没怎么看明白。不过看了下webWheelEvent里相关的成员变量有没啥可以影响这里面的流程,最后锁定hasPreciseScrollingDeltas ,试了下,居然可以。就此搞定。