RESOLVED INVALID 99756
[Qt] fast/events/touch/touch-slider.html is failing
https://bugs.webkit.org/show_bug.cgi?id=99756
Summary [Qt] fast/events/touch/touch-slider.html is failing
Tony Chang
Reported 2012-10-18 14:02:27 PDT
This started happening after I rewrote RenderSlider to use new flexbox. After debugging, this is due to a difference between how Chromium and Qt handle eventSender.touch* events. The problem is that on Qt, calling a eventSender.touch* doesn't send a layout. This matters for fast/events/touch/touch-slider.html because the position of the thumb is set during layout. If I add document.body.offsetLeft between calls to eventSender.touch*, the test passes. In Chromium's DRT, we explicitly do a layout before sending the touch event (see bug 49285). Should we do the same for Qt? Note that Chromium and Qt are the only ports that have touch events enabled.
Attachments
Simon Hausmann
Comment 1 2012-10-19 04:28:53 PDT
(In reply to comment #0) > This started happening after I rewrote RenderSlider to use new flexbox. After debugging, this is due to a difference between how Chromium and Qt handle eventSender.touch* events. > > The problem is that on Qt, calling a eventSender.touch* doesn't send a layout. This matters for fast/events/touch/touch-slider.html because the position of the thumb is set during layout. If I add document.body.offsetLeft between calls to eventSender.touch*, the test passes. > > In Chromium's DRT, we explicitly do a layout before sending the touch event (see bug 49285). Should we do the same for Qt? Sounds like a good idea. Does this belong into the DRT or into cross-platform WebKit code? Where is it handled in Chromium?
Tony Chang
Comment 2 2012-10-19 09:54:06 PDT
(In reply to comment #1) > Does this belong into the DRT or into cross-platform WebKit code? Where is it handled in Chromium? I think for DRT, this needs to happen in port specific code because ports don't share EventSender implementations. For WTR, it might be possible to put layout calls in InjectedBundle/EventSendingController.cpp. Here's the code in Chromium's DRT: http://trac.webkit.org/browser/trunk/Tools/DumpRenderTree/chromium/TestRunner/src/EventSender.cpp#L1006
Jocelyn Turcotte
Comment 3 2014-02-03 03:22:59 PST
=== Bulk closing of Qt bugs === If you believe that this bug report is still relevant for a non-Qt port of webkit.org, please re-open it and remove [Qt] from the summary. If you believe that this is still an important QtWebKit bug, please fill a new report at https://bugreports.qt-project.org and add a link to this issue. See http://qt-project.org/wiki/ReportingBugsInQt for additional guidelines.
Note You need to log in before you can comment on or make changes to this bug.