Changeset 156390 in webkit
- Timestamp:
- Sep 25, 2013 6:02:20 AM (11 years ago)
- Location:
- trunk/Source/WebCore
- Files:
-
- 2 deleted
- 10 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/CMakeLists.txt
r156381 r156390 1169 1169 dom/EventListenerMap.cpp 1170 1170 dom/EventNames.cpp 1171 dom/EventPathWalker.cpp1172 1171 dom/EventRetargeter.cpp 1173 1172 dom/EventTarget.cpp -
trunk/Source/WebCore/ChangeLog
r156387 r156390 1 2013-09-25 Andreas Kling <akling@apple.com> 2 3 Remove EventPathWalker. 4 <https://webkit.org/b/121890> 5 6 Reviewed by Antti Koivisto. 7 8 Purge some more leftover Shadow DOM code. 9 10 * dom/EventPathWalker.cpp: 11 * dom/EventPathWalker.h: 12 13 Removed. 14 15 * dom/EventRetargeter.cpp: 16 (WebCore::nodeOrHostIfPseudoElement): 17 (WebCore::EventRetargeter::calculateEventPath): 18 (WebCore::EventRetargeter::buildRelatedNodeMap): 19 20 If starting at a pseudo element, e.g for events originating from 21 a transition on :before/:after, retarget to the pseudo element's 22 host as appropriate. This was the only real "feature" we were 23 using in EventPathWalker. 24 25 * page/EventHandler.cpp: 26 (WebCore::EventHandler::handleMouseDraggedEvent): 27 (WebCore::EventHandler::updateDragAndDrop): 28 (WebCore::EventHandler::updateMouseEventTargetNode): 29 (WebCore::EventHandler::handleWheelEvent): 30 (WebCore::EventHandler::handleTouchEvent): 31 32 Replace use of EventPathWalker with parentOrShadowHostElement() 33 parent chain climbing. 34 1 35 2013-09-25 Gurpreet Kaur <k.gurpreet@samsung.com> 2 36 -
trunk/Source/WebCore/GNUmakefile.list.am
r156381 r156390 2928 2928 Source/WebCore/dom/EventNames.cpp \ 2929 2929 Source/WebCore/dom/EventNames.h \ 2930 Source/WebCore/dom/EventPathWalker.cpp \2931 Source/WebCore/dom/EventPathWalker.h \2932 2930 Source/WebCore/dom/EventRetargeter.cpp \ 2933 2931 Source/WebCore/dom/EventRetargeter.h \ -
trunk/Source/WebCore/Target.pri
r156381 r156390 410 410 dom/EventListenerMap.cpp \ 411 411 dom/EventNames.cpp \ 412 dom/EventPathWalker.cpp \413 412 dom/EventRetargeter.cpp \ 414 413 dom/EventTarget.cpp \ … … 1615 1614 dom/EventListenerMap.h \ 1616 1615 dom/EventNames.h \ 1617 dom/EventPathWalker.h \1618 1616 dom/EventQueue.h \ 1619 1617 dom/EventSender.h \ -
trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj
r156381 r156390 1515 1515 4A9CC82016BF9BB400EC645A /* InspectorCSSOMWrappers.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4A9CC81E16BF9BB400EC645A /* InspectorCSSOMWrappers.cpp */; }; 1516 1516 4A9CC82116BF9BB400EC645A /* InspectorCSSOMWrappers.h in Headers */ = {isa = PBXBuildFile; fileRef = 4A9CC81F16BF9BB400EC645A /* InspectorCSSOMWrappers.h */; }; 1517 4AAAB4C416D379B5001DA41B /* EventPathWalker.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4AAAB4C216D379B5001DA41B /* EventPathWalker.cpp */; };1518 4AAAB4C516D379B5001DA41B /* EventPathWalker.h in Headers */ = {isa = PBXBuildFile; fileRef = 4AAAB4C316D379B5001DA41B /* EventPathWalker.h */; };1519 1517 4ACBC0BE12713CBD0094F9B2 /* ClassList.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4ACBC0BC12713CBD0094F9B2 /* ClassList.cpp */; }; 1520 1518 4ACBC0BF12713CBD0094F9B2 /* ClassList.h in Headers */ = {isa = PBXBuildFile; fileRef = 4ACBC0BD12713CBD0094F9B2 /* ClassList.h */; }; … … 8099 8097 4A9CC81E16BF9BB400EC645A /* InspectorCSSOMWrappers.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = InspectorCSSOMWrappers.cpp; sourceTree = "<group>"; }; 8100 8098 4A9CC81F16BF9BB400EC645A /* InspectorCSSOMWrappers.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InspectorCSSOMWrappers.h; sourceTree = "<group>"; }; 8101 4AAAB4C216D379B5001DA41B /* EventPathWalker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = EventPathWalker.cpp; sourceTree = "<group>"; };8102 4AAAB4C316D379B5001DA41B /* EventPathWalker.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EventPathWalker.h; sourceTree = "<group>"; };8103 8099 4ACBC0BC12713CBD0094F9B2 /* ClassList.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ClassList.cpp; sourceTree = "<group>"; }; 8104 8100 4ACBC0BD12713CBD0094F9B2 /* ClassList.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ClassList.h; sourceTree = "<group>"; }; … … 20960 20956 939885C208B7E3D100E707C4 /* EventNames.h */, 20961 20957 BC9A6142146859D9006057FD /* EventNames.in */, 20962 4AAAB4C216D379B5001DA41B /* EventPathWalker.cpp */,20963 4AAAB4C316D379B5001DA41B /* EventPathWalker.h */,20964 20958 8F6756191288B17B0047ACA3 /* EventQueue.h */, 20965 20959 4A5CB1C316C3A5FD00AB2886 /* EventRetargeter.cpp */, … … 22433 22427 1CA19E160DC255CA0065A994 /* EventLoop.h in Headers */, 22434 22428 939885C408B7E3D100E707C4 /* EventNames.h in Headers */, 22435 4AAAB4C516D379B5001DA41B /* EventPathWalker.h in Headers */,22436 22429 8F67561B1288B17B0047ACA3 /* EventQueue.h in Headers */, 22437 22430 4A5CB1C616C3A5FD00AB2886 /* EventRetargeter.h in Headers */, … … 25729 25722 1CA19E050DC255950065A994 /* EventLoopMac.mm in Sources */, 25730 25723 939885C308B7E3D100E707C4 /* EventNames.cpp in Sources */, 25731 4AAAB4C416D379B5001DA41B /* EventPathWalker.cpp in Sources */,25732 25724 07969DB917D14151007FF842 /* JSRTCPeerConnection.cpp in Sources */, 25733 25725 4A5CB1C516C3A5FD00AB2886 /* EventRetargeter.cpp in Sources */, -
trunk/Source/WebCore/dom/DOMAllInOne.cpp
r155938 r156390 78 78 #include "EventListenerMap.cpp" 79 79 #include "EventNames.cpp" 80 #include "EventPathWalker.cpp"81 80 #include "EventRetargeter.cpp" 82 81 #include "EventTarget.cpp" -
trunk/Source/WebCore/dom/EventDispatcher.cpp
r154877 r156390 30 30 #include "EventContext.h" 31 31 #include "EventDispatchMediator.h" 32 #include "EventPathWalker.h"33 32 #include "EventRetargeter.h" 34 33 #include "FrameView.h" -
trunk/Source/WebCore/dom/EventRetargeter.cpp
r154877 r156390 23 23 #include "ContainerNode.h" 24 24 #include "EventContext.h" 25 #include "EventPathWalker.h"26 25 #include "FocusEvent.h" 27 26 #include "MouseEvent.h" … … 76 75 } 77 76 78 void EventRetargeter::calculateEventPath(Node* node, Event* event, EventPath& eventPath) 79 { 80 bool inDocument = node->inDocument(); 81 bool isSVGElement = node->isSVGElement(); 77 static Node* nodeOrHostIfPseudoElement(Node* node) 78 { 79 return node->isPseudoElement() ? toPseudoElement(node)->hostElement() : node; 80 } 81 82 void EventRetargeter::calculateEventPath(Node* targetNode, Event* event, EventPath& eventPath) 83 { 84 bool inDocument = targetNode->inDocument(); 85 bool isSVGElement = targetNode->isSVGElement(); 82 86 bool isMouseOrFocusEvent = event->isMouseEvent() || event->isFocusEvent(); 83 87 #if ENABLE(TOUCH_EVENTS) … … 85 89 #endif 86 90 Vector<EventTarget*, 32> targetStack; 87 for (EventPathWalker walker(node); walker.node(); walker.moveToParent()) { 88 Node* node = walker.node();91 92 for (Node* node = nodeOrHostIfPseudoElement(targetNode); node; node = node->parentOrShadowHostNode()) { 89 93 if (targetStack.isEmpty()) 90 94 targetStack.append(eventTargetRespectingTargetRules(node)); 91 else if (walker.isVisitingInsertionPointInReprojection())92 targetStack.append(targetStack.last());93 95 if (isMouseOrFocusEvent) 94 96 eventPath.append(adoptPtr(new MouseOrFocusEventContext(node, eventTargetRespectingTargetRules(node), targetStack.last()))); … … 220 222 Vector<Node*, 32> relatedNodeStack; 221 223 TreeScope* lastTreeScope = 0; 222 for (EventPathWalker walker(relatedNode); walker.node(); walker.moveToParent()) { 223 Node* node = walker.node(); 224 for (Node* node = nodeOrHostIfPseudoElement(const_cast<Node*>(relatedNode)); node; node = node->parentOrShadowHostNode()) { 224 225 if (relatedNodeStack.isEmpty()) 225 226 relatedNodeStack.append(node); 226 else if (walker.isVisitingInsertionPointInReprojection())227 relatedNodeStack.append(relatedNodeStack.last());228 227 TreeScope* scope = node->treeScope(); 229 228 // Skips adding a node to the map if treeScope does not change. Just for the performance optimization. -
trunk/Source/WebCore/html/HTMLLIElement.cpp
r155795 r156390 27 27 #include "CSSPropertyNames.h" 28 28 #include "CSSValueKeywords.h" 29 #include "EventPathWalker.h"30 29 #include "HTMLNames.h" 31 30 #include "RenderListItem.h" -
trunk/Source/WebCore/page/EventHandler.cpp
r156372 r156390 43 43 #include "EditorClient.h" 44 44 #include "EventNames.h" 45 #include "EventPathWalker.h"46 45 #include "ExceptionCodePlaceholder.h" 47 46 #include "FileList.h" … … 734 733 RenderObject* renderer = targetNode->renderer(); 735 734 if (!renderer) { 736 Node* parent = EventPathWalker::parent(targetNode);735 Element* parent = targetNode->parentOrShadowHostElement(); 737 736 if (!parent) 738 737 return false; … … 2096 2095 RefPtr<Node> newTarget = mev.targetNode(); 2097 2096 if (newTarget && newTarget->isTextNode()) 2098 newTarget = EventPathWalker::parent(newTarget.get());2097 newTarget = newTarget->parentOrShadowHostElement(); 2099 2098 2100 2099 m_autoscrollController->updateDragAndDrop(newTarget.get(), event.position(), event.timestamp()); … … 2233 2232 // If the target node is a text node, dispatch on the parent node - rdar://4196646 2234 2233 if (result && result->isTextNode()) 2235 result = EventPathWalker::parent(result);2234 result = result->parentOrShadowHostElement(); 2236 2235 } 2237 2236 m_nodeUnderMouse = result; … … 2480 2479 bool useLatchedWheelEventNode = e.useLatchedEventNode(); 2481 2480 2482 // FIXME: Is the following code different from just calling innerElement? 2483 Node* node = result.innerNode(); 2484 // Wheel events should not dispatch to text nodes. 2485 if (node && node->isTextNode()) 2486 node = EventPathWalker::parent(node); 2481 // FIXME: This code should use Element* instead of Node*. 2482 Node* node = result.innerElement(); 2487 2483 2488 2484 bool isOverWidget; … … 4025 4021 continue; 4026 4022 4027 // FIXME: Is the following code different from just calling innerElement?4028 Node* node = result.inner Node();4023 // FIXME: This code should use Element* instead of Node*. 4024 Node* node = result.innerElement(); 4029 4025 ASSERT(node); 4030 // Touch events should not go to text nodes4031 if (node->isTextNode())4032 node = EventPathWalker::parent(node);4033 4026 4034 4027 if (InspectorInstrumentation::handleTouchEvent(m_frame.page(), node))
Note: See TracChangeset
for help on using the changeset viewer.