| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2004, 2005, 2006, 2007, 2008 Nikolas Zimmermann <zimmermann@kde
.org> | 2 * Copyright (C) 2004, 2005, 2006, 2007, 2008 Nikolas Zimmermann <zimmermann@kde
.org> |
| 3 * Copyright (C) 2004, 2005, 2006, 2008 Rob Buis <buis@kde.org> | 3 * Copyright (C) 2004, 2005, 2006, 2008 Rob Buis <buis@kde.org> |
| 4 * Copyright (C) 2008 Apple Inc. All rights reserved. | 4 * Copyright (C) 2008 Apple Inc. All rights reserved. |
| 5 * Copyright (C) 2008 Alp Toker <alp@atoker.com> | 5 * Copyright (C) 2008 Alp Toker <alp@atoker.com> |
| 6 * Copyright (C) 2009 Cameron McCormack <cam@mcc.id.au> | 6 * Copyright (C) 2009 Cameron McCormack <cam@mcc.id.au> |
| 7 * | 7 * |
| 8 * This library is free software; you can redistribute it and/or | 8 * This library is free software; you can redistribute it and/or |
| 9 * modify it under the terms of the GNU Library General Public | 9 * modify it under the terms of the GNU Library General Public |
| 10 * License as published by the Free Software Foundation; either | 10 * License as published by the Free Software Foundation; either |
| (...skipping 723 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 734 { | 734 { |
| 735 ASSERT(element); | 735 ASSERT(element); |
| 736 if (element->containingShadowRoot()) | 736 if (element->containingShadowRoot()) |
| 737 return; | 737 return; |
| 738 | 738 |
| 739 ASSERT(!element->instanceUpdatesBlocked()); | 739 ASSERT(!element->instanceUpdatesBlocked()); |
| 740 | 740 |
| 741 instances = element->instancesForElement(); | 741 instances = element->instancesForElement(); |
| 742 } | 742 } |
| 743 | 743 |
| 744 bool SVGElement::addEventListener(const AtomicString& eventType, PassRefPtr<Even
tListener> prpListener, bool useCapture) | 744 bool SVGElement::addEventListener(const AtomicString& eventType, PassRefPtrWillB
eRawPtr<EventListener> prpListener, bool useCapture) |
| 745 { | 745 { |
| 746 RefPtr<EventListener> listener = prpListener; | 746 RefPtrWillBeRawPtr<EventListener> listener = prpListener; |
| 747 | 747 |
| 748 // Add event listener to regular DOM element | 748 // Add event listener to regular DOM element |
| 749 if (!Node::addEventListener(eventType, listener, useCapture)) | 749 if (!Node::addEventListener(eventType, listener, useCapture)) |
| 750 return false; | 750 return false; |
| 751 | 751 |
| 752 // Add event listener to all shadow tree DOM element instances | 752 // Add event listener to all shadow tree DOM element instances |
| 753 WillBeHeapHashSet<RawPtrWillBeWeakMember<SVGElement>> instances; | 753 WillBeHeapHashSet<RawPtrWillBeWeakMember<SVGElement>> instances; |
| 754 collectInstancesForSVGElement(this, instances); | 754 collectInstancesForSVGElement(this, instances); |
| 755 for (SVGElement* element : instances) { | 755 for (SVGElement* element : instances) { |
| 756 bool result = element->Node::addEventListener(eventType, listener, useCa
pture); | 756 bool result = element->Node::addEventListener(eventType, listener, useCa
pture); |
| 757 ASSERT_UNUSED(result, result); | 757 ASSERT_UNUSED(result, result); |
| 758 } | 758 } |
| 759 | 759 |
| 760 return true; | 760 return true; |
| 761 } | 761 } |
| 762 | 762 |
| 763 bool SVGElement::removeEventListener(const AtomicString& eventType, PassRefPtr<E
ventListener> prpListener, bool useCapture) | 763 bool SVGElement::removeEventListener(const AtomicString& eventType, PassRefPtrWi
llBeRawPtr<EventListener> prpListener, bool useCapture) |
| 764 { | 764 { |
| 765 RefPtr<EventListener> listener = prpListener; | 765 RefPtrWillBeRawPtr<EventListener> listener = prpListener; |
| 766 | 766 |
| 767 // Remove event listener from regular DOM element | 767 // Remove event listener from regular DOM element |
| 768 if (!Node::removeEventListener(eventType, listener, useCapture)) | 768 if (!Node::removeEventListener(eventType, listener, useCapture)) |
| 769 return false; | 769 return false; |
| 770 | 770 |
| 771 // Remove event listener from all shadow tree DOM element instances | 771 // Remove event listener from all shadow tree DOM element instances |
| 772 WillBeHeapHashSet<RawPtrWillBeWeakMember<SVGElement>> instances; | 772 WillBeHeapHashSet<RawPtrWillBeWeakMember<SVGElement>> instances; |
| 773 collectInstancesForSVGElement(this, instances); | 773 collectInstancesForSVGElement(this, instances); |
| 774 for (SVGElement* shadowTreeElement : instances) { | 774 for (SVGElement* shadowTreeElement : instances) { |
| 775 ASSERT(shadowTreeElement); | 775 ASSERT(shadowTreeElement); |
| 776 | 776 |
| 777 shadowTreeElement->Node::removeEventListener(eventType, listener, useCap
ture); | 777 shadowTreeElement->Node::removeEventListener(eventType, listener, useCap
ture); |
| 778 } | 778 } |
| 779 | 779 |
| 780 return true; | 780 return true; |
| 781 } | 781 } |
| 782 | 782 |
| 783 static bool hasLoadListener(Element* element) | 783 static bool hasLoadListener(Element* element) |
| 784 { | 784 { |
| 785 if (element->hasEventListeners(EventTypeNames::load)) | 785 if (element->hasEventListeners(EventTypeNames::load)) |
| 786 return true; | 786 return true; |
| 787 | 787 |
| 788 for (element = element->parentOrShadowHostElement(); element; element = elem
ent->parentOrShadowHostElement()) { | 788 for (element = element->parentOrShadowHostElement(); element; element = elem
ent->parentOrShadowHostElement()) { |
| 789 const EventListenerVector& entry = element->getEventListeners(EventTypeN
ames::load); | 789 EventListenerVector* entry = element->getEventListeners(EventTypeNames::
load); |
| 790 for (size_t i = 0; i < entry.size(); ++i) { | 790 if (!entry) |
| 791 if (entry[i].useCapture) | 791 continue; |
| 792 for (size_t i = 0; i < entry->size(); ++i) { |
| 793 if (entry->at(i).useCapture) |
| 792 return true; | 794 return true; |
| 793 } | 795 } |
| 794 } | 796 } |
| 795 | 797 |
| 796 return false; | 798 return false; |
| 797 } | 799 } |
| 798 | 800 |
| 799 bool SVGElement::sendSVGLoadEventIfPossible() | 801 bool SVGElement::sendSVGLoadEventIfPossible() |
| 800 { | 802 { |
| 801 if (!haveLoadedRequiredResources()) | 803 if (!haveLoadedRequiredResources()) |
| (...skipping 362 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1164 Element::trace(visitor); | 1166 Element::trace(visitor); |
| 1165 } | 1167 } |
| 1166 | 1168 |
| 1167 const AtomicString& SVGElement::eventParameterName() | 1169 const AtomicString& SVGElement::eventParameterName() |
| 1168 { | 1170 { |
| 1169 DEFINE_STATIC_LOCAL(const AtomicString, evtString, ("evt", AtomicString::Con
structFromLiteral)); | 1171 DEFINE_STATIC_LOCAL(const AtomicString, evtString, ("evt", AtomicString::Con
structFromLiteral)); |
| 1170 return evtString; | 1172 return evtString; |
| 1171 } | 1173 } |
| 1172 | 1174 |
| 1173 } // namespace blink | 1175 } // namespace blink |
| OLD | NEW |