Changeset 201734 in webkit
- Timestamp:
- Jun 6, 2016 5:36:45 PM (8 years ago)
- Location:
- trunk
- Files:
-
- 11 deleted
- 25 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LayoutTests/ChangeLog
r201731 r201734 1 2016-06-06 Commit Queue <commit-queue@webkit.org> 2 3 Unreviewed, rolling out r201730. 4 https://bugs.webkit.org/show_bug.cgi?id=158453 5 6 This change caused existing LayoutTests to crash (Requested by 7 ryanhaddad on #webkit). 8 9 Reverted changeset: 10 11 "Implement EventListenerOptions argument to addEventListener" 12 https://bugs.webkit.org/show_bug.cgi?id=149466 13 http://trac.webkit.org/changeset/201730 14 1 15 2016-06-02 Ryan Haddad <ryanhaddad@apple.com> 2 16 -
trunk/LayoutTests/imported/w3c/ChangeLog
r201730 r201734 1 2016-06-06 Commit Queue <commit-queue@webkit.org> 2 3 Unreviewed, rolling out r201730. 4 https://bugs.webkit.org/show_bug.cgi?id=158453 5 6 This change caused existing LayoutTests to crash (Requested by 7 ryanhaddad on #webkit). 8 9 Reverted changeset: 10 11 "Implement EventListenerOptions argument to addEventListener" 12 https://bugs.webkit.org/show_bug.cgi?id=149466 13 http://trac.webkit.org/changeset/201730 14 1 15 2016-06-06 Chris Dumez <cdumez@apple.com> 2 16 -
trunk/Source/WebCore/ChangeLog
r201730 r201734 1 2016-06-06 Commit Queue <commit-queue@webkit.org> 2 3 Unreviewed, rolling out r201730. 4 https://bugs.webkit.org/show_bug.cgi?id=158453 5 6 This change caused existing LayoutTests to crash (Requested by 7 ryanhaddad on #webkit). 8 9 Reverted changeset: 10 11 "Implement EventListenerOptions argument to addEventListener" 12 https://bugs.webkit.org/show_bug.cgi?id=149466 13 http://trac.webkit.org/changeset/201730 14 1 15 2016-06-06 Chris Dumez <cdumez@apple.com> 2 16 -
trunk/Source/WebCore/Modules/webaudio/AudioScheduledSourceNode.cpp
r201730 r201734 202 202 } 203 203 204 bool AudioScheduledSourceNode::addEventListener(const AtomicString& eventType, Ref<EventListener>&& listener, const AddEventListenerOptions& options)205 { 206 bool success = AudioNode::addEventListener(eventType, WTFMove(listener), options);204 bool AudioScheduledSourceNode::addEventListener(const AtomicString& eventType, Ref<EventListener>&& listener, bool useCapture) 205 { 206 bool success = AudioNode::addEventListener(eventType, WTFMove(listener), useCapture); 207 207 if (success && eventType == eventNames().endedEvent) 208 208 m_hasEndedListener = hasEventListeners(eventNames().endedEvent); … … 210 210 } 211 211 212 bool AudioScheduledSourceNode::removeEventListener(const AtomicString& eventType, EventListener& listener, const ListenerOptions& options)213 { 214 bool success = AudioNode::removeEventListener(eventType, listener, options);212 bool AudioScheduledSourceNode::removeEventListener(const AtomicString& eventType, EventListener& listener, bool useCapture) 213 { 214 bool success = AudioNode::removeEventListener(eventType, listener, useCapture); 215 215 if (success && eventType == eventNames().endedEvent) 216 216 m_hasEndedListener = hasEventListeners(eventNames().endedEvent); -
trunk/Source/WebCore/Modules/webaudio/AudioScheduledSourceNode.h
r201730 r201734 102 102 103 103 private: 104 bool addEventListener(const AtomicString& eventType, Ref<EventListener>&&, const AddEventListenerOptions&) override;105 bool removeEventListener(const AtomicString& eventType, EventListener&, const ListenerOptions&) override;104 bool addEventListener(const AtomicString& eventType, Ref<EventListener>&&, bool useCapture) override; 105 bool removeEventListener(const AtomicString& eventType, EventListener&, bool useCapture) override; 106 106 void removeAllEventListeners() override; 107 107 }; -
trunk/Source/WebCore/Modules/webaudio/ScriptProcessorNode.cpp
r201730 r201734 274 274 } 275 275 276 bool ScriptProcessorNode::addEventListener(const AtomicString& eventType, Ref<EventListener>&& listener, const AddEventListenerOptions& options)277 { 278 bool success = AudioNode::addEventListener(eventType, WTFMove(listener), options);276 bool ScriptProcessorNode::addEventListener(const AtomicString& eventType, Ref<EventListener>&& listener, bool useCapture) 277 { 278 bool success = AudioNode::addEventListener(eventType, WTFMove(listener), useCapture); 279 279 if (success && eventType == eventNames().audioprocessEvent) 280 280 m_hasAudioProcessListener = hasEventListeners(eventNames().audioprocessEvent); … … 282 282 } 283 283 284 bool ScriptProcessorNode::removeEventListener(const AtomicString& eventType, EventListener& listener, const ListenerOptions& options)285 { 286 bool success = AudioNode::removeEventListener(eventType, listener, options);284 bool ScriptProcessorNode::removeEventListener(const AtomicString& eventType, EventListener& listener, bool useCapture) 285 { 286 bool success = AudioNode::removeEventListener(eventType, listener, useCapture); 287 287 if (success && eventType == eventNames().audioprocessEvent) 288 288 m_hasAudioProcessListener = hasEventListeners(eventNames().audioprocessEvent); -
trunk/Source/WebCore/Modules/webaudio/ScriptProcessorNode.h
r201730 r201734 74 74 void fireProcessEvent(); 75 75 76 bool addEventListener(const AtomicString& eventType, Ref<EventListener>&&, const AddEventListenerOptions&) override;77 bool removeEventListener(const AtomicString& eventType, EventListener&, const ListenerOptions&) override;76 bool addEventListener(const AtomicString& eventType, Ref<EventListener>&&, bool useCapture) override; 77 bool removeEventListener(const AtomicString& eventType, EventListener&, bool useCapture) override; 78 78 void removeAllEventListeners() override; 79 79 -
trunk/Source/WebCore/bindings/scripts/CodeGeneratorJS.pm
r201730 r201734 1679 1679 } 1680 1680 $usedArguments{$parameterIndex} = 1; 1681 } elsif ($codeGenerator->IsDictionaryType($parameter->type)) { 1682 push(@andExpression, "(${value}.isUndefinedOrNull() || ${value}.isObject())"); 1683 $usedArguments{$parameterIndex} = 1; 1684 } elsif (($codeGenerator->GetArrayOrSequenceType($type) || $codeGenerator->IsTypedArrayType($type) || $codeGenerator->IsWrapperType($type)) && $type ne "EventListener") { 1681 } elsif ($codeGenerator->GetArrayOrSequenceType($type) || $codeGenerator->IsTypedArrayType($type) || $codeGenerator->IsWrapperType($type)) { 1685 1682 my $condition = ""; 1686 1683 -
trunk/Source/WebCore/dom/Event.h
r201730 r201734 173 173 void preventDefault() 174 174 { 175 if (m_cancelable && !m_isExecutingPassiveEventListener)175 if (m_cancelable) 176 176 m_defaultPrevented = true; 177 177 } … … 180 180 bool defaultHandled() const { return m_defaultHandled; } 181 181 void setDefaultHandled() { m_defaultHandled = true; } 182 183 void setInPassiveListener(bool value) { m_isExecutingPassiveEventListener = value; }184 182 185 183 bool cancelBubble() const { return m_cancelBubble; } … … 220 218 bool m_cancelBubble { false }; 221 219 bool m_isTrusted { false }; 222 bool m_isExecutingPassiveEventListener { false };223 220 224 221 unsigned short m_eventPhase { 0 }; -
trunk/Source/WebCore/dom/EventListenerMap.cpp
r201730 r201734 96 96 } 97 97 98 static bool addListenerToVector(EventListenerVector* vector, Ref<EventListener>&& listener, const RegisteredEventListener::Options& options)99 { 100 RegisteredEventListener registeredListener(WTFMove(listener), options);98 static bool addListenerToVector(EventListenerVector* vector, Ref<EventListener>&& listener, bool useCapture) 99 { 100 RegisteredEventListener registeredListener(WTFMove(listener), useCapture); 101 101 102 102 if (vector->find(registeredListener) != notFound) … … 107 107 } 108 108 109 bool EventListenerMap::add(const AtomicString& eventType, Ref<EventListener>&& listener, const RegisteredEventListener::Options& options)109 bool EventListenerMap::add(const AtomicString& eventType, Ref<EventListener>&& listener, bool useCapture) 110 110 { 111 111 assertNoActiveIterators(); … … 113 113 for (auto& entry : m_entries) { 114 114 if (entry.first == eventType) 115 return addListenerToVector(entry.second.get(), WTFMove(listener), options);115 return addListenerToVector(entry.second.get(), WTFMove(listener), useCapture); 116 116 } 117 117 118 118 m_entries.append(std::make_pair(eventType, std::make_unique<EventListenerVector>())); 119 return addListenerToVector(m_entries.last().second.get(), WTFMove(listener), options);119 return addListenerToVector(m_entries.last().second.get(), WTFMove(listener), useCapture); 120 120 } 121 121 -
trunk/Source/WebCore/dom/EventListenerMap.h
r201730 r201734 55 55 56 56 void clear(); 57 58 bool add(const AtomicString& eventType, Ref<EventListener>&&, const RegisteredEventListener::Options&); 57 bool add(const AtomicString& eventType, Ref<EventListener>&&, bool useCapture); 59 58 bool remove(const AtomicString& eventType, EventListener&, bool useCapture, size_t& indexOfRemovedListener); 60 59 EventListenerVector* find(const AtomicString& eventType); -
trunk/Source/WebCore/dom/EventTarget.cpp
r201730 r201734 76 76 } 77 77 78 bool EventTarget::addEventListener(const AtomicString& eventType, Ref<EventListener>&& listener, const AddEventListenerOptions& options) 79 { 80 return ensureEventTargetData().eventListenerMap.add(eventType, WTFMove(listener), { options.capture, options.passive, options.once }); 81 } 82 83 void EventTarget::addEventListenerForBindings(const AtomicString& eventType, RefPtr<EventListener>&& listener, const AddEventListenerOptions& options) 84 { 78 bool EventTarget::addEventListener(const AtomicString& eventType, Ref<EventListener>&& listener, bool useCapture) 79 { 80 return ensureEventTargetData().eventListenerMap.add(eventType, WTFMove(listener), useCapture); 81 } 82 83 void EventTarget::addEventListenerForBindings(const AtomicString& eventType, RefPtr<EventListener>&& listener, bool useCapture) 84 { 85 // FIXME: listener is not supposed to be nullable. 85 86 if (!listener) 86 87 return; 87 addEventListener(eventType, listener.releaseNonNull(), options); 88 } 89 90 void EventTarget::removeEventListenerForBindings(const AtomicString& eventType, RefPtr<EventListener>&& listener, const ListenerOptions& options) 91 { 88 addEventListener(eventType, listener.releaseNonNull(), useCapture); 89 } 90 91 void EventTarget::removeEventListenerForBindings(const AtomicString& eventType, RefPtr<EventListener>&& listener, bool useCapture) 92 { 93 // FIXME: listener is not supposed to be nullable. 92 94 if (!listener) 93 95 return; 94 removeEventListener(eventType, *listener, options);95 } 96 97 bool EventTarget::removeEventListener(const AtomicString& eventType, EventListener& listener, const ListenerOptions& options)96 removeEventListener(eventType, *listener, useCapture); 97 } 98 99 bool EventTarget::removeEventListener(const AtomicString& eventType, EventListener& listener, bool useCapture) 98 100 { 99 101 EventTargetData* d = eventTargetData(); … … 103 105 size_t indexOfRemovedListener; 104 106 105 if (!d->eventListenerMap.remove(eventType, listener, options.capture, indexOfRemovedListener))107 if (!d->eventListenerMap.remove(eventType, listener, useCapture, indexOfRemovedListener)) 106 108 return false; 107 109 … … 130 132 if (!listener) 131 133 return false; 132 return addEventListener(eventType, listener.releaseNonNull() );134 return addEventListener(eventType, listener.releaseNonNull(), false); 133 135 } 134 136 … … 259 261 for (; i < size; ++i) { 260 262 RegisteredEventListener& registeredListener = entry[i]; 261 262 if (registeredListener.isMarkedForRemoval)263 continue;264 265 263 if (event.eventPhase() == Event::CAPTURING_PHASE && !registeredListener.useCapture) 266 264 continue; … … 272 270 if (event.immediatePropagationStopped()) 273 271 break; 274 275 if (registeredListener.isPassive)276 event.setInPassiveListener(true);277 278 // Mark listener for removal before executing the listener, in case the listener tries to279 // dispatch an event that would cause it to get executed again.280 if (registeredListener.isOnce)281 registeredListener.isMarkedForRemoval = true;282 272 283 273 InspectorInstrumentationCookie cookie = InspectorInstrumentation::willHandleEvent(context, event); … … 286 276 registeredListener.listener->handleEvent(context, &event); 287 277 InspectorInstrumentation::didHandleEvent(cookie); 288 289 if (registeredListener.isPassive) 290 event.setInPassiveListener(false); 291 292 if (registeredListener.isOnce) 293 removeEventListener(event.type(), *registeredListener.listener, ListenerOptions(registeredListener.useCapture)); 294 } 295 278 } 296 279 d->firingEventIterators->removeLast(); 297 280 -
trunk/Source/WebCore/dom/EventTarget.h
r201730 r201734 122 122 virtual bool isMessagePort() const; 123 123 124 struct ListenerOptions {125 ListenerOptions(bool capture = false)126 : capture(capture)127 { }128 129 bool capture;130 };131 132 struct AddEventListenerOptions : public ListenerOptions {133 AddEventListenerOptions(bool capture = false, bool passive = false, bool once = false)134 : ListenerOptions(capture)135 , passive(passive)136 , once(once)137 { }138 139 bool passive;140 bool once;141 };142 143 124 void addEventListenerForBindings(const AtomicString& eventType, RefPtr<EventListener>&&, bool useCapture); 144 125 void removeEventListenerForBindings(const AtomicString& eventType, RefPtr<EventListener>&&, bool useCapture); 145 void addEventListenerForBindings(const AtomicString& eventType, RefPtr<EventListener>&&, const AddEventListenerOptions&); 146 void removeEventListenerForBindings(const AtomicString& eventType, RefPtr<EventListener>&&, const ListenerOptions&); 147 virtual bool addEventListener(const AtomicString& eventType, Ref<EventListener>&&, const AddEventListenerOptions& = { }); 148 virtual bool removeEventListener(const AtomicString& eventType, EventListener&, const ListenerOptions&); 126 virtual bool addEventListener(const AtomicString& eventType, Ref<EventListener>&&, bool useCapture); 127 virtual bool removeEventListener(const AtomicString& eventType, EventListener&, bool useCapture); 149 128 150 129 virtual void removeAllEventListeners(); … … 231 210 } 232 211 233 inline void EventTarget::addEventListenerForBindings(const AtomicString& eventType, RefPtr<EventListener>&& listener, bool useCapture)234 {235 addEventListenerForBindings(eventType, WTFMove(listener), AddEventListenerOptions(useCapture));236 }237 238 inline void EventTarget::removeEventListenerForBindings(const AtomicString& eventType, RefPtr<EventListener>&& listener, bool useCapture)239 {240 removeEventListenerForBindings(eventType, WTFMove(listener), ListenerOptions(useCapture));241 }242 243 212 } // namespace WebCore 244 213 -
trunk/Source/WebCore/dom/EventTarget.idl
r201730 r201734 26 26 ObjCProtocol, 27 27 ] interface EventTarget { 28 #if defined(LANGUAGE_JAVASCRIPT) && LANGUAGE_JAVASCRIPT29 [ImplementedAs=addEventListenerForBindings] void addEventListener([AtomicString] DOMString type, EventListener? listener, optional AddEventListenerOptions options);30 [ImplementedAs=removeEventListenerForBindings] void removeEventListener([AtomicString] DOMString type, EventListener? listener, optional EventListenerOptions options);31 #endif32 33 28 // FIXME: The 'type' and 'listener' parameters should not be optional. 34 29 [ObjCLegacyUnnamedParameters, ImplementedAs=addEventListenerForBindings] void addEventListener([AtomicString] optional DOMString type = "undefined", optional EventListener? listener, optional boolean useCapture = false); … … 38 33 [ImplementedAs=dispatchEventForBindings, RaisesException] boolean dispatchEvent(Event? event); 39 34 }; 40 41 dictionary EventListenerOptions {42 boolean capture = false;43 };44 45 dictionary AddEventListenerOptions {46 boolean capture = false;47 boolean passive = false;48 boolean once = false;49 }; -
trunk/Source/WebCore/dom/MessagePort.cpp
r201730 r201734 222 222 } 223 223 224 bool MessagePort::addEventListener(const AtomicString& eventType, Ref<EventListener>&& listener, const AddEventListenerOptions& options)224 bool MessagePort::addEventListener(const AtomicString& eventType, Ref<EventListener>&& listener, bool useCapture) 225 225 { 226 226 if (listener->isAttribute() && eventType == eventNames().messageEvent) 227 227 start(); 228 return EventTargetWithInlineData::addEventListener(eventType, WTFMove(listener), options);228 return EventTargetWithInlineData::addEventListener(eventType, WTFMove(listener), useCapture); 229 229 } 230 230 -
trunk/Source/WebCore/dom/MessagePort.h
r201730 r201734 93 93 bool isNeutered() { return !m_entangledChannel; } 94 94 95 bool addEventListener(const AtomicString& eventType, Ref<EventListener>&&, const AddEventListenerOptions&) override;95 bool addEventListener(const AtomicString& eventType, Ref<EventListener>&&, bool useCapture) override; 96 96 97 97 private: -
trunk/Source/WebCore/dom/Node.cpp
r201730 r201734 1908 1908 } 1909 1909 1910 static inline bool tryAddEventListener(Node* targetNode, const AtomicString& eventType, Ref<EventListener>&& listener, const EventTarget::AddEventListenerOptions& options)1911 { 1912 if (!targetNode->EventTarget::addEventListener(eventType, listener.copyRef(), options))1910 static inline bool tryAddEventListener(Node* targetNode, const AtomicString& eventType, Ref<EventListener>&& listener, bool useCapture) 1911 { 1912 if (!targetNode->EventTarget::addEventListener(eventType, listener.copyRef(), useCapture)) 1913 1913 return false; 1914 1914 … … 1928 1928 // Forward this call to addEventListener() to the window since these are window-only events. 1929 1929 if (eventType == eventNames().orientationchangeEvent || eventType == eventNames().resizeEvent) 1930 targetNode->document().domWindow()->addEventListener(eventType, WTFMove(listener), options);1930 targetNode->document().domWindow()->addEventListener(eventType, WTFMove(listener), useCapture); 1931 1931 1932 1932 #if ENABLE(TOUCH_EVENTS) … … 1944 1944 } 1945 1945 1946 bool Node::addEventListener(const AtomicString& eventType, Ref<EventListener>&& listener, const AddEventListenerOptions& options)1947 { 1948 return tryAddEventListener(this, eventType, WTFMove(listener), options);1949 } 1950 1951 static inline bool tryRemoveEventListener(Node* targetNode, const AtomicString& eventType, EventListener& listener, const EventTarget::ListenerOptions& options)1952 { 1953 if (!targetNode->EventTarget::removeEventListener(eventType, listener, options))1946 bool Node::addEventListener(const AtomicString& eventType, Ref<EventListener>&& listener, bool useCapture) 1947 { 1948 return tryAddEventListener(this, eventType, WTFMove(listener), useCapture); 1949 } 1950 1951 static inline bool tryRemoveEventListener(Node* targetNode, const AtomicString& eventType, EventListener& listener, bool useCapture) 1952 { 1953 if (!targetNode->EventTarget::removeEventListener(eventType, listener, useCapture)) 1954 1954 return false; 1955 1955 … … 1969 1969 // Forward this call to removeEventListener() to the window since these are window-only events. 1970 1970 if (eventType == eventNames().orientationchangeEvent || eventType == eventNames().resizeEvent) 1971 targetNode->document().domWindow()->removeEventListener(eventType, listener, options);1971 targetNode->document().domWindow()->removeEventListener(eventType, listener, useCapture); 1972 1972 1973 1973 #if ENABLE(TOUCH_EVENTS) … … 1985 1985 } 1986 1986 1987 bool Node::removeEventListener(const AtomicString& eventType, EventListener& listener, const ListenerOptions& options)1988 { 1989 return tryRemoveEventListener(this, eventType, listener, options);1987 bool Node::removeEventListener(const AtomicString& eventType, EventListener& listener, bool useCapture) 1988 { 1989 return tryRemoveEventListener(this, eventType, listener, useCapture); 1990 1990 } 1991 1991 -
trunk/Source/WebCore/dom/Node.h
r201730 r201734 508 508 ScriptExecutionContext* scriptExecutionContext() const final; // Implemented in Document.h 509 509 510 bool addEventListener(const AtomicString& eventType, Ref<EventListener>&&, const AddEventListenerOptions&) override;511 bool removeEventListener(const AtomicString& eventType, EventListener&, const ListenerOptions&) override;510 bool addEventListener(const AtomicString& eventType, Ref<EventListener>&&, bool useCapture) override; 511 bool removeEventListener(const AtomicString& eventType, EventListener&, bool useCapture) override; 512 512 513 513 using EventTarget::dispatchEvent; -
trunk/Source/WebCore/dom/RegisteredEventListener.h
r201730 r201734 32 32 class RegisteredEventListener { 33 33 public: 34 struct Options {35 Options(bool capture = false, bool passive = false, bool once = false)36 : capture(capture)37 , passive(passive)38 , once(once)39 { }40 41 bool capture;42 bool passive;43 bool once;44 };45 46 RegisteredEventListener(Ref<EventListener>&& listener, const Options& options)47 : listener(WTFMove(listener))48 , useCapture(options.capture)49 , isPassive(options.passive)50 , isOnce(options.once)51 {52 }53 54 34 RegisteredEventListener(Ref<EventListener>&& listener, bool useCapture) 55 35 : listener(WTFMove(listener)) … … 59 39 60 40 RefPtr<EventListener> listener; 61 bool useCapture { false }; 62 bool isPassive { false }; 63 bool isOnce { false }; 64 bool isMarkedForRemoval { false }; 41 bool useCapture; 65 42 }; 66 43 67 44 inline bool operator==(const RegisteredEventListener& a, const RegisteredEventListener& b) 68 45 { 69 // Other data members are purposefully not checked. The DOM specification says that upon adding / removing70 // EventListeners, we should only check the type and the capture flag.71 46 return *a.listener == *b.listener && a.useCapture == b.useCapture; 72 47 } -
trunk/Source/WebCore/html/HTMLMediaElement.cpp
r201730 r201734 5229 5229 } 5230 5230 5231 bool HTMLMediaElement::addEventListener(const AtomicString& eventType, Ref<EventListener>&& listener, const AddEventListenerOptions& options)5231 bool HTMLMediaElement::addEventListener(const AtomicString& eventType, Ref<EventListener>&& listener, bool useCapture) 5232 5232 { 5233 5233 if (eventType != eventNames().webkitplaybacktargetavailabilitychangedEvent) 5234 return Node::addEventListener(eventType, WTFMove(listener), options);5234 return Node::addEventListener(eventType, WTFMove(listener), useCapture); 5235 5235 5236 5236 bool isFirstAvailabilityChangedListener = !hasEventListeners(eventNames().webkitplaybacktargetavailabilitychangedEvent); 5237 if (!Node::addEventListener(eventType, WTFMove(listener), options))5237 if (!Node::addEventListener(eventType, WTFMove(listener), useCapture)) 5238 5238 return false; 5239 5239 … … 5249 5249 } 5250 5250 5251 bool HTMLMediaElement::removeEventListener(const AtomicString& eventType, EventListener& listener, const ListenerOptions& options)5251 bool HTMLMediaElement::removeEventListener(const AtomicString& eventType, EventListener& listener, bool useCapture) 5252 5252 { 5253 5253 if (eventType != eventNames().webkitplaybacktargetavailabilitychangedEvent) 5254 return Node::removeEventListener(eventType, listener, options);5255 5256 if (!Node::removeEventListener(eventType, listener, options))5254 return Node::removeEventListener(eventType, listener, useCapture); 5255 5256 if (!Node::removeEventListener(eventType, listener, useCapture)) 5257 5257 return false; 5258 5258 -
trunk/Source/WebCore/html/HTMLMediaElement.h
r201730 r201734 343 343 #if ENABLE(WIRELESS_PLAYBACK_TARGET) 344 344 void webkitShowPlaybackTargetPicker(); 345 bool addEventListener(const AtomicString& eventType, Ref<EventListener>&&, const AddEventListenerOptions&) override;346 bool removeEventListener(const AtomicString& eventType, EventListener&, const ListenerOptions&) override;345 bool addEventListener(const AtomicString& eventType, Ref<EventListener>&&, bool useCapture) override; 346 bool removeEventListener(const AtomicString& eventType, EventListener&, bool useCapture) override; 347 347 348 348 void wirelessRoutesAvailableDidChange() override; -
trunk/Source/WebCore/page/DOMWindow.cpp
r201730 r201734 1723 1723 } 1724 1724 1725 bool DOMWindow::addEventListener(const AtomicString& eventType, Ref<EventListener>&& listener, const AddEventListenerOptions& options)1726 { 1727 if (!EventTarget::addEventListener(eventType, WTFMove(listener), options))1725 bool DOMWindow::addEventListener(const AtomicString& eventType, Ref<EventListener>&& listener, bool useCapture) 1726 { 1727 if (!EventTarget::addEventListener(eventType, WTFMove(listener), useCapture)) 1728 1728 return false; 1729 1729 … … 1826 1826 } 1827 1827 1828 bool DOMWindow::removeEventListener(const AtomicString& eventType, EventListener& listener, const ListenerOptions& options)1829 { 1830 if (!EventTarget::removeEventListener(eventType, listener, options.capture))1828 bool DOMWindow::removeEventListener(const AtomicString& eventType, EventListener& listener, bool useCapture) 1829 { 1830 if (!EventTarget::removeEventListener(eventType, listener, useCapture)) 1831 1831 return false; 1832 1832 -
trunk/Source/WebCore/page/DOMWindow.h
r201730 r201734 280 280 // Events 281 281 // EventTarget API 282 bool addEventListener(const AtomicString& eventType, Ref<EventListener>&&, const AddEventListenerOptions&) override;283 bool removeEventListener(const AtomicString& eventType, EventListener&, const ListenerOptions&) override;282 bool addEventListener(const AtomicString& eventType, Ref<EventListener>&&, bool useCapture) override; 283 bool removeEventListener(const AtomicString& eventType, EventListener&, bool useCapture) override; 284 284 void removeAllEventListeners() override; 285 285 -
trunk/Source/WebCore/svg/SVGElement.cpp
r201730 r201734 529 529 } 530 530 531 bool SVGElement::addEventListener(const AtomicString& eventType, Ref<EventListener>&& listener, const AddEventListenerOptions& options)531 bool SVGElement::addEventListener(const AtomicString& eventType, Ref<EventListener>&& listener, bool useCapture) 532 532 { 533 533 // Add event listener to regular DOM element 534 if (!Node::addEventListener(eventType, listener.copyRef(), options))534 if (!Node::addEventListener(eventType, listener.copyRef(), useCapture)) 535 535 return false; 536 536 … … 542 542 for (auto* instance : instances()) { 543 543 ASSERT(instance->correspondingElement() == this); 544 bool result = instance->Node::addEventListener(eventType, listener.copyRef(), options);544 bool result = instance->Node::addEventListener(eventType, listener.copyRef(), useCapture); 545 545 ASSERT_UNUSED(result, result); 546 546 } … … 549 549 } 550 550 551 bool SVGElement::removeEventListener(const AtomicString& eventType, EventListener& listener, const ListenerOptions& options)551 bool SVGElement::removeEventListener(const AtomicString& eventType, EventListener& listener, bool useCapture) 552 552 { 553 553 if (containingShadowRoot()) 554 return Node::removeEventListener(eventType, listener, options);554 return Node::removeEventListener(eventType, listener, useCapture); 555 555 556 556 // EventTarget::removeEventListener creates a PassRefPtr around the given EventListener … … 562 562 563 563 // Remove event listener from regular DOM element 564 if (!Node::removeEventListener(eventType, listener, options))564 if (!Node::removeEventListener(eventType, listener, useCapture)) 565 565 return false; 566 566 … … 570 570 ASSERT(instance->correspondingElement() == this); 571 571 572 if (instance->Node::removeEventListener(eventType, listener, options))572 if (instance->Node::removeEventListener(eventType, listener, useCapture)) 573 573 continue; 574 574 -
trunk/Source/WebCore/svg/SVGElement.h
r201730 r201734 134 134 virtual bool haveLoadedRequiredResources(); 135 135 136 bool addEventListener(const AtomicString& eventType, Ref<EventListener>&&, const AddEventListenerOptions&) override;137 bool removeEventListener(const AtomicString& eventType, EventListener&, const ListenerOptions&) override;136 bool addEventListener(const AtomicString& eventType, Ref<EventListener>&&, bool useCapture) override; 137 bool removeEventListener(const AtomicString& eventType, EventListener&, bool useCapture) override; 138 138 bool hasFocusEventListeners() const; 139 139
Note: See TracChangeset
for help on using the changeset viewer.