| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) | 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) |
| 3 * (C) 1999 Antti Koivisto (koivisto@kde.org) | 3 * (C) 1999 Antti Koivisto (koivisto@kde.org) |
| 4 * (C) 2001 Dirk Mueller (mueller@kde.org) | 4 * (C) 2001 Dirk Mueller (mueller@kde.org) |
| 5 * Copyright (C) 2004, 2005, 2006, 2007 Apple Inc. All rights reserved. | 5 * Copyright (C) 2004, 2005, 2006, 2007 Apple Inc. All rights reserved. |
| 6 * Copyright (C) 2006 Alexey Proskuryakov (ap@webkit.org) | 6 * Copyright (C) 2006 Alexey Proskuryakov (ap@webkit.org) |
| 7 * (C) 2007, 2008 Nikolas Zimmermann <zimmermann@kde.org> | 7 * (C) 2007, 2008 Nikolas Zimmermann <zimmermann@kde.org> |
| 8 * | 8 * |
| 9 * Redistribution and use in source and binary forms, with or without | 9 * Redistribution and use in source and binary forms, with or without |
| 10 * modification, are permitted provided that the following conditions | 10 * modification, are permitted provided that the following conditions |
| (...skipping 142 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 153 visitor->trace(eventListenerMap); | 153 visitor->trace(eventListenerMap); |
| 154 } | 154 } |
| 155 | 155 |
| 156 DEFINE_TRACE_WRAPPERS(EventTarget) { | 156 DEFINE_TRACE_WRAPPERS(EventTarget) { |
| 157 EventListenerIterator iterator(const_cast<EventTarget*>(this)); | 157 EventListenerIterator iterator(const_cast<EventTarget*>(this)); |
| 158 while (EventListener* listener = iterator.nextListener()) { | 158 while (EventListener* listener = iterator.nextListener()) { |
| 159 if (listener->type() != EventListener::JSEventListenerType) | 159 if (listener->type() != EventListener::JSEventListenerType) |
| 160 continue; | 160 continue; |
| 161 V8AbstractEventListener* v8listener = | 161 V8AbstractEventListener* v8listener = |
| 162 static_cast<V8AbstractEventListener*>(listener); | 162 static_cast<V8AbstractEventListener*>(listener); |
| 163 if (!v8listener->hasExistingListenerObject()) | |
| 164 continue; | |
| 165 | |
| 166 visitor->traceWrappers(v8listener); | 163 visitor->traceWrappers(v8listener); |
| 167 } | 164 } |
| 168 } | 165 } |
| 169 | 166 |
| 170 EventTarget::EventTarget() {} | 167 EventTarget::EventTarget() {} |
| 171 | 168 |
| 172 EventTarget::~EventTarget() {} | 169 EventTarget::~EventTarget() {} |
| 173 | 170 |
| 174 Node* EventTarget::toNode() { | 171 Node* EventTarget::toNode() { |
| 175 return nullptr; | 172 return nullptr; |
| (...skipping 122 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 298 argv.append(toNode() ? toNode()->nodeName() : interfaceName()); | 295 argv.append(toNode() ? toNode()->nodeName() : interfaceName()); |
| 299 argv.append(eventType); | 296 argv.append(eventType); |
| 300 activityLogger->logEvent("blinkAddEventListener", argv.size(), argv.data()); | 297 activityLogger->logEvent("blinkAddEventListener", argv.size(), argv.data()); |
| 301 } | 298 } |
| 302 | 299 |
| 303 RegisteredEventListener registeredListener; | 300 RegisteredEventListener registeredListener; |
| 304 bool added = ensureEventTargetData().eventListenerMap.add( | 301 bool added = ensureEventTargetData().eventListenerMap.add( |
| 305 eventType, listener, options, ®isteredListener); | 302 eventType, listener, options, ®isteredListener); |
| 306 if (added) { | 303 if (added) { |
| 307 if (listener->type() == EventListener::JSEventListenerType) { | 304 if (listener->type() == EventListener::JSEventListenerType) { |
| 308 V8AbstractEventListener* v8listener = | 305 ScriptWrappableVisitor::writeBarrier( |
| 309 static_cast<V8AbstractEventListener*>(listener); | 306 this, static_cast<V8AbstractEventListener*>(listener)); |
| 310 if (v8listener->hasExistingListenerObject()) | |
| 311 ScriptWrappableVisitor::writeBarrier(this, v8listener); | |
| 312 } | 307 } |
| 313 addedEventListener(eventType, registeredListener); | 308 addedEventListener(eventType, registeredListener); |
| 314 } | 309 } |
| 315 return added; | 310 return added; |
| 316 } | 311 } |
| 317 | 312 |
| 318 void EventTarget::addedEventListener( | 313 void EventTarget::addedEventListener( |
| 319 const AtomicString& eventType, | 314 const AtomicString& eventType, |
| 320 RegisteredEventListener& registeredListener) { | 315 RegisteredEventListener& registeredListener) { |
| 321 if (eventType == EventTypeNames::auxclick) { | 316 if (eventType == EventTypeNames::auxclick) { |
| (...skipping 444 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 766 // they have one less listener to invoke. | 761 // they have one less listener to invoke. |
| 767 if (d->firingEventIterators) { | 762 if (d->firingEventIterators) { |
| 768 for (size_t i = 0; i < d->firingEventIterators->size(); ++i) { | 763 for (size_t i = 0; i < d->firingEventIterators->size(); ++i) { |
| 769 d->firingEventIterators->at(i).iterator = 0; | 764 d->firingEventIterators->at(i).iterator = 0; |
| 770 d->firingEventIterators->at(i).end = 0; | 765 d->firingEventIterators->at(i).end = 0; |
| 771 } | 766 } |
| 772 } | 767 } |
| 773 } | 768 } |
| 774 | 769 |
| 775 } // namespace blink | 770 } // namespace blink |
| OLD | NEW |