Changeset 157203 in webkit
- Timestamp:
- Oct 9, 2013 6:44:42 PM (10 years ago)
- Location:
- trunk/Source/WebCore
- Files:
-
- 2 deleted
- 20 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/CMakeLists.txt
r157068 r157203 1128 1128 dom/Event.cpp 1129 1129 dom/EventContext.cpp 1130 dom/EventDispatchMediator.cpp1131 1130 dom/EventDispatcher.cpp 1132 1131 dom/EventException.cpp -
trunk/Source/WebCore/ChangeLog
r157202 r157203 1 2013-10-09 Ryosuke Niwa <rniwa@webkit.org> 2 3 EventDispatchMediator is goner 4 https://bugs.webkit.org/show_bug.cgi?id=122581 5 6 Reviewed by Antti Koivisto. 7 8 Killed the death. 9 10 * CMakeLists.txt: 11 * GNUmakefile.list.am: 12 * WebCore.vcxproj/WebCore.vcxproj: 13 * WebCore.vcxproj/WebCore.vcxproj.filters: 14 * WebCore.xcodeproj/project.pbxproj: 15 * dom/DOMAllInOne.cpp: 16 * dom/Element.cpp: 17 (WebCore::Element::dispatchWheelEvent): 18 (WebCore::Element::dispatchKeyEvent): 19 (WebCore::Element::dispatchFocusEvent): 20 (WebCore::Element::dispatchBlurEvent): 21 * dom/EventDispatchMediator.cpp: Removed. 22 * dom/EventDispatchMediator.h: Removed. 23 * dom/EventDispatcher.cpp: 24 (WebCore::EventDispatcher::dispatchEvent): 25 (WebCore::EventDispatcher::dispatchScopedEvent): 26 * dom/EventDispatcher.h: 27 * dom/KeyboardEvent.h: 28 * dom/MouseEvent.h: 29 * dom/Node.cpp: 30 (WebCore::Node::dispatchScopedEvent): 31 (WebCore::Node::dispatchEvent): 32 (WebCore::Node::dispatchGestureEvent): 33 (WebCore::Node::dispatchTouchEvent): 34 (WebCore::Node::dispatchUIRequestEvent): 35 * dom/Node.h: 36 * dom/ScopedEventQueue.cpp: 37 (WebCore::ScopedEventQueue::~ScopedEventQueue): 38 (WebCore::ScopedEventQueue::enqueueEvent): 39 (WebCore::ScopedEventQueue::dispatchAllEvents): 40 (WebCore::ScopedEventQueue::dispatchEvent): 41 * dom/ScopedEventQueue.h: 42 * dom/TouchEvent.cpp: 43 * dom/TouchEvent.h: 44 * dom/UIEvent.h: 45 * dom/WheelEvent.h: 46 1 47 2013-10-09 Andreas Kling <akling@apple.com> 2 48 -
trunk/Source/WebCore/GNUmakefile.list.am
r157110 r157203 2822 2822 Source/WebCore/dom/EventContext.cpp \ 2823 2823 Source/WebCore/dom/EventContext.h \ 2824 Source/WebCore/dom/EventDispatchMediator.cpp \2825 Source/WebCore/dom/EventDispatchMediator.h \2826 2824 Source/WebCore/dom/EventDispatcher.cpp \ 2827 2825 Source/WebCore/dom/EventDispatcher.h \ -
trunk/Source/WebCore/WebCore.vcxproj/WebCore.vcxproj
r157147 r157203 12358 12358 </ClCompile> 12359 12359 <ClCompile Include="..\dom\EventDispatcher.cpp"> 12360 <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>12361 <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>12362 <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug_WinCairo|Win32'">true</ExcludedFromBuild>12363 <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug_WinCairo|x64'">true</ExcludedFromBuild>12364 <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='DebugSuffix|Win32'">true</ExcludedFromBuild>12365 <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='DebugSuffix|x64'">true</ExcludedFromBuild>12366 <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>12367 <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>12368 <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release_WinCairo|Win32'">true</ExcludedFromBuild>12369 <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release_WinCairo|x64'">true</ExcludedFromBuild>12370 <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Production|Win32'">true</ExcludedFromBuild>12371 <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Production|x64'">true</ExcludedFromBuild>12372 </ClCompile>12373 <ClCompile Include="..\dom\EventDispatchMediator.cpp">12374 12360 <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> 12375 12361 <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild> … … 19751 19737 <ClInclude Include="..\dom\EventContext.h" /> 19752 19738 <ClInclude Include="..\dom\EventDispatcher.h" /> 19753 <ClInclude Include="..\dom\EventDispatchMediator.h" />19754 19739 <ClInclude Include="..\dom\EventException.h" /> 19755 19740 <ClInclude Include="..\dom\EventListener.h" /> -
trunk/Source/WebCore/WebCore.vcxproj/WebCore.vcxproj.filters
r156991 r157203 3181 3181 <Filter>dom</Filter> 3182 3182 </ClCompile> 3183 <ClCompile Include="..\dom\EventDispatchMediator.cpp">3184 <Filter>dom</Filter>3185 </ClCompile>3186 3183 <ClCompile Include="..\dom\EventException.cpp"> 3187 3184 <Filter>dom</Filter> … … 10031 10028 </ClInclude> 10032 10029 <ClInclude Include="..\dom\EventDispatcher.h"> 10033 <Filter>dom</Filter>10034 </ClInclude>10035 <ClInclude Include="..\dom\EventDispatchMediator.h">10036 10030 <Filter>dom</Filter> 10037 10031 </ClInclude> -
trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj
r157200 r157203 1562 1562 4AD0173C127E82860015035F /* JSHTMLOutputElement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4AD0173A127E82860015035F /* JSHTMLOutputElement.cpp */; }; 1563 1563 4AD0173D127E82860015035F /* JSHTMLOutputElement.h in Headers */ = {isa = PBXBuildFile; fileRef = 4AD0173B127E82860015035F /* JSHTMLOutputElement.h */; }; 1564 4AF1AD3E13FD23A400AA9590 /* EventDispatchMediator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4AF1AD3C13FD23A400AA9590 /* EventDispatchMediator.cpp */; };1565 4AF1AD3F13FD23A400AA9590 /* EventDispatchMediator.h in Headers */ = {isa = PBXBuildFile; fileRef = 4AF1AD3D13FD23A400AA9590 /* EventDispatchMediator.h */; settings = {ATTRIBUTES = (Private, ); }; };1566 1564 4B2708C70AF19EE40065127F /* Pasteboard.h in Headers */ = {isa = PBXBuildFile; fileRef = 4B2708C50AF19EE40065127F /* Pasteboard.h */; settings = {ATTRIBUTES = (Private, ); }; }; 1567 1565 4B2709830AF2E5E00065127F /* PasteboardMac.mm in Sources */ = {isa = PBXBuildFile; fileRef = 4B2709810AF2E5E00065127F /* PasteboardMac.mm */; }; … … 8120 8118 4AD0173A127E82860015035F /* JSHTMLOutputElement.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSHTMLOutputElement.cpp; sourceTree = "<group>"; }; 8121 8119 4AD0173B127E82860015035F /* JSHTMLOutputElement.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSHTMLOutputElement.h; sourceTree = "<group>"; }; 8122 4AF1AD3C13FD23A400AA9590 /* EventDispatchMediator.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = EventDispatchMediator.cpp; sourceTree = "<group>"; };8123 4AF1AD3D13FD23A400AA9590 /* EventDispatchMediator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EventDispatchMediator.h; sourceTree = "<group>"; };8124 8120 4B2708C50AF19EE40065127F /* Pasteboard.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Pasteboard.h; sourceTree = "<group>"; }; 8125 8121 4B2709810AF2E5E00065127F /* PasteboardMac.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = PasteboardMac.mm; sourceTree = "<group>"; }; … … 20836 20832 418A06CF133C04D500CD379C /* EventDispatcher.cpp */, 20837 20833 418A06CE133C04D500CD379C /* EventDispatcher.h */, 20838 4AF1AD3C13FD23A400AA9590 /* EventDispatchMediator.cpp */,20839 4AF1AD3D13FD23A400AA9590 /* EventDispatchMediator.h */,20840 20834 978D07BB145A0F560096908D /* EventException.cpp */, 20841 20835 BC60D9090D2A17CE00B9918F /* EventException.h */, … … 22311 22305 CDAB6D2917C7DE6C00C60B34 /* MediaControlsHost.h in Headers */, 22312 22306 418A06D0133C04D500CD379C /* EventDispatcher.h in Headers */, 22313 4AF1AD3F13FD23A400AA9590 /* EventDispatchMediator.h in Headers */,22314 22307 BC60D90C0D2A17CE00B9918F /* EventException.h in Headers */, 22315 22308 97665013144FAA4200F6BB51 /* EventFactory.h in Headers */, … … 25584 25577 4138D3361244054800323D33 /* EventContext.cpp in Sources */, 25585 25578 418A06D1133C04D500CD379C /* EventDispatcher.cpp in Sources */, 25586 4AF1AD3E13FD23A400AA9590 /* EventDispatchMediator.cpp in Sources */,25587 25579 07969DAB17D14151007FF842 /* JSRTCDataChannel.cpp in Sources */, 25588 25580 978D07BC145A0F560096908D /* EventException.cpp in Sources */, -
trunk/Source/WebCore/dom/DOMAllInOne.cpp
r156390 r157203 73 73 #include "Event.cpp" 74 74 #include "EventContext.cpp" 75 #include "EventDispatchMediator.cpp"76 75 #include "EventDispatcher.cpp" 77 76 #include "EventException.cpp" -
trunk/Source/WebCore/dom/Element.cpp
r157196 r157203 297 297 event.timestamp()); 298 298 299 return EventDispatcher::dispatchEvent(this, EventDispatchMediator::create(wheelEvent)) && !wheelEvent->defaultHandled();299 return EventDispatcher::dispatchEvent(this, wheelEvent) && !wheelEvent->defaultHandled(); 300 300 } 301 301 … … 303 303 { 304 304 RefPtr<KeyboardEvent> event = KeyboardEvent::create(platformEvent, document().defaultView()); 305 return EventDispatcher::dispatchEvent(this, EventDispatchMediator::create(event)) && !event->defaultHandled();305 return EventDispatcher::dispatchEvent(this, event) && !event->defaultHandled(); 306 306 } 307 307 … … 2088 2088 2089 2089 RefPtr<FocusEvent> event = FocusEvent::create(eventNames().focusEvent, false, false, document().defaultView(), 0, oldFocusedElement); 2090 EventDispatcher::dispatchEvent(this, EventDispatchMediator::create(event.release()));2090 EventDispatcher::dispatchEvent(this, event.release()); 2091 2091 } 2092 2092 … … 2097 2097 2098 2098 RefPtr<FocusEvent> event = FocusEvent::create(eventNames().blurEvent, false, false, document().defaultView(), 0, newFocusedElement); 2099 EventDispatcher::dispatchEvent(this, EventDispatchMediator::create(event.release()));2099 EventDispatcher::dispatchEvent(this, event.release()); 2100 2100 } 2101 2101 -
trunk/Source/WebCore/dom/EventDispatcher.cpp
r157177 r157203 29 29 #include "ContainerNode.h" 30 30 #include "EventContext.h" 31 #include "EventDispatchMediator.h"32 31 #include "EventRetargeter.h" 33 32 #include "FocusEvent.h" … … 45 44 namespace WebCore { 46 45 47 bool EventDispatcher::dispatchEvent(Node* node, PassRefPtr<Event DispatchMediator> mediator)46 bool EventDispatcher::dispatchEvent(Node* node, PassRefPtr<Event> event) 48 47 { 49 48 ASSERT(!NoEventDispatchAssertion::isEventDispatchForbidden()); 50 Event* event = mediator->event();51 49 if (!event) 52 50 return true; 53 51 EventDispatcher dispatcher(node, event); 54 return mediator->mediateAndDispatchEvent(&dispatcher);52 return dispatcher.dispatch(); 55 53 } 56 54 … … 69 67 } 70 68 71 void EventDispatcher::dispatchScopedEvent(Node& node, PassRefPtr<Event DispatchMediator> mediator)69 void EventDispatcher::dispatchScopedEvent(Node& node, PassRefPtr<Event> event) 72 70 { 73 71 // We need to set the target here because it can go away by the time we actually fire the event. 74 mediator->event()->setTarget(&EventRetargeter::eventTargetRespectingTargetRules(node));75 ScopedEventQueue::instance()->enqueueEvent DispatchMediator(mediator);72 event->setTarget(&EventRetargeter::eventTargetRespectingTargetRules(node)); 73 ScopedEventQueue::instance()->enqueueEvent(event); 76 74 } 77 75 -
trunk/Source/WebCore/dom/EventDispatcher.h
r157177 r157203 37 37 38 38 class Event; 39 class EventDispatchMediator;40 39 class EventTarget; 41 40 class FrameView; … … 78 77 class EventDispatcher { 79 78 public: 80 static bool dispatchEvent(Node*, PassRefPtr<Event DispatchMediator>);81 static void dispatchScopedEvent(Node&, PassRefPtr<Event DispatchMediator>);79 static bool dispatchEvent(Node*, PassRefPtr<Event>); 80 static void dispatchScopedEvent(Node&, PassRefPtr<Event>); 82 81 83 82 static void dispatchSimulatedClick(Element*, Event* underlyingEvent, SimulatedClickMouseEventOptions, SimulatedClickVisualOptions); -
trunk/Source/WebCore/dom/KeyboardEvent.h
r157195 r157203 25 25 #define KeyboardEvent_h 26 26 27 #include "EventDispatchMediator.h"28 27 #include "UIEventWithKeyState.h" 29 28 #include <wtf/Vector.h> -
trunk/Source/WebCore/dom/MouseEvent.h
r157196 r157203 25 25 #define MouseEvent_h 26 26 27 #include "EventDispatchMediator.h"28 27 #include "MouseRelatedEvent.h" 29 28 -
trunk/Source/WebCore/dom/Node.cpp
r157196 r157203 53 53 #include "Event.h" 54 54 #include "EventContext.h" 55 #include "EventDispatchMediator.h"56 55 #include "EventDispatcher.h" 57 56 #include "EventException.h" … … 2070 2069 void Node::dispatchScopedEvent(PassRefPtr<Event> event) 2071 2070 { 2072 EventDispatcher::dispatchScopedEvent(*this, EventDispatchMediator::create(event));2071 EventDispatcher::dispatchScopedEvent(*this, event); 2073 2072 } 2074 2073 … … 2079 2078 return dispatchTouchEvent(adoptRef(toTouchEvent(event.leakRef()))); 2080 2079 #endif 2081 return EventDispatcher::dispatchEvent(this, EventDispatchMediator::create(event));2080 return EventDispatcher::dispatchEvent(this, event); 2082 2081 } 2083 2082 … … 2114 2113 return true; 2115 2114 2116 EventDispatcher::dispatchEvent(this, EventDispatchMediator::create(gestureEvent));2115 EventDispatcher::dispatchEvent(this, gestureEvent.release()); 2117 2116 2118 2117 ASSERT(!gestureEvent->defaultPrevented()); … … 2124 2123 bool Node::dispatchTouchEvent(PassRefPtr<TouchEvent> event) 2125 2124 { 2126 return EventDispatcher::dispatchEvent(this, EventDispatchMediator::create(event));2125 return EventDispatcher::dispatchEvent(this, event); 2127 2126 } 2128 2127 #endif … … 2131 2130 bool Node::dispatchUIRequestEvent(PassRefPtr<UIRequestEvent> event) 2132 2131 { 2133 EventDispatcher::dispatchEvent(this, EventDispatchMediator::create(event));2132 EventDispatcher::dispatchEvent(this, event); 2134 2133 return event->defaultHandled() || event->defaultPrevented(); 2135 2134 } -
trunk/Source/WebCore/dom/Node.h
r157177 r157203 58 58 class Event; 59 59 class EventContext; 60 class EventDispatchMediator;61 60 class EventListener; 62 61 class FloatPoint; -
trunk/Source/WebCore/dom/ScopedEventQueue.cpp
r95901 r157203 33 33 34 34 #include "Event.h" 35 #include "EventDispatchMediator.h"36 35 #include "EventDispatcher.h" 37 36 #include "EventTarget.h" … … 51 50 { 52 51 ASSERT(!m_scopingLevel); 53 ASSERT(!m_queuedEvent DispatchMediators.size());52 ASSERT(!m_queuedEvents.size()); 54 53 } 55 54 … … 61 60 } 62 61 63 void ScopedEventQueue::enqueueEvent DispatchMediator(PassRefPtr<EventDispatchMediator> mediator)62 void ScopedEventQueue::enqueueEvent(PassRefPtr<Event> event) 64 63 { 65 64 if (m_scopingLevel) 66 m_queuedEvent DispatchMediators.append(mediator);65 m_queuedEvents.append(event); 67 66 else 68 dispatchEvent( mediator);67 dispatchEvent(event); 69 68 } 70 69 71 70 void ScopedEventQueue::dispatchAllEvents() 72 71 { 73 Vector<RefPtr<Event DispatchMediator> > queuedEventDispatchMediators;74 queuedEvent DispatchMediators.swap(m_queuedEventDispatchMediators);72 Vector<RefPtr<Event>> queuedEvents; 73 queuedEvents.swap(m_queuedEvents); 75 74 76 for (size_t i = 0; i < queuedEvent DispatchMediators.size(); i++)77 dispatchEvent(queuedEvent DispatchMediators[i].release());75 for (size_t i = 0; i < queuedEvents.size(); i++) 76 dispatchEvent(queuedEvents[i].release()); 78 77 } 79 78 80 void ScopedEventQueue::dispatchEvent(PassRefPtr<Event DispatchMediator> mediator) const79 void ScopedEventQueue::dispatchEvent(PassRefPtr<Event> event) const 81 80 { 82 ASSERT(mediator->event()->target()); 83 Node* node = mediator->event()->target()->toNode(); 84 EventDispatcher::dispatchEvent(node, mediator); 81 ASSERT(event->target()); 82 EventDispatcher::dispatchEvent(event->target()->toNode(), event); 85 83 } 86 84 -
trunk/Source/WebCore/dom/ScopedEventQueue.h
r128572 r157203 39 39 namespace WebCore { 40 40 41 class Event DispatchMediator;41 class Event; 42 42 43 43 class ScopedEventQueue { … … 46 46 ~ScopedEventQueue(); 47 47 48 void enqueueEvent DispatchMediator(PassRefPtr<EventDispatchMediator>);48 void enqueueEvent(PassRefPtr<Event>); 49 49 void dispatchAllEvents(); 50 50 static ScopedEventQueue* instance(); … … 56 56 ScopedEventQueue(); 57 57 static void initialize(); 58 void dispatchEvent(PassRefPtr<Event DispatchMediator>) const;58 void dispatchEvent(PassRefPtr<Event>) const; 59 59 60 Vector<RefPtr<Event DispatchMediator> > m_queuedEventDispatchMediators;60 Vector<RefPtr<Event> > m_queuedEvents; 61 61 unsigned m_scopingLevel; 62 62 -
trunk/Source/WebCore/dom/TouchEvent.cpp
r157136 r157203 103 103 } 104 104 105 PassRefPtr<TouchEventDispatchMediator> TouchEventDispatchMediator::create(PassRefPtr<TouchEvent> touchEvent)106 {107 return adoptRef(new TouchEventDispatchMediator(touchEvent));108 }109 110 TouchEventDispatchMediator::TouchEventDispatchMediator(PassRefPtr<TouchEvent> touchEvent)111 : EventDispatchMediator(touchEvent)112 {113 }114 115 TouchEvent* TouchEventDispatchMediator::event() const116 {117 return static_cast<TouchEvent*>(EventDispatchMediator::event());118 }119 120 bool TouchEventDispatchMediator::mediateAndDispatchEvent(EventDispatcher* dispatcher) const121 {122 EventRetargeter::adjustForTouchEvent(dispatcher->node(), *event(), dispatcher->eventPath());123 return dispatcher->dispatch();124 }125 126 105 } // namespace WebCore 127 106 -
trunk/Source/WebCore/dom/TouchEvent.h
r157136 r157203 30 30 #if ENABLE(TOUCH_EVENTS) 31 31 32 #include "EventDispatchMediator.h"33 32 #include "MouseRelatedEvent.h" 34 33 #include "TouchList.h" … … 96 95 }; 97 96 98 class TouchEventDispatchMediator : public EventDispatchMediator {99 public:100 static PassRefPtr<TouchEventDispatchMediator> create(PassRefPtr<TouchEvent>);101 102 private:103 explicit TouchEventDispatchMediator(PassRefPtr<TouchEvent>);104 TouchEvent* event() const;105 virtual bool mediateAndDispatchEvent(EventDispatcher*) const OVERRIDE;106 };107 108 97 inline TouchEvent* toTouchEvent(Event* event) 109 98 { -
trunk/Source/WebCore/dom/UIEvent.h
r157044 r157203 27 27 #include "DOMWindow.h" 28 28 #include "Event.h" 29 #include "EventDispatchMediator.h"30 29 31 30 namespace WebCore { -
trunk/Source/WebCore/dom/WheelEvent.h
r157195 r157203 26 26 #define WheelEvent_h 27 27 28 #include "EventDispatchMediator.h"29 28 #include "FloatPoint.h" 30 29 #include "MouseEvent.h"
Note: See TracChangeset
for help on using the changeset viewer.