Home | History | Annotate | Download | only in page

Lines Matching defs:node

115 static inline void scrollAndAcceptEvent(float delta, ScrollDirection positiveDirection, ScrollDirection negativeDirection, PlatformWheelEvent& e, Node* node, Node** stopNode)
121 RenderBox* enclosingBox = node->renderer()->enclosingBox();
231 Node* innerNode = result.targetNode();
258 Node* innerNode = result.targetNode();
264 if (pos.isNotNull() && pos.deepEquivalent().node()->isDescendantOf(URLElement))
300 Node* innerNode = event.targetNode();
323 Node* innerNode = event.targetNode();
418 Node* innerNode = event.targetNode();
452 Node* targetNode = event.targetNode();
467 if (!renderer->parent() && renderer->node() == renderer->document() && renderer->document()->ownerElement())
534 void EventHandler::updateSelectionForMouseDrag(Node* targetNode, const IntPoint& localPoint)
551 // Don't modify the selection if we're not on a node.
562 if (Node* selectionBaseNode = newSelection.base().node())
631 Node *node = event.targetNode();
633 if (node && (caretBrowsing || node->isContentEditable()) && node->renderer()) {
634 VisiblePosition pos = node->renderer()->positionForPoint(event.localPoint());
766 if (Node* nodeAtPoint = hitTest.innerNode())
812 Node* n = result.innerNode();
904 Node* EventHandler::mousePressNode() const
909 void EventHandler::setMousePressNode(PassRefPtr<Node> node)
911 m_mousePressNode = node;
916 Node* node = m_frame->document()->focusedNode();
917 if (!node)
918 node = m_mousePressNode.get();
920 if (node) {
921 RenderObject* r = node->renderer();
958 Frame* EventHandler::subframeForTargetNode(Node* node)
960 if (!node)
963 RenderObject* renderer = node->renderer();
974 static bool isSubmitImage(Node* node)
976 return node && node->hasTagName(inputTag)
977 && static_cast<HTMLInputElement*>(node)->inputType() == HTMLInputElement::IMAGE;
980 // Returns true if the node's editable block is not current focused for editing
981 static bool nodeIsNotBeingEdited(Node* node, Frame* frame)
983 return frame->selection()->rootEditableElement() != node->rootEditableElement();
989 // If you're capturing mouse events for a particular node, don't treat this as a selection.
993 Node* node = event.targetNode();
994 RenderObject* renderer = node ? node->renderer() : 0;
1028 bool editable = (node && node->isContentEditable());
1046 editableLinkEnabled = nodeIsNotBeingEdited(node, m_frame) || event.event().shiftKey();
1055 if ((event.isOverLink() || isSubmitImage(node)) && (!editable || editableLinkEnabled))
1064 if ((editable || (renderer && renderer->isText() && node->canStartSelection())) && !inResizer && !scrollbar)
1252 // Refetch the event target node if it currently is the shadow node inside an <input> element.
1255 // event target node can't still be the shadow node.
1399 // node to be detached from its FrameView, in which case the event should not be passed.
1493 bool EventHandler::dispatchDragEvent(const AtomicString& eventType, Node* dragTarget, const PlatformMouseEvent& event, Clipboard* clipboard)
1515 bool EventHandler::canHandleDragAndDropForTarget(DragAndDropHandleType type, Node* target, const PlatformMouseEvent& event, Clipboard* clipboard, bool* accepted)
1555 Node* newTarget = mev.targetNode();
1630 void EventHandler::setCapturingMouseEventsNode(PassRefPtr<Node> n)
1644 static inline SVGElementInstance* instanceAssociatedWithShadowTreeElement(Node* referenceNode)
1649 Node* shadowTreeElement = referenceNode->shadowTreeRootNode();
1653 Node* shadowTreeParentElement = shadowTreeElement->shadowParentNode();
1662 void EventHandler::updateMouseEventTargetNode(Node* targetNode, const PlatformMouseEvent& mouseEvent, bool fireMouseOverOut)
1664 Node* result = targetNode;
1666 // If we're capturing, we always go right to that node.
1670 // If the target node is a text node, dispatch on the parent node - rdar://4196646
1680 // <use> shadow tree elements may have been recloned, update node under mouse in any case
1712 // Fire mouseout/mouseover if the mouse has shifted to a different node.
1723 // send mouseout event to the old node
1726 // send mouseover event to the new node
1737 bool EventHandler::dispatchMouseEvent(const AtomicString& eventType, Node* targetNode, bool /*cancelable*/, int clickCount, const PlatformMouseEvent& mouseEvent, bool setUnder)
1753 // Blur current focus node when a link/button is clicked; this
1756 Node* node = m_nodeUnderMouse.get();
1757 RenderObject* renderer = node ? node->renderer() : 0;
1759 // Walk up the render tree to search for a node to focus.
1762 node = renderer->node();
1763 if (node && node->isFocusable()) {
1765 // node on mouse down if it's selected and inside a focused node. It will be
1769 Node* n = node->isShadowNode() ? node->shadowParentNode() : node
1784 if (node && node->isMouseFocusable()) {
1785 if (!page->focusController()->setFocusedNode(node, m_frame))
1787 } else if (!node || !node->focused()) {
1820 Node* node;
1835 node = m_latchedWheelEventNode.get();
1843 node = result.innerNode();
1850 if (node) {
1852 RenderObject* target = node->renderer();
1862 node = node->shadowAncestorNode();
1863 node->dispatchWheelEvent(e);
1867 // If we don't have a renderer, send the wheel event to the first node we find with a renderer.
1869 while (node && !node->renderer())
1870 node = node->parent();
1872 if (node && node->renderer()) {
1875 Node* stopNode = m_previousWheelScrolledNode.get();
1876 scrollAndAcceptEvent(e.deltaX(), ScrollLeft, ScrollRight, e, node, &stopNode);
1877 scrollAndAcceptEvent(e.deltaY(), ScrollUp, ScrollDown, e, node, &stopNode);
1934 bool EventHandler::canMouseDownStartSelect(Node* node)
1936 if (!node || !node->renderer())
1940 if (!node->canStartSelection())
1943 for (RenderObject* curr = node->renderer(); curr; curr = curr->parent()) {
1944 if (Node* node = curr->node())
1945 return node->dispatchEvent(Event::create(eventNames().selectstartEvent, true, true));
1952 bool EventHandler::canMouseDragExtendSelect(Node* node)
1954 if (!node || !node->renderer())
1957 for (RenderObject* curr = node->renderer(); curr; curr = curr->parent()) {
1958 if (Node* node = curr->node())
1959 return node->dispatchEvent(Event::create(eventNames().selectstartEvent, true, true));
1994 static Node* eventTargetNodeForDocument(Document* doc)
1998 Node* node = doc->focusedNode();
2001 if (!node && doc->frame() && doc->frame()->view())
2002 node = android::WebViewCore::getWebViewCore(doc->frame()->view())
2006 if (!node && doc->isHTMLDocument())
2007 node = doc->body();
2008 if (!node)
2009 node = doc->documentElement();
2010 return node;
2054 RefPtr<Node> node = eventTargetNodeForDocument(m_frame->document());
2055 if (!node)
2075 return !node->dispatchKeyEvent(initialKeyEvent);
2086 keydown->setTarget(node);
2089 node->dispatchEvent(keydown, ec);
2105 keydown->setTarget(node);
2109 node->dispatchEvent(keydown, ec);
2114 // Focus may have changed during keydown handling, so refetch node.
2115 // But if we are dispatching a fake backward compatibility keypress, then we pretend that the keypress happened on the original node.
2117 node = eventTargetNodeForDocument(m_frame->document());
2118 if (!node)
2127 keypress->setTarget(node);
2133 node->dispatchEvent(keypress, ec);
2220 bool EventHandler::shouldDragAutoNode(Node* node, const IntPoint& point) const
2222 if (!node || !m_frame->view())
2275 Node* node = result.innerNode();
2276 if (node && node->renderer())
2277 dragState().m_dragSrc = node->renderer()->draggableNode(dragState().m_dragSrcMayBeDHTML, dragState().m_dragSrcMayBeUA,
2286 node = result.URLElement();
2287 dragState().m_dragSrcIsLink = node && node->isLink();
2289 node = result.innerNonSharedNode();
2290 dragState().m_dragSrcIsImage = node && node->renderer() && node->renderer()->isImage();
2507 if (Node* node = d->focusedNode()) {
2508 if (RenderObject* r = node->renderer()) {
2583 Node* target = result.innerNode();