[webkit-reviews] review requested: [Bug 30754] Drags and Dragover events not in sync : [Attachment 42443] Patch with test case

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Tue Nov 3 20:14:24 PST 2009


Daniel Bates <dbates at webkit.org> has asked  for review:
Bug 30754: Drags and Dragover events not in sync
https://bugs.webkit.org/show_bug.cgi?id=30754

Attachment 42443: Patch with test case
https://bugs.webkit.org/attachment.cgi?id=42443&action=review

------- Additional Comments from Daniel Bates <dbates at webkit.org>
Fixes this bug by making our drag-and-drop processing model conform to section
7.9.4 of the HTML 5 spec.,
<http://dev.w3.org/html5/spec/Overview.html#drag-and-drop-processing-model>.

I probably am going to get called out on the very large comment I wrote in
method EventHandler::updateDragAndDrop. This method was non-trivial to
understand (at least to me) due to the triple recursion involved as well as who
calls this code. I tried to re-factor this code, but I felt it made it less
clear what was happening. I am open to suggestions on refactoring this.

I gave a proof in my comment as to why/how my fix works using the added field,
m_shouldOnlyFireDragOverEvent. However, in testing with r49924 on Windows the
mouse up, mouse down, and mouse move events don't work the same as in the Mac
build (r50425). This should not necessarily (in my opinion) hold us back from
going forward with this fix. Fixing this bug is definitely a step forward on
the Windows build. Hence, I am marking this for review. But we may need to fix
some more Windows drag-and-drop bugs for the drag-and-drop code to be on par
with the Mac build/HTML 5 compliant. I will identify and file a formal bug(s)
once I confirm with the ToT Windows build.

Let me know if you have any suggestions on my approach to fixing this bug.


More information about the webkit-reviews mailing list