[Webkit-unassigned] [Bug 60563] [Chromium]Click event is not fired for a menulist <select>
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Fri May 13 10:43:01 PDT 2011
https://bugs.webkit.org/show_bug.cgi?id=60563
--- Comment #16 from Dimitri Glazkov (Google) <dglazkov at chromium.org> 2011-05-13 10:43:00 PST ---
(In reply to comment #15)
> Created an attachment (id=93407)
--> (https://bugs.webkit.org/attachment.cgi?id=93407&action=review) [details]
> EventHandler version
>
> According to your suggestion, I changed to use EventHandler to forward the event.
>
> Actually, just forwarding doesn't work well because of coordinate issue.
>
> As you know, user click the item in select option window, the mouse point is out of bound from the actual select widget.
> The event hander isn't fired correctly.
>
> So, inspired by WebKit2 solution, I stored the mouse button down position first, and use the location when the up.
>
> I left dispatchMouseUpAndClick() in AutoFillPopupMenuClient.h, because I didn't get your answer.
>
> Please review again.
>
> Thanks,
This patch looks even worse than the others :(
I am sorry that this is taking so many roundtrips. I don't know the code around popups well enough to offer the solution directly, but I can see a problem with existing code. In short, it's:
Don't reach into WebCore to make stuff in WebKit layer work.
The long version: See how the patch in bug 57904 doesn't make any changes in WebCore code? That's because they respect the layering boundaries and realize that even though it is more work to fix this particular issue, the WebCore code should work the same way for _all_ ports. What you're proposing is hooks in WebCore that are only relevant for Chromium. I assert that this is unnecessary.
I actually rather like the solution in bug 57904 and find it very rational. Co-opting the mousedown event seems reasonable and logical from the perspective of WebCore.
Hope this helps.
--
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
More information about the webkit-unassigned
mailing list