RESOLVED FIXED122804
EventPath::updateTouchLists traverses through EventPath thrice
https://bugs.webkit.org/show_bug.cgi?id=122804
Summary EventPath::updateTouchLists traverses through EventPath thrice
Ryosuke Niwa
Reported 2013-10-14 18:46:14 PDT
EventPath::updateTouchLists goes through m_path thrice by calling updateTouchListsInEventPath. Given that nodes tend to be scattered across multiple pages, this is a very inefficient operation. It's much better to loop over touch lists or touch objects while the outer loop traverses through EventPath.
Attachments
Cleanup (7.24 KB, patch)
2013-10-14 18:54 PDT, Ryosuke Niwa
no flags
Fixed builds (7.06 KB, patch)
2013-10-14 19:05 PDT, Ryosuke Niwa
no flags
Patch for landing (7.06 KB, patch)
2013-10-14 20:01 PDT, Ryosuke Niwa
no flags
Another build fix attempt (7.08 KB, patch)
2013-10-14 20:41 PDT, Ryosuke Niwa
no flags
Ryosuke Niwa
Comment 1 2013-10-14 18:54:54 PDT
EFL EWS Bot
Comment 2 2013-10-14 18:58:26 PDT
EFL EWS Bot
Comment 3 2013-10-14 18:59:15 PDT
Comment on attachment 214219 [details] Cleanup Attachment 214219 [details] did not pass efl-wk2-ews (efl-wk2): Output: http://webkit-queues.appspot.com/results/4039022
Ryosuke Niwa
Comment 4 2013-10-14 19:05:53 PDT
Created attachment 214220 [details] Fixed builds
EFL EWS Bot
Comment 5 2013-10-14 19:09:07 PDT
EFL EWS Bot
Comment 6 2013-10-14 19:10:54 PDT
Comment on attachment 214220 [details] Fixed builds Attachment 214220 [details] did not pass efl-wk2-ews (efl-wk2): Output: http://webkit-queues.appspot.com/results/4001046
Benjamin Poulain
Comment 7 2013-10-14 19:12:37 PDT
Comment on attachment 214220 [details] Fixed builds View in context: https://bugs.webkit.org/attachment.cgi?id=214220&action=review > Source/WebCore/dom/EventDispatcher.cpp:444 > + const size_t touchNodeCount = touchEvent.touches()->length() + touchEvent.targetTouches()->length() + touchEvent.changedTouches()->length(); No need for the const. I think "touchNode" is confusing. Use totalTouchesCount instead?
Ryosuke Niwa
Comment 8 2013-10-14 20:01:25 PDT
Created attachment 214222 [details] Patch for landing
Ryosuke Niwa
Comment 9 2013-10-14 20:01:35 PDT
Comment on attachment 214222 [details] Patch for landing Wait for EWS.
EFL EWS Bot
Comment 10 2013-10-14 20:25:04 PDT
Comment on attachment 214222 [details] Patch for landing Attachment 214222 [details] did not pass efl-ews (efl): Output: http://webkit-queues.appspot.com/results/3914093
EFL EWS Bot
Comment 11 2013-10-14 20:26:00 PDT
Comment on attachment 214222 [details] Patch for landing Attachment 214222 [details] did not pass efl-wk2-ews (efl-wk2): Output: http://webkit-queues.appspot.com/results/4039038
Ryosuke Niwa
Comment 12 2013-10-14 20:41:40 PDT
Created attachment 214225 [details] Another build fix attempt
Ryosuke Niwa
Comment 13 2013-10-14 21:06:37 PDT
Note You need to log in before you can comment on or make changes to this bug.