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 64 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
75 | 75 |
76 inline DOMWindow* EventTarget::executingWindow() | 76 inline DOMWindow* EventTarget::executingWindow() |
77 { | 77 { |
78 if (ExecutionContext* context = executionContext()) | 78 if (ExecutionContext* context = executionContext()) |
79 return context->executingWindow(); | 79 return context->executingWindow(); |
80 return 0; | 80 return 0; |
81 } | 81 } |
82 | 82 |
83 bool EventTarget::addEventListener(const AtomicString& eventType, PassRefPtr<Eve
ntListener> listener, bool useCapture) | 83 bool EventTarget::addEventListener(const AtomicString& eventType, PassRefPtr<Eve
ntListener> listener, bool useCapture) |
84 { | 84 { |
| 85 // FIXME: listener null check should throw TypeError (and be done in |
| 86 // generated bindings), but breaks legacy content. http://crbug.com/249598 |
| 87 if (!listener) |
| 88 return false; |
85 EventListener* eventListener = listener.get(); | 89 EventListener* eventListener = listener.get(); |
86 if (ensureEventTargetData().eventListenerMap.add(eventType, listener, useCap
ture)) { | 90 if (ensureEventTargetData().eventListenerMap.add(eventType, listener, useCap
ture)) { |
87 InspectorInstrumentation::didAddEventListener(this, eventType, eventList
ener, useCapture); | 91 InspectorInstrumentation::didAddEventListener(this, eventType, eventList
ener, useCapture); |
88 return true; | 92 return true; |
89 } | 93 } |
90 return false; | 94 return false; |
91 } | 95 } |
92 | 96 |
93 bool EventTarget::removeEventListener(const AtomicString& eventType, EventListen
er* listener, bool useCapture) | 97 bool EventTarget::removeEventListener(const AtomicString& eventType, EventListen
er* listener, bool useCapture) |
94 { | 98 { |
(...skipping 275 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
370 // they have one less listener to invoke. | 374 // they have one less listener to invoke. |
371 if (d->firingEventIterators) { | 375 if (d->firingEventIterators) { |
372 for (size_t i = 0; i < d->firingEventIterators->size(); ++i) { | 376 for (size_t i = 0; i < d->firingEventIterators->size(); ++i) { |
373 d->firingEventIterators->at(i).iterator = 0; | 377 d->firingEventIterators->at(i).iterator = 0; |
374 d->firingEventIterators->at(i).end = 0; | 378 d->firingEventIterators->at(i).end = 0; |
375 } | 379 } |
376 } | 380 } |
377 } | 381 } |
378 | 382 |
379 } // namespace WebCore | 383 } // namespace WebCore |
OLD | NEW |