Changeset 156761 in webkit


Ignore:
Timestamp:
Oct 1, 2013 9:20:06 PM (11 years ago)
Author:
akling@apple.com
Message:

Move mouse event dispatch from Node to Element.
<https://webkit.org/b/122203>

Reviewed by Anders Carlsson.

We never dispatch mouse events on text or other non-element nodes,
so move the related logic to using Element.

Node::dispatchMouseEvent() moves to Element. I also changed the
relatedTarget argument to be an Element* since the related target
is never a Node either.

Most of this patch is *Node -> *Element renames in EventHandler.

Location:
trunk/Source
Files:
15 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/ChangeLog

    r156760 r156761  
     12013-10-01  Andreas Kling  <akling@apple.com>
     2
     3        Move mouse event dispatch from Node to Element.
     4        <https://webkit.org/b/122203>
     5
     6        Reviewed by Anders Carlsson.
     7
     8        We never dispatch mouse events on text or other non-element nodes,
     9        so move the related logic to using Element.
     10
     11        Node::dispatchMouseEvent() moves to Element. I also changed the
     12        relatedTarget argument to be an Element* since the related target
     13        is never a Node either.
     14
     15        Most of this patch is *Node -> *Element renames in EventHandler.
     16
    1172013-10-01  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
    218
  • trunk/Source/WebCore/WebCore.exp.in

    r156688 r156761  
    186186__ZN7WebCore12EventHandler23handleMouseReleaseEventERKNS_18PlatformMouseEventE
    187187__ZN7WebCore12EventHandler24logicalScrollRecursivelyENS_22ScrollLogicalDirectionENS_17ScrollGranularityEPNS_4NodeE
    188 __ZN7WebCore12EventHandler27setCapturingMouseEventsNodeEN3WTF10PassRefPtrINS_4NodeEEE
     188__ZN7WebCore12EventHandler30setCapturingMouseEventsElementEN3WTF10PassRefPtrINS_7ElementEEE
    189189__ZN7WebCore12EventHandler31passMouseMovedEventToScrollbarsERKNS_18PlatformMouseEventE
    190190__ZN7WebCore12EventHandler33sendFakeEventsAfterWidgetTrackingEP7NSEvent
  • trunk/Source/WebCore/dom/Element.cpp

    r156622 r156761  
    241241}
    242242
     243bool Element::dispatchMouseEvent(const PlatformMouseEvent& event, const AtomicString& eventType, int detail, Element* relatedTarget)
     244{
     245    return EventDispatcher::dispatchEvent(this, MouseEventDispatchMediator::create(MouseEvent::create(eventType, document().defaultView(), event, detail, relatedTarget)));
     246}
     247
    243248bool Element::dispatchWheelEvent(const PlatformWheelEvent& event)
    244249{
  • trunk/Source/WebCore/dom/Element.h

    r156622 r156761  
    4444class IntSize;
    4545class Locale;
     46class PlatformKeyboardEvent;
     47class PlatformMouseEvent;
    4648class PlatformWheelEvent;
    4749class PseudoElement;
     
    533535    void setSavedLayerScrollOffset(const IntSize&);
    534536
     537    bool dispatchMouseEvent(const PlatformMouseEvent&, const AtomicString& eventType, int clickCount = 0, Element* relatedTarget = nullptr);
    535538    bool dispatchWheelEvent(const PlatformWheelEvent&);
    536539    bool dispatchKeyEvent(const PlatformKeyboardEvent&);
  • trunk/Source/WebCore/dom/Node.cpp

    r156683 r156761  
    21112111}
    21122112
    2113 bool Node::dispatchMouseEvent(const PlatformMouseEvent& event, const AtomicString& eventType,
    2114     int detail, Node* relatedTarget)
    2115 {
    2116     return EventDispatcher::dispatchEvent(this, MouseEventDispatchMediator::create(MouseEvent::create(eventType, document().defaultView(), event, detail, relatedTarget)));
    2117 }
    2118 
    21192113#if ENABLE(GESTURE_EVENTS)
    21202114bool Node::dispatchGestureEvent(const PlatformGestureEvent& event)
  • trunk/Source/WebCore/dom/Node.h

    r156683 r156761  
    7171class NodeListsNodeData;
    7272class NodeRareData;
    73 class PlatformKeyboardEvent;
    74 class PlatformMouseEvent;
    7573class QualifiedName;
    7674class RadioNodeList;
     
    544542    bool dispatchDOMActivateEvent(int detail, PassRefPtr<Event> underlyingEvent);
    545543
    546     bool dispatchMouseEvent(const PlatformMouseEvent&, const AtomicString& eventType, int clickCount = 0, Node* relatedTarget = 0);
    547544#if ENABLE(GESTURE_EVENTS)
    548545    bool dispatchGestureEvent(const PlatformGestureEvent&);
  • trunk/Source/WebCore/html/HTMLPlugInElement.cpp

    r156622 r156761  
    9797    if (m_isCapturingMouseEvents) {
    9898        if (Frame* frame = document().frame())
    99             frame->eventHandler().setCapturingMouseEventsNode(0);
     99            frame->eventHandler().setCapturingMouseEventsElement(nullptr);
    100100        m_isCapturingMouseEvents = false;
    101101    }
  • trunk/Source/WebCore/html/shadow/MediaControlElements.cpp

    r156622 r156761  
    111111    m_lastDragEventLocation = eventLocation;
    112112
    113     frame->eventHandler().setCapturingMouseEventsNode(this);
     113    frame->eventHandler().setCapturingMouseEventsElement(this);
    114114
    115115    m_isBeingDragged = true;
     
    138138        return;
    139139
    140     frame->eventHandler().setCapturingMouseEventsNode(0);
     140    frame->eventHandler().setCapturingMouseEventsElement(nullptr);
    141141}
    142142
  • trunk/Source/WebCore/html/shadow/SliderThumbElement.cpp

    r156147 r156761  
    322322{
    323323    if (Frame* frame = document().frame()) {
    324         frame->eventHandler().setCapturingMouseEventsNode(this);
     324        frame->eventHandler().setCapturingMouseEventsElement(this);
    325325        m_inDragMode = true;
    326326    }
     
    333333
    334334    if (Frame* frame = document().frame())
    335         frame->eventHandler().setCapturingMouseEventsNode(0);
     335        frame->eventHandler().setCapturingMouseEventsElement(nullptr);
    336336    m_inDragMode = false;
    337337    if (renderer())
     
    399399    if (m_inDragMode) {
    400400        if (Frame* frame = document().frame())
    401             frame->eventHandler().setCapturingMouseEventsNode(0);
     401            frame->eventHandler().setCapturingMouseEventsElement(nullptr);
    402402    }
    403403}
  • trunk/Source/WebCore/html/shadow/SpinButtonElement.cpp

    r156241 r156761  
    121121            if (!m_capturing) {
    122122                if (Frame* frame = document().frame()) {
    123                     frame->eventHandler().setCapturingMouseEventsNode(this);
     123                    frame->eventHandler().setCapturingMouseEventsElement(this);
    124124                    m_capturing = true;
    125125                    if (Page* page = document().page())
     
    197197    if (m_capturing) {
    198198        if (Frame* frame = document().frame()) {
    199             frame->eventHandler().setCapturingMouseEventsNode(0);
     199            frame->eventHandler().setCapturingMouseEventsElement(nullptr);
    200200            m_capturing = false;
    201201            if (Page* page = document().page())
  • trunk/Source/WebCore/html/shadow/TextControlInnerElements.cpp

    r156147 r156761  
    202202    if (m_capturing) {
    203203        if (Frame* frame = document().frame())
    204             frame->eventHandler().setCapturingMouseEventsNode(0);
     204            frame->eventHandler().setCapturingMouseEventsElement(nullptr);
    205205    }
    206206}
     
    219219        if (renderer() && renderer()->visibleToHitTesting()) {
    220220            if (Frame* frame = document().frame()) {
    221                 frame->eventHandler().setCapturingMouseEventsNode(this);
     221                frame->eventHandler().setCapturingMouseEventsElement(this);
    222222                m_capturing = true;
    223223            }
     
    230230        if (m_capturing) {
    231231            if (Frame* frame = document().frame()) {
    232                 frame->eventHandler().setCapturingMouseEventsNode(0);
     232                frame->eventHandler().setCapturingMouseEventsElement(nullptr);
    233233                m_capturing = false;
    234234            }
     
    306306        if (renderer() && renderer()->visibleToHitTesting()) {
    307307            if (Frame* frame = document().frame()) {
    308                 frame->eventHandler().setCapturingMouseEventsNode(this);
     308                frame->eventHandler().setCapturingMouseEventsElement(this);
    309309                m_capturing = true;
    310310            }
     
    319319        if (m_capturing && renderer() && renderer()->visibleToHitTesting()) {
    320320            if (Frame* frame = document().frame()) {
    321                 frame->eventHandler().setCapturingMouseEventsNode(0);
     321                frame->eventHandler().setCapturingMouseEventsElement(nullptr);
    322322                m_capturing = false;
    323323            }
     
    417417    if (m_capturing) {
    418418        if (Frame* frame = document().frame())
    419             frame->eventHandler().setCapturingMouseEventsNode(0);
     419            frame->eventHandler().setCapturingMouseEventsElement(nullptr);
    420420    }
    421421
  • trunk/Source/WebCore/page/EventHandler.cpp

    r156715 r156761  
    334334#endif
    335335    , m_resizeLayer(0)
    336     , m_eventHandlerWillResetCapturingMouseEventsNode(0)
     336    , m_eventHandlerWillResetCapturingMouseEventsElement(nullptr)
    337337    , m_clickCount(0)
    338338    , m_mousePositionIsUnknown(true)
     
    389389#endif
    390390    m_resizeLayer = 0;
    391     m_nodeUnderMouse = 0;
    392     m_lastNodeUnderMouse = 0;
     391    m_elementUnderMouse = nullptr;
     392    m_lastElementUnderMouse = nullptr;
    393393#if ENABLE(SVG)
    394394    m_instanceUnderMouse = 0;
     
    410410    m_mousePressed = false;
    411411    m_capturesDragging = false;
    412     m_capturingMouseEventsNode = 0;
     412    m_capturingMouseEventsElement = nullptr;
    413413    m_latchedWheelEventElement = nullptr;
    414414    m_previousWheelScrolledElement = nullptr;
     
    13781378#endif
    13791379            && m_frame.selection().isCaretOrRange()
    1380             && !m_capturingMouseEventsNode) {
     1380            && !m_capturingMouseEventsElement) {
    13811381            return iBeam;
    13821382        }
     
    15561556        m_capturesDragging = subframe->eventHandler().capturesDragging();
    15571557        if (m_mousePressed && m_capturesDragging) {
    1558             m_capturingMouseEventsNode = mev.targetNode();
    1559             m_eventHandlerWillResetCapturingMouseEventsNode = true;
     1558            m_capturingMouseEventsElement = subframe->ownerElement();
     1559            m_eventHandlerWillResetCapturingMouseEventsElement = true;
    15601560        }
    15611561        invalidateClick();
     
    16561656    MouseEventWithHitTestResults mev = prepareMouseEvent(request, mouseEvent);
    16571657    Frame* subframe = subframeForHitTestResult(mev);
    1658     if (m_eventHandlerWillResetCapturingMouseEventsNode)
    1659         m_capturingMouseEventsNode = 0;
     1658    if (m_eventHandlerWillResetCapturingMouseEventsElement)
     1659        m_capturingMouseEventsElement = nullptr;
    16601660    if (subframe && passMousePressEventToSubframe(mev, subframe))
    16611661        return true;
     
    17921792
    17931793    bool swallowEvent = false;
    1794     RefPtr<Frame> newSubframe = m_capturingMouseEventsNode.get() ? subframeForTargetNode(m_capturingMouseEventsNode.get()) : subframeForHitTestResult(mev);
     1794    RefPtr<Frame> newSubframe = m_capturingMouseEventsElement.get() ? subframeForTargetNode(m_capturingMouseEventsElement.get()) : subframeForHitTestResult(mev);
    17951795 
    17961796    // We want mouseouts to happen first, from the inside out.  First send a move event to the last subframe so that it will fire mouseouts.
     
    18971897        bool cancelable = true;
    18981898        bool setUnder = false;
    1899         return !dispatchMouseEvent(eventNames().mouseupEvent, m_lastNodeUnderMouse.get(), cancelable, m_clickCount, mouseEvent, setUnder);
     1899        return !dispatchMouseEvent(eventNames().mouseupEvent, m_lastElementUnderMouse.get(), cancelable, m_clickCount, mouseEvent, setUnder);
    19001900    }
    19011901
    19021902    HitTestRequest request(HitTestRequest::Release | HitTestRequest::DisallowShadowContent);
    19031903    MouseEventWithHitTestResults mev = prepareMouseEvent(request, mouseEvent);
    1904     Frame* subframe = m_capturingMouseEventsNode.get() ? subframeForTargetNode(m_capturingMouseEventsNode.get()) : subframeForHitTestResult(mev);
    1905     if (m_eventHandlerWillResetCapturingMouseEventsNode)
    1906         m_capturingMouseEventsNode = 0;
     1904    Frame* subframe = m_capturingMouseEventsElement.get() ? subframeForTargetNode(m_capturingMouseEventsElement.get()) : subframeForHitTestResult(mev);
     1905    if (m_eventHandlerWillResetCapturingMouseEventsElement)
     1906        m_capturingMouseEventsElement = nullptr;
    19071907    if (subframe && passMouseReleaseEventToSubframe(mev, subframe))
    19081908        return true;
     
    21902190    stopAutoscrollTimer();
    21912191    m_dragTarget = 0;
    2192     m_capturingMouseEventsNode = 0;
     2192    m_capturingMouseEventsElement = nullptr;
    21932193    m_shouldOnlyFireDragOverEvent = false;
    21942194#if PLATFORM(MAC)
     
    21982198#endif // ENABLE(DRAG_SUPPORT)
    21992199
    2200 void EventHandler::setCapturingMouseEventsNode(PassRefPtr<Node> n)
    2201 {
    2202     m_capturingMouseEventsNode = n;
    2203     m_eventHandlerWillResetCapturingMouseEventsNode = false;
     2200void EventHandler::setCapturingMouseEventsElement(PassRefPtr<Element> element)
     2201{
     2202    m_capturingMouseEventsElement = element;
     2203    m_eventHandlerWillResetCapturingMouseEventsElement = false;
    22042204}
    22052205
     
    22302230void EventHandler::updateMouseEventTargetNode(Node* targetNode, const PlatformMouseEvent& mouseEvent, bool fireMouseOverOut)
    22312231{
    2232     Node* result = targetNode;
    2233    
    2234     // If we're capturing, we always go right to that node.
    2235     if (m_capturingMouseEventsNode)
    2236         result = m_capturingMouseEventsNode.get();
    2237     else {
    2238         // If the target node is a text node, dispatch on the parent node - rdar://4196646
    2239         if (result && result->isTextNode())
    2240             result = result->parentOrShadowHostElement();
    2241     }
    2242     m_nodeUnderMouse = result;
     2232    Element* targetElement = nullptr;
     2233   
     2234    // If we're capturing, we always go right to that element.
     2235    if (m_capturingMouseEventsElement)
     2236        targetElement = m_capturingMouseEventsElement.get();
     2237    else if (targetNode) {
     2238        // If the target node is a non-element, dispatch on the parent. <rdar://problem/4196646>
     2239        if (!targetNode->isElementNode())
     2240            targetElement = targetNode->parentOrShadowHostElement();
     2241        else
     2242            targetElement = toElement(targetNode);
     2243    }
     2244
     2245    m_elementUnderMouse = targetElement;
    22432246#if ENABLE(SVG)
    2244     m_instanceUnderMouse = instanceAssociatedWithShadowTreeElement(result);
     2247    m_instanceUnderMouse = instanceAssociatedWithShadowTreeElement(targetElement);
    22452248
    22462249    // <use> shadow tree elements may have been recloned, update node under mouse in any case
     
    22652268
    22662269                SVGElement* shadowTreeElement = instance->shadowTreeElement();
    2267                 if (!shadowTreeElement->inDocument() || m_lastNodeUnderMouse == shadowTreeElement)
     2270                if (!shadowTreeElement->inDocument() || m_lastElementUnderMouse == shadowTreeElement)
    22682271                    continue;
    22692272
    2270                 m_lastNodeUnderMouse = shadowTreeElement;
     2273                m_lastElementUnderMouse = shadowTreeElement;
    22712274                m_lastInstanceUnderMouse = instance;
    22722275                break;
     
    22782281    // Fire mouseout/mouseover if the mouse has shifted to a different node.
    22792282    if (fireMouseOverOut) {
    2280         RenderLayer* layerForLastNode = layerForNode(m_lastNodeUnderMouse.get());
    2281         RenderLayer* layerForNodeUnderMouse = layerForNode(m_nodeUnderMouse.get());
     2283        RenderLayer* layerForLastNode = layerForNode(m_lastElementUnderMouse.get());
     2284        RenderLayer* layerForNodeUnderMouse = layerForNode(m_elementUnderMouse.get());
    22822285        Page* page = m_frame.page();
    22832286
    2284         if (m_lastNodeUnderMouse && (!m_nodeUnderMouse || &m_nodeUnderMouse->document() != m_frame.document())) {
     2287        if (m_lastElementUnderMouse && (!m_elementUnderMouse || &m_elementUnderMouse->document() != m_frame.document())) {
    22852288            // The mouse has moved between frames.
    2286             if (Frame* frame = m_lastNodeUnderMouse->document().frame()) {
     2289            if (Frame* frame = m_lastElementUnderMouse->document().frame()) {
    22872290                if (FrameView* frameView = frame->view())
    22882291                    frameView->mouseExitedContentArea();
     
    22902293        } else if (page && (layerForLastNode && (!layerForNodeUnderMouse || layerForNodeUnderMouse != layerForLastNode))) {
    22912294            // The mouse has moved between layers.
    2292             if (Frame* frame = m_lastNodeUnderMouse->document().frame()) {
     2295            if (Frame* frame = m_lastElementUnderMouse->document().frame()) {
    22932296                if (FrameView* frameView = frame->view()) {
    22942297                    if (frameView->containsScrollableArea(layerForLastNode))
     
    22982301        }
    22992302
    2300         if (m_nodeUnderMouse && (!m_lastNodeUnderMouse || &m_lastNodeUnderMouse->document() != m_frame.document())) {
     2303        if (m_elementUnderMouse && (!m_lastElementUnderMouse || &m_lastElementUnderMouse->document() != m_frame.document())) {
    23012304            // The mouse has moved between frames.
    2302             if (Frame* frame = m_nodeUnderMouse->document().frame()) {
     2305            if (Frame* frame = m_elementUnderMouse->document().frame()) {
    23032306                if (FrameView* frameView = frame->view())
    23042307                    frameView->mouseEnteredContentArea();
     
    23062309        } else if (page && (layerForNodeUnderMouse && (!layerForLastNode || layerForNodeUnderMouse != layerForLastNode))) {
    23072310            // The mouse has moved between layers.
    2308             if (Frame* frame = m_nodeUnderMouse->document().frame()) {
     2311            if (Frame* frame = m_elementUnderMouse->document().frame()) {
    23092312                if (FrameView* frameView = frame->view()) {
    23102313                    if (frameView->containsScrollableArea(layerForNodeUnderMouse))
     
    23142317        }
    23152318
    2316         if (m_lastNodeUnderMouse && &m_lastNodeUnderMouse->document() != m_frame.document()) {
    2317             m_lastNodeUnderMouse = 0;
     2319        if (m_lastElementUnderMouse && &m_lastElementUnderMouse->document() != m_frame.document()) {
     2320            m_lastElementUnderMouse = nullptr;
    23182321            m_lastScrollbarUnderMouse = 0;
    23192322#if ENABLE(SVG)
     
    23222325        }
    23232326
    2324         if (m_lastNodeUnderMouse != m_nodeUnderMouse) {
     2327        if (m_lastElementUnderMouse != m_elementUnderMouse) {
    23252328            // send mouseout event to the old node
    2326             if (m_lastNodeUnderMouse)
    2327                 m_lastNodeUnderMouse->dispatchMouseEvent(mouseEvent, eventNames().mouseoutEvent, 0, m_nodeUnderMouse.get());
     2329            if (m_lastElementUnderMouse)
     2330                m_lastElementUnderMouse->dispatchMouseEvent(mouseEvent, eventNames().mouseoutEvent, 0, m_elementUnderMouse.get());
    23282331            // send mouseover event to the new node
    2329             if (m_nodeUnderMouse)
    2330                 m_nodeUnderMouse->dispatchMouseEvent(mouseEvent, eventNames().mouseoverEvent, 0, m_lastNodeUnderMouse.get());
    2331         }
    2332         m_lastNodeUnderMouse = m_nodeUnderMouse;
     2332            if (m_elementUnderMouse)
     2333                m_elementUnderMouse->dispatchMouseEvent(mouseEvent, eventNames().mouseoverEvent, 0, m_lastElementUnderMouse.get());
     2334        }
     2335        m_lastElementUnderMouse = m_elementUnderMouse;
    23332336#if ENABLE(SVG)
    2334         m_lastInstanceUnderMouse = instanceAssociatedWithShadowTreeElement(m_nodeUnderMouse.get());
     2337        m_lastInstanceUnderMouse = instanceAssociatedWithShadowTreeElement(m_elementUnderMouse.get());
    23352338#endif
    23362339    }
     
    23462349    bool swallowEvent = false;
    23472350
    2348     if (m_nodeUnderMouse)
    2349         swallowEvent = !(m_nodeUnderMouse->dispatchMouseEvent(mouseEvent, eventType, clickCount));
     2351    if (m_elementUnderMouse)
     2352        swallowEvent = !(m_elementUnderMouse->dispatchMouseEvent(mouseEvent, eventType, clickCount));
    23502353
    23512354    if (!swallowEvent && eventType == eventNames().mousedownEvent) {
     
    23642367        // from form fields before the button click is processed.
    23652368
    2366         Element* element;
    2367         if (m_nodeUnderMouse)
    2368             element = m_nodeUnderMouse->isElementNode() ? toElement(m_nodeUnderMouse.get()) : m_nodeUnderMouse->parentOrShadowHostElement();
    2369         else
    2370             element = 0;
     2369        Element* element = m_elementUnderMouse.get();
    23712370
    23722371        // Walk up the DOM tree to search for an element to focus.
  • trunk/Source/WebCore/page/EventHandler.h

    r156622 r156761  
    139139    void setMousePressed(bool pressed) { m_mousePressed = pressed; }
    140140
    141     void setCapturingMouseEventsNode(PassRefPtr<Node>); // A caller is responsible for resetting capturing node to 0.
     141    void setCapturingMouseEventsElement(PassRefPtr<Element>); // A caller is responsible for resetting capturing element to 0.
    142142
    143143#if ENABLE(DRAG_SUPPORT)
     
    449449    RenderLayer* m_resizeLayer;
    450450
    451     RefPtr<Node> m_capturingMouseEventsNode;
    452     bool m_eventHandlerWillResetCapturingMouseEventsNode;
    453    
    454     RefPtr<Node> m_nodeUnderMouse;
    455     RefPtr<Node> m_lastNodeUnderMouse;
     451    RefPtr<Element> m_capturingMouseEventsElement;
     452    bool m_eventHandlerWillResetCapturingMouseEventsElement;
     453   
     454    RefPtr<Element> m_elementUnderMouse;
     455    RefPtr<Element> m_lastElementUnderMouse;
    456456    RefPtr<Frame> m_lastMouseMoveEventSubframe;
    457457    RefPtr<Scrollbar> m_lastScrollbarUnderMouse;
  • trunk/Source/WebCore/rendering/RenderEmbeddedObject.cpp

    r156397 r156761  
    616616        m_mouseDownWasInUnavailablePluginIndicator = isInUnavailablePluginIndicator(mouseEvent);
    617617        if (m_mouseDownWasInUnavailablePluginIndicator) {
    618             frame().eventHandler().setCapturingMouseEventsNode(&element);
     618            frame().eventHandler().setCapturingMouseEventsElement(&element);
    619619            element.setIsCapturingMouseEvents(true);
    620620            setUnavailablePluginIndicatorIsPressed(true);
     
    624624    if (event->type() == eventNames().mouseupEvent && static_cast<MouseEvent*>(event)->button() == LeftButton) {
    625625        if (m_unavailablePluginIndicatorIsPressed) {
    626             frame().eventHandler().setCapturingMouseEventsNode(0);
     626            frame().eventHandler().setCapturingMouseEventsElement(nullptr);
    627627            element.setIsCapturingMouseEvents(false);
    628628            setUnavailablePluginIndicatorIsPressed(false);
  • trunk/Source/WebKit2/WebProcess/Plugins/PluginView.cpp

    r156550 r156761  
    884884        if (currentEvent->type() == WebEvent::MouseDown) {
    885885            focusPluginElement();
    886             frame()->eventHandler().setCapturingMouseEventsNode(m_pluginElement.get());
     886            frame()->eventHandler().setCapturingMouseEventsElement(m_pluginElement.get());
    887887        } else if (currentEvent->type() == WebEvent::MouseUp)
    888             frame()->eventHandler().setCapturingMouseEventsNode(0);
     888            frame()->eventHandler().setCapturingMouseEventsElement(nullptr);
    889889
    890890        didHandleEvent = m_plugin->handleMouseEvent(static_cast<const WebMouseEvent&>(*currentEvent));
Note: See TracChangeset for help on using the changeset viewer.