[Webkit-unassigned] [Bug 60563] [Chromium]Click event is not fired for a menulist <select>

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Thu May 12 10:44:11 PDT 2011


https://bugs.webkit.org/show_bug.cgi?id=60563





--- Comment #12 from Naoki Takano <takano.naoki at gmail.com>  2011-05-12 10:44:11 PST ---
Thank you for your review.

(In reply to comment #11)
> (From update of attachment 93236 [details])
> View in context: https://bugs.webkit.org/attachment.cgi?id=93236&action=review
> 
> I think you're almost there. For the most natural way, try handing this off to eventHandler::handleMouseRelease in AutoFillPopuMenuClient?

I want to make sure what you are saying.

Why do we need to forward the event to eventHandler::handleMouseRelease in AutoFillPopuMenuClient? I guess this is only for select tag event handler and we should not trigger the event in autofill popup.

> 
> > Source/WebCore/rendering/RenderMenuList.cpp:314
> > +    node()->dispatchMouseEvent(event, eventNames().mouseupEvent);
> > +    node()->dispatchMouseEvent(event, eventNames().clickEvent);
> 
> This logic is probably a bit more complicated than this. When you mouse down on a menu, then move the mouse off the menu, should the click still be dispatched? That's not how normal DOM works. See http://codesearch.google.com/codesearch/p#OAMlx_jo-ck/src/third_party/WebKit/Source/WebCore/page/EventHandler.cpp&l=1666&exact_package=chromium. Perhaps you should just hand this to EventHandler?

I see, I try it.

> 
> > Source/WebCore/rendering/RenderTextControlSingleLine.h:118
> > +    virtual void dispatchMouseUpAndClick(const PlatformMouseEvent&) { }
> 
> This is definitely wrong. We shouldn't dispatch events from RenderObjects.
As you see, I don't do anything for the object. dispatchMouseUpAndClick() is pure virtual function, so we need to implement something here.

Or don't we declare the function as pure virtual function?

Thanks

-- 
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