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 903 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
914 { | 914 { |
915 sendSVGLoadEventIfPossible(); | 915 sendSVGLoadEventIfPossible(); |
916 } | 916 } |
917 | 917 |
918 Timer<SVGElement>* SVGElement::svgLoadEventTimer() | 918 Timer<SVGElement>* SVGElement::svgLoadEventTimer() |
919 { | 919 { |
920 ASSERT_NOT_REACHED(); | 920 ASSERT_NOT_REACHED(); |
921 return 0; | 921 return 0; |
922 } | 922 } |
923 | 923 |
924 void SVGElement::finishParsingChildren() | |
925 { | |
926 Element::finishParsingChildren(); | |
927 | |
928 // The outermost SVGSVGElement SVGLoad event is fired through Document::disp
atchWindowLoadEvent. | |
929 if (isOutermostSVGSVGElement()) | |
930 return; | |
931 | |
932 // finishParsingChildren() is called when the close tag is reached for an el
ement (e.g. </svg>) | |
933 // we send SVGLoad events here if we can, otherwise they'll be sent when any
required loads finish | |
934 if (isSVGSVGElement(*this)) | |
935 sendSVGLoadEventIfPossible(); | |
936 } | |
937 | |
938 void SVGElement::attributeChanged(const QualifiedName& name, const AtomicString&
newValue, AttributeModificationReason) | 924 void SVGElement::attributeChanged(const QualifiedName& name, const AtomicString&
newValue, AttributeModificationReason) |
939 { | 925 { |
940 Element::attributeChanged(name, newValue); | 926 Element::attributeChanged(name, newValue); |
941 | 927 |
942 if (isIdAttributeName(name)) | 928 if (isIdAttributeName(name)) |
943 document().accessSVGExtensions().rebuildAllElementReferencesForTarget(th
is); | 929 document().accessSVGExtensions().rebuildAllElementReferencesForTarget(th
is); |
944 | 930 |
945 // Changes to the style attribute are processed lazily (see Element::getAttr
ibute() and related methods), | 931 // Changes to the style attribute are processed lazily (see Element::getAttr
ibute() and related methods), |
946 // so we don't want changes to the style attribute to result in extra work h
ere. | 932 // so we don't want changes to the style attribute to result in extra work h
ere. |
947 if (name != HTMLNames::styleAttr) | 933 if (name != HTMLNames::styleAttr) |
(...skipping 199 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1147 animatableAttributes.add(SVGNames::zAttr); | 1133 animatableAttributes.add(SVGNames::zAttr); |
1148 } | 1134 } |
1149 | 1135 |
1150 if (name == classAttr) | 1136 if (name == classAttr) |
1151 return true; | 1137 return true; |
1152 | 1138 |
1153 return animatableAttributes.contains(name); | 1139 return animatableAttributes.contains(name); |
1154 } | 1140 } |
1155 #endif | 1141 #endif |
1156 } | 1142 } |
OLD | NEW |