Changeset 76557 in webkit


Ignore:
Timestamp:
Jan 24, 2011 5:36:51 PM (13 years ago)
Author:
commit-queue@webkit.org
Message:

2011-01-24 Peter Kasting <pkasting@google.com>

Reviewed by Darin Adler.

Roll back r67261 ("Don't fire onclick on middle clicks") due to
regressions.
https://bugs.webkit.org/show_bug.cgi?id=46733

  • fast/events/mouse-click-events-expected.txt:
  • fast/events/script-tests/mouse-click-events.js:

2011-01-24 Peter Kasting <pkasting@google.com>

Reviewed by Darin Adler.

Roll back r67261 ("Don't fire onclick on middle clicks") due to
regressions.
https://bugs.webkit.org/show_bug.cgi?id=46733

  • html/HTMLAnchorElement.cpp: (WebCore::isLinkClick):
  • html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::preDispatchEventHandler): (WebCore::HTMLInputElement::postDispatchEventHandler): (WebCore::HTMLInputElement::defaultEventHandler):
  • page/EventHandler.cpp: (WebCore::EventHandler::handleMouseDoubleClickEvent): (WebCore::EventHandler::handleMouseReleaseEvent):
Location:
trunk
Files:
7 edited

Legend:

Unmodified
Added
Removed
  • trunk/LayoutTests/ChangeLog

    r76556 r76557  
     12011-01-24  Peter Kasting  <pkasting@google.com>
     2
     3        Reviewed by Darin Adler.
     4
     5        Roll back r67261 ("Don't fire onclick on middle clicks") due to
     6        regressions.
     7        https://bugs.webkit.org/show_bug.cgi?id=46733
     8
     9        * fast/events/mouse-click-events-expected.txt:
     10        * fast/events/script-tests/mouse-click-events.js:
     11
    1122011-01-24  Xiaomei Ji  <xji@chromium.org>
    213
  • trunk/LayoutTests/fast/events/mouse-click-events-expected.txt

    r67261 r76557  
    77PASS eventLog is "mousedown(0) mouseup(0) click(0) mousedown(0) mouseup(0) click(0) dblclick(0) "
    88Middle Mouse Button
    9 PASS eventLog is "mousedown(1) mouseup(1) mousedown(1) mouseup(1) "
     9PASS eventLog is "mousedown(1) mouseup(1) click(1) mousedown(1) mouseup(1) click(1) dblclick(1) "
    1010Right Mouse Button
    1111PASS eventLog is "mousedown(2) mouseup(2) mousedown(2) mouseup(2) "
    12124th Mouse Button
    13 PASS eventLog is "mousedown(1) mouseup(1) mousedown(1) mouseup(1) "
     13PASS eventLog is "mousedown(1) mouseup(1) click(1) mousedown(1) mouseup(1) click(1) dblclick(1) "
    1414PASS successfullyParsed is true
    1515
  • trunk/LayoutTests/fast/events/script-tests/mouse-click-events.js

    r67261 r76557  
    5050if (window.eventSender) {
    5151    testEvents("Left Mouse Button", 0, "mousedown(0) mouseup(0) click(0) mousedown(0) mouseup(0) click(0) dblclick(0) ");
    52     testEvents("Middle Mouse Button", 1, "mousedown(1) mouseup(1) mousedown(1) mouseup(1) ");
     52    testEvents("Middle Mouse Button", 1, "mousedown(1) mouseup(1) click(1) mousedown(1) mouseup(1) click(1) dblclick(1) ");
    5353    testEvents("Right Mouse Button", 2, "mousedown(2) mouseup(2) mousedown(2) mouseup(2) ");
    54     testEvents("4th Mouse Button", 3, "mousedown(1) mouseup(1) mousedown(1) mouseup(1) ");
     54    testEvents("4th Mouse Button", 3, "mousedown(1) mouseup(1) click(1) mousedown(1) mouseup(1) click(1) dblclick(1) ");
    5555}
    5656
  • trunk/Source/WebCore/ChangeLog

    r76555 r76557  
     12011-01-24  Peter Kasting  <pkasting@google.com>
     2
     3        Reviewed by Darin Adler.
     4
     5        Roll back r67261 ("Don't fire onclick on middle clicks") due to
     6        regressions.
     7        https://bugs.webkit.org/show_bug.cgi?id=46733
     8
     9        * html/HTMLAnchorElement.cpp:
     10        (WebCore::isLinkClick):
     11        * html/HTMLInputElement.cpp:
     12        (WebCore::HTMLInputElement::preDispatchEventHandler):
     13        (WebCore::HTMLInputElement::postDispatchEventHandler):
     14        (WebCore::HTMLInputElement::defaultEventHandler):
     15        * page/EventHandler.cpp:
     16        (WebCore::EventHandler::handleMouseDoubleClickEvent):
     17        (WebCore::EventHandler::handleMouseReleaseEvent):
     18
    1192011-01-24  Martin Robinson  <mrobinson@igalia.com>
    220
  • trunk/Source/WebCore/html/HTMLAnchorElement.cpp

    r69924 r76557  
    542542bool isLinkClick(Event* event)
    543543{
    544     return event->type() == eventNames().clickEvent || (event->type() == eventNames().mouseupEvent && isMiddleMouseButtonEvent(event));
     544    return event->type() == eventNames().clickEvent && (!event->isMouseEvent() || static_cast<MouseEvent*>(event)->button() != RightButton);
    545545}
    546546
  • trunk/Source/WebCore/html/HTMLInputElement.cpp

    r76147 r76557  
    4646#include "LocalizedStrings.h"
    4747#include "MouseEvent.h"
     48#include "PlatformMouseEvent.h"
    4849#include "RenderTextControlSingleLine.h"
    4950#include "RenderTheme.h"
     
    943944    if (event->type() != eventNames().clickEvent)
    944945        return 0;
     946    if (!event->isMouseEvent() || static_cast<MouseEvent*>(event)->button() != LeftButton)
     947        return 0;
    945948    // FIXME: Check whether there are any cases where this actually ends up leaking.
    946949    return m_inputType->willDispatchClick().leakPtr();
     
    950953{
    951954    OwnPtr<ClickHandlingState> state = adoptPtr(static_cast<ClickHandlingState*>(dataFromPreDispatch));
    952     if (event->type() != eventNames().clickEvent)
    953         return;
    954955    if (!state)
    955956        return;
     
    959960void HTMLInputElement::defaultEventHandler(Event* evt)
    960961{
    961     if (evt->isMouseEvent() && evt->type() == eventNames().clickEvent) {
     962    if (evt->isMouseEvent() && evt->type() == eventNames().clickEvent && static_cast<MouseEvent*>(evt)->button() == LeftButton) {
    962963        m_inputType->handleClickEvent(static_cast<MouseEvent*>(evt));
    963964        if (evt->defaultHandled())
  • trunk/Source/WebCore/page/EventHandler.cpp

    r76098 r76557  
    14231423    bool swallowMouseUpEvent = dispatchMouseEvent(eventNames().mouseupEvent, mev.targetNode(), true, m_clickCount, mouseEvent, false);
    14241424
    1425     bool swallowClickEvent = mouseEvent.button() == LeftButton && mev.targetNode() == m_clickNode && dispatchMouseEvent(eventNames().clickEvent, mev.targetNode(), true, m_clickCount, mouseEvent, true);
     1425    bool swallowClickEvent = mouseEvent.button() != RightButton && mev.targetNode() == m_clickNode && dispatchMouseEvent(eventNames().clickEvent, mev.targetNode(), true, m_clickCount, mouseEvent, true);
    14261426
    14271427    if (m_lastScrollbarUnderMouse)
     
    16141614    bool swallowMouseUpEvent = dispatchMouseEvent(eventNames().mouseupEvent, mev.targetNode(), true, m_clickCount, mouseEvent, false);
    16151615
    1616     bool swallowClickEvent = m_clickCount > 0 && mouseEvent.button() == LeftButton && mev.targetNode() == m_clickNode && dispatchMouseEvent(eventNames().clickEvent, mev.targetNode(), true, m_clickCount, mouseEvent, true);
     1616    bool swallowClickEvent = m_clickCount > 0 && mouseEvent.button() != RightButton && mev.targetNode() == m_clickNode && dispatchMouseEvent(eventNames().clickEvent, mev.targetNode(), true, m_clickCount, mouseEvent, true);
    16171617
    16181618    if (m_resizeLayer) {
Note: See TracChangeset for help on using the changeset viewer.