haikuwebkit/LayoutTests/svg/animations/svgnumber-animation-2.html

66 lines
2.0 KiB
HTML
Raw Permalink Normal View History

2011-06-19 Dirk Schulze <krit@webkit.org> Reviewed by Nikolas Zimmermann. SVGAnimatorFactory does not support SVGNumber https://bugs.webkit.org/show_bug.cgi?id=62938 Follow up of "SVGAnimation should use direct unit animation for SVGLength": https://bugs.webkit.org/show_bug.cgi?id=61368 This patch continues the conversion to the new concept of SVGAnimatorFactory with SVGNumber. With the new animator for the With the new animator for SVGNumber we also support the scientific notation, and everything else that's supported by the SVGNumber parsing, removing the SVGAnimate* specific number parsing functionality. Moving the content of SVGAnimatedType header into its own cpp. Changed behavior of parseNumberFromString(). It checks if the String simply consits of a number now. parseNumberFromString() is using genericParseNumber() for parsing numbers. But this method just stops at the first char that does not belong to a number and returns true. I added a check if the current char pointer is at the last char of the String and return false if not. Tests: svg/animations/svgnumber-animation-1.html svg/animations/svgnumber-animation-2.html svg/animations/svgnumber-animation-3.html * CMakeLists.txt: Added new files to build system. * GNUmakefile.list.am: Ditto. * WebCore.gypi: Ditto. * WebCore.pro: Ditto. * WebCore.xcodeproj/project.pbxproj: Ditto. * svg/SVGAllInOne.cpp: Ditto. * svg/SVGAnimateElement.cpp: Use SVGAnimatedNumberAnimator for animations of SVGNumbers. (WebCore::SVGAnimateElement::SVGAnimateElement): (WebCore::SVGAnimateElement::calculateAnimatedValue): (WebCore::SVGAnimateElement::calculateFromAndToValues): (WebCore::SVGAnimateElement::calculateFromAndByValues): (WebCore::SVGAnimateElement::resetToBaseValue): (WebCore::SVGAnimateElement::applyResultsToTarget): (WebCore::SVGAnimateElement::calculateDistance): * svg/SVGAnimateElement.h: Remove floats for value storage. This is done by SVGAnimatedTypes now. * svg/SVGAnimatedNumber.cpp: Added. Animator for SVGNumbers. (WebCore::SVGAnimatedNumberAnimator::SVGAnimatedNumberAnimator): (WebCore::SVGAnimatedNumberAnimator::constructFromString): (WebCore::SVGAnimatedNumberAnimator::calculateFromAndToValues): (WebCore::SVGAnimatedNumberAnimator::calculateFromAndByValues): (WebCore::SVGAnimatedNumberAnimator::calculateAnimatedValue): (WebCore::SVGAnimatedNumberAnimator::calculateDistance): * svg/SVGAnimatedNumber.h: (WebCore::SVGAnimatedNumberAnimator::~SVGAnimatedNumberAnimator): * svg/SVGAnimatedType.cpp: Added. Moved content from header to cpp. (WebCore::SVGAnimatedType::SVGAnimatedType): (WebCore::SVGAnimatedType::~SVGAnimatedType): (WebCore::SVGAnimatedType::createAngle): (WebCore::SVGAnimatedType::createLength): (WebCore::SVGAnimatedType::createNumber): (WebCore::SVGAnimatedType::angle): (WebCore::SVGAnimatedType::length): (WebCore::SVGAnimatedType::number): (WebCore::SVGAnimatedType::valueAsString): (WebCore::SVGAnimatedType::setValueAsString): * svg/SVGAnimatedType.h: Removed method create(). Allways call type specific create funtcions. * svg/SVGAnimatorFactory.h: (WebCore::SVGAnimatorFactory::create): * svg/SVGParserUtilities.cpp: (WebCore::parseNumberFromString): Check if String simply consits of a number. Return false otherwise. 2011-06-19 Dirk Schulze <krit@webkit.org> Reviewed by Nikolas Zimmermann. SVGAnimatorFactory does not support SVGNumber https://bugs.webkit.org/show_bug.cgi?id=62938 Added new tests to check behavior on SVGNumber animation. * svg/animations/script-tests/svgnumber-animation-1.js: Added. (sample1): (sample2): (sample3): (executeTest): * svg/animations/script-tests/svgnumber-animation-2.js: Added. (sample1): (sample2): (sample3): (executeTest): * svg/animations/script-tests/svgnumber-animation-3.js: Added. (sample1): (sample2): (sample3): (executeTest): * svg/animations/svgnumber-animation-1-expected.txt: Added. * svg/animations/svgnumber-animation-1.html: Added. * svg/animations/svgnumber-animation-2-expected.txt: Added. * svg/animations/svgnumber-animation-2.html: Added. * svg/animations/svgnumber-animation-3-expected.txt: Added. * svg/animations/svgnumber-animation-3.html: Added. Canonical link: https://commits.webkit.org/78549@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@89220 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2011-06-19 20:11:24 +00:00
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
<html>
<head>
Change LayoutTests' s* files to use pre and post js files in LayoutTests/resources. https://bugs.webkit.org/show_bug.cgi?id=120899. Rubber stamped by Filip Pizlo. * scrollbars/rtl/div-absolute.html: * scrollbars/rtl/div-horizontal.html: * scrollbars/rtl/div-vertical.html: * security/crypto-random-values-limits.html: * security/crypto-random-values-types.html: * security/crypto-random-values.html: * storage/domstorage/clear.html: * storage/domstorage/complex-keys.html: * storage/domstorage/complex-values.html: * storage/domstorage/events/basic-body-attribute.html: * storage/domstorage/events/basic-setattribute.html: * storage/domstorage/events/basic.html: * storage/domstorage/events/case-sensitive.html: * storage/domstorage/events/script-tests/TEMPLATE.html: * storage/domstorage/localstorage/close-idle-localstorage-databases-immediately.html: * storage/domstorage/localstorage/missing-arguments.html: * storage/domstorage/localstorage/storagetracker/storage-tracker-1-prepare.html: * storage/domstorage/localstorage/storagetracker/storage-tracker-2-create.html: * storage/domstorage/localstorage/storagetracker/storage-tracker-3-delete-all.html: * storage/domstorage/localstorage/storagetracker/storage-tracker-4-create.html: * storage/domstorage/localstorage/storagetracker/storage-tracker-5-delete-one.html: * storage/domstorage/localstorage/storagetracker/storage-tracker-6-create.html: * storage/domstorage/localstorage/storagetracker/storage-tracker-7-usage.html: * storage/domstorage/quota.html: * storage/domstorage/remove-item.html: * storage/domstorage/script-tests/TEMPLATE.html: * storage/domstorage/storage-functions-not-overwritten.html: * storage/indexeddb/aborted-versionchange-closes.html: * storage/indexeddb/basics-shared-workers.html: * storage/indexeddb/basics-workers.html: * storage/indexeddb/basics.html: * storage/indexeddb/clone-exception.html: * storage/indexeddb/create-and-remove-object-store.html: * storage/indexeddb/create-object-store-options.html: * storage/indexeddb/createIndex-after-failure.html: * storage/indexeddb/createObjectStore-name-argument-required.html: * storage/indexeddb/createObjectStore-null-name.html: * storage/indexeddb/cursor-added-bug.html: * storage/indexeddb/cursor-advance-workers.html: * storage/indexeddb/cursor-advance.html: * storage/indexeddb/cursor-continue-dir.html: * storage/indexeddb/cursor-continue-validity.html: * storage/indexeddb/cursor-continue.html: * storage/indexeddb/cursor-delete.html: * storage/indexeddb/cursor-finished.html: * storage/indexeddb/cursor-inconsistency.html: * storage/indexeddb/cursor-index-delete.html: * storage/indexeddb/cursor-key-order.html: * storage/indexeddb/cursor-overloads.html: * storage/indexeddb/cursor-prev-no-duplicate.html: * storage/indexeddb/cursor-primary-key-order.html: * storage/indexeddb/cursor-properties.html: * storage/indexeddb/cursor-reverse-bug.html: * storage/indexeddb/cursor-skip-deleted.html: * storage/indexeddb/cursor-update-value-argument-required.html: * storage/indexeddb/cursor-update.html: * storage/indexeddb/cursor-value.html: * storage/indexeddb/data-corruption.html: * storage/indexeddb/database-basics.html: * storage/indexeddb/database-close.html: * storage/indexeddb/database-closepending-flag.html: * storage/indexeddb/database-deletepending-flag.html: * storage/indexeddb/database-name-undefined.html: * storage/indexeddb/database-odd-names.html: * storage/indexeddb/database-quota.html: * storage/indexeddb/database-wrapper.html: * storage/indexeddb/delete-closed-database-object.html: * storage/indexeddb/delete-in-upgradeneeded-close-in-open-success.html: * storage/indexeddb/delete-in-upgradeneeded-close-in-versionchange.html: * storage/indexeddb/delete-range.html: * storage/indexeddb/deleteIndex-bug110792.html: * storage/indexeddb/deleteIndex.html: * storage/indexeddb/deleteObjectStore-name-argument-required.html: * storage/indexeddb/deleteObjectStore-null-name.html: * storage/indexeddb/deleted-objects.html: * storage/indexeddb/deletedatabase-blocked.html: * storage/indexeddb/deletedatabase-delayed-by-open-and-versionchange-workers.html: * storage/indexeddb/deletedatabase-delayed-by-open-and-versionchange.html: * storage/indexeddb/deletedatabase-delayed-by-versionchange.html: * storage/indexeddb/deletedatabase-not-blocked.html: * storage/indexeddb/deletedatabase-transaction.html: * storage/indexeddb/dont-commit-on-blocked.html: * storage/indexeddb/dont-wedge.html: * storage/indexeddb/duplicates.html: * storage/indexeddb/error-causes-abort-by-default.html: * storage/indexeddb/events.html: * storage/indexeddb/exception-in-event-aborts.html: * storage/indexeddb/exceptions.html: * storage/indexeddb/factory-basics-workers.html: * storage/indexeddb/factory-basics.html: * storage/indexeddb/factory-cmp.html: * storage/indexeddb/factory-deletedatabase.html: * storage/indexeddb/get-keyrange.html: * storage/indexeddb/index-basics-workers.html: * storage/indexeddb/index-basics.html: * storage/indexeddb/index-count.html: * storage/indexeddb/index-cursor.html: * storage/indexeddb/index-duplicate-keypaths.html: * storage/indexeddb/index-get-key-argument-required.html: * storage/indexeddb/index-multientry.html: * storage/indexeddb/index-population.html: * storage/indexeddb/index-unique.html: * storage/indexeddb/interfaces.html: * storage/indexeddb/intversion-abort-in-initial-upgradeneeded.html: * storage/indexeddb/intversion-bad-parameters.html: * storage/indexeddb/intversion-blocked.html: * storage/indexeddb/intversion-close-between-events.html: * storage/indexeddb/intversion-close-in-oncomplete.html: * storage/indexeddb/intversion-close-in-upgradeneeded.html: * storage/indexeddb/intversion-encoding.html: * storage/indexeddb/intversion-gated-on-delete.html: * storage/indexeddb/intversion-long-queue.html: * storage/indexeddb/intversion-omit-parameter.html: * storage/indexeddb/intversion-open-in-upgradeneeded.html: * storage/indexeddb/intversion-open-with-version.html: * storage/indexeddb/intversion-persistence.html: * storage/indexeddb/intversion-revert-on-abort.html: * storage/indexeddb/intversion-two-opens-no-versions.html: * storage/indexeddb/intversion-upgrades.html: * storage/indexeddb/invalid-keys.html: * storage/indexeddb/key-generator.html: * storage/indexeddb/key-sort-order-across-types.html: * storage/indexeddb/key-sort-order-date.html: * storage/indexeddb/key-type-array.html: * storage/indexeddb/key-type-infinity.html: * storage/indexeddb/keypath-arrays.html: * storage/indexeddb/keypath-basics.html: * storage/indexeddb/keypath-edges.html: * storage/indexeddb/keypath-fetch-key.html: * storage/indexeddb/keypath-intrinsic-properties.html: * storage/indexeddb/keyrange-required-arguments.html: * storage/indexeddb/keyrange.html: * storage/indexeddb/lazy-index-population.html: * storage/indexeddb/lazy-index-types.html: * storage/indexeddb/legacy-constants.html: * storage/indexeddb/list-ordering.html: * storage/indexeddb/metadata.html: * storage/indexeddb/mozilla/add-twice-failure.html: * storage/indexeddb/mozilla/autoincrement-indexes.html: * storage/indexeddb/mozilla/bad-keypath.html: * storage/indexeddb/mozilla/clear.html: * storage/indexeddb/mozilla/create-index-unique.html: * storage/indexeddb/mozilla/create-index-with-integer-keys.html: * storage/indexeddb/mozilla/create-objectstore-basics.html: * storage/indexeddb/mozilla/create-objectstore-null-name.html: * storage/indexeddb/mozilla/cursor-mutation-objectstore-only.html: * storage/indexeddb/mozilla/cursor-mutation.html: * storage/indexeddb/mozilla/cursor-update-updates-indexes.html: * storage/indexeddb/mozilla/cursors.html: * storage/indexeddb/mozilla/delete-result.html: * storage/indexeddb/mozilla/event-source.html: * storage/indexeddb/mozilla/global-data.html: * storage/indexeddb/mozilla/index-prev-no-duplicate.html: * storage/indexeddb/mozilla/indexes.html: * storage/indexeddb/mozilla/key-requirements-delete-null-key.html: * storage/indexeddb/mozilla/key-requirements-inline-and-passed.html: * storage/indexeddb/mozilla/key-requirements-put-no-key.html: * storage/indexeddb/mozilla/key-requirements-put-null-key.html: * storage/indexeddb/mozilla/key-requirements.html: * storage/indexeddb/mozilla/object-cursors.html: * storage/indexeddb/mozilla/object-identity.html: * storage/indexeddb/mozilla/object-store-inline-autoincrement-key-added-on-put.html: * storage/indexeddb/mozilla/object-store-remove-values.html: * storage/indexeddb/mozilla/objectstorenames.html: * storage/indexeddb/mozilla/odd-result-order.html: * storage/indexeddb/mozilla/open-database-null-name.html: * storage/indexeddb/mozilla/put-get-values.html: * storage/indexeddb/mozilla/readonly-transactions.html: * storage/indexeddb/mozilla/readwrite-transactions.html: * storage/indexeddb/mozilla/readyState.html: * storage/indexeddb/mozilla/remove-index.html: * storage/indexeddb/mozilla/remove-objectstore.html: * storage/indexeddb/mozilla/resources/add-twice-failure.js: * storage/indexeddb/mozilla/resources/autoincrement-indexes.js: * storage/indexeddb/mozilla/resources/bad-keypath.js: * storage/indexeddb/mozilla/resources/clear.js: * storage/indexeddb/mozilla/resources/create-index-unique.js: * storage/indexeddb/mozilla/resources/create-index-with-integer-keys.js: * storage/indexeddb/mozilla/resources/create-objectstore-basics.js: * storage/indexeddb/mozilla/resources/create-objectstore-null-name.js: * storage/indexeddb/mozilla/resources/cursor-mutation-objectstore-only.js: * storage/indexeddb/mozilla/resources/cursor-mutation.js: * storage/indexeddb/mozilla/resources/cursor-update-updates-indexes.js: * storage/indexeddb/mozilla/resources/cursors.js: * storage/indexeddb/mozilla/resources/delete-result.js: * storage/indexeddb/mozilla/resources/event-source.js: * storage/indexeddb/mozilla/resources/global-data.js: * storage/indexeddb/mozilla/resources/indexes.js: * storage/indexeddb/mozilla/resources/key-requirements-delete-null-key.js: * storage/indexeddb/mozilla/resources/key-requirements-inline-and-passed.js: * storage/indexeddb/mozilla/resources/key-requirements-put-no-key.js: * storage/indexeddb/mozilla/resources/key-requirements-put-null-key.js: * storage/indexeddb/mozilla/resources/key-requirements.js: * storage/indexeddb/mozilla/resources/object-cursors.js: * storage/indexeddb/mozilla/resources/object-identity.js: * storage/indexeddb/mozilla/resources/object-store-inline-autoincrement-key-added-on-put.js: * storage/indexeddb/mozilla/resources/object-store-remove-values.js: * storage/indexeddb/mozilla/resources/objectstorenames.js: * storage/indexeddb/mozilla/resources/odd-result-order.js: * storage/indexeddb/mozilla/resources/open-database-null-name.js: * storage/indexeddb/mozilla/resources/put-get-values.js: * storage/indexeddb/mozilla/resources/readonly-transactions.js: * storage/indexeddb/mozilla/resources/readwrite-transactions.js: * storage/indexeddb/mozilla/resources/readyState.js: * storage/indexeddb/mozilla/resources/remove-index.js: * storage/indexeddb/mozilla/resources/remove-objectstore.js: * storage/indexeddb/mozilla/resources/versionchange-abort.js: * storage/indexeddb/mozilla/versionchange-abort.html: * storage/indexeddb/mutating-cursor.html: * storage/indexeddb/noblobs.html: * storage/indexeddb/object-lookups-in-versionchange.html: * storage/indexeddb/objectStore-required-arguments.html: * storage/indexeddb/objectstore-autoincrement.html: * storage/indexeddb/objectstore-basics-workers.html: * storage/indexeddb/objectstore-basics.html: * storage/indexeddb/objectstore-clear.html: * storage/indexeddb/objectstore-count.html: * storage/indexeddb/objectstore-cursor.html: * storage/indexeddb/objectstore-removeobjectstore.html: * storage/indexeddb/odd-strings.html: * storage/indexeddb/open-bad-versions.html: * storage/indexeddb/open-cursor.html: * storage/indexeddb/open-during-transaction.html: * storage/indexeddb/open-ordering.html: * storage/indexeddb/open-twice-workers.html: * storage/indexeddb/opencursor-key.html: * storage/indexeddb/pending-activity-workers.html: * storage/indexeddb/pending-activity.html: * storage/indexeddb/pending-version-change-on-exit.html: * storage/indexeddb/pending-version-change-stuck-works-with-terminate.html: * storage/indexeddb/pending-version-change-stuck.html: * storage/indexeddb/persistence.html: * storage/indexeddb/prefetch-bugfix-108071.html: * storage/indexeddb/queued-commands.html: * storage/indexeddb/readonly-properties.html: * storage/indexeddb/readonly.html: * storage/indexeddb/removed.html: * storage/indexeddb/request-continue-abort.html: * storage/indexeddb/request-event-propagation.html: * storage/indexeddb/resources/aborted-versionchange-closes.js: * storage/indexeddb/resources/basics.js: * storage/indexeddb/resources/create-and-remove-object-store.js: * storage/indexeddb/resources/create-object-store-options.js: * storage/indexeddb/resources/createIndex-after-failure.js: * storage/indexeddb/resources/createObjectStore-name-argument-required.js: * storage/indexeddb/resources/createObjectStore-null-name.js: * storage/indexeddb/resources/cursor-added-bug.js: * storage/indexeddb/resources/cursor-advance.js: * storage/indexeddb/resources/cursor-continue-dir.js: * storage/indexeddb/resources/cursor-continue-validity.js: * storage/indexeddb/resources/cursor-continue.js: * storage/indexeddb/resources/cursor-delete.js: * storage/indexeddb/resources/cursor-inconsistency.js: * storage/indexeddb/resources/cursor-index-delete.js: * storage/indexeddb/resources/cursor-key-order.js: * storage/indexeddb/resources/cursor-prev-no-duplicate.js: * storage/indexeddb/resources/cursor-primary-key-order.js: * storage/indexeddb/resources/cursor-properties.js: * storage/indexeddb/resources/cursor-reverse-bug.js: * storage/indexeddb/resources/cursor-skip-deleted.js: * storage/indexeddb/resources/cursor-update-value-argument-required.js: * storage/indexeddb/resources/cursor-update.js: * storage/indexeddb/resources/cursor-value.js: * storage/indexeddb/resources/data-corruption.js: * storage/indexeddb/resources/database-basics.js: * storage/indexeddb/resources/database-close.js: * storage/indexeddb/resources/database-closepending-flag.js: * storage/indexeddb/resources/database-deletepending-flag.js: * storage/indexeddb/resources/database-name-undefined.js: * storage/indexeddb/resources/database-odd-names.js: * storage/indexeddb/resources/database-quota.js: * storage/indexeddb/resources/database-wrapper.js: * storage/indexeddb/resources/delete-closed-database-object.js: * storage/indexeddb/resources/delete-in-upgradeneeded-close-in-open-success.js: * storage/indexeddb/resources/delete-in-upgradeneeded-close-in-versionchange.js: * storage/indexeddb/resources/delete-range.js: * storage/indexeddb/resources/deleteIndex.js: * storage/indexeddb/resources/deleteObjectStore-name-argument-required.js: * storage/indexeddb/resources/deleteObjectStore-null-name.js: * storage/indexeddb/resources/deleted-objects.js: * storage/indexeddb/resources/deletedatabase-blocked.js: * storage/indexeddb/resources/deletedatabase-delayed-by-open-and-versionchange.js: * storage/indexeddb/resources/deletedatabase-delayed-by-versionchange.js: * storage/indexeddb/resources/deletedatabase-not-blocked.js: * storage/indexeddb/resources/dont-commit-on-blocked-worker.js: * storage/indexeddb/resources/dont-wedge.js: * storage/indexeddb/resources/duplicates.js: * storage/indexeddb/resources/error-causes-abort-by-default.js: * storage/indexeddb/resources/events.js: * storage/indexeddb/resources/exception-in-event-aborts.js: * storage/indexeddb/resources/exceptions.js: * storage/indexeddb/resources/factory-basics.js: * storage/indexeddb/resources/factory-cmp.js: * storage/indexeddb/resources/factory-deletedatabase.js: * storage/indexeddb/resources/get-keyrange.js: * storage/indexeddb/resources/index-basics.js: * storage/indexeddb/resources/index-count.js: * storage/indexeddb/resources/index-cursor.js: * storage/indexeddb/resources/index-duplicate-keypaths.js: * storage/indexeddb/resources/index-get-key-argument-required.js: * storage/indexeddb/resources/index-multientry.js: * storage/indexeddb/resources/index-population.js: * storage/indexeddb/resources/index-unique.js: * storage/indexeddb/resources/interfaces.js: * storage/indexeddb/resources/intversion-abort-in-initial-upgradeneeded.js: * storage/indexeddb/resources/intversion-bad-parameters.js: * storage/indexeddb/resources/intversion-blocked.js: * storage/indexeddb/resources/intversion-close-between-events.js: * storage/indexeddb/resources/intversion-close-in-oncomplete.js: * storage/indexeddb/resources/intversion-close-in-upgradeneeded.js: * storage/indexeddb/resources/intversion-encoding.js: * storage/indexeddb/resources/intversion-gated-on-delete.js: * storage/indexeddb/resources/intversion-long-queue.js: * storage/indexeddb/resources/intversion-omit-parameter.js: * storage/indexeddb/resources/intversion-open-in-upgradeneeded.js: * storage/indexeddb/resources/intversion-open-with-version.js: * storage/indexeddb/resources/intversion-persistence.js: * storage/indexeddb/resources/intversion-revert-on-abort.js: * storage/indexeddb/resources/intversion-two-opens-no-versions.js: * storage/indexeddb/resources/intversion-upgrades.js: * storage/indexeddb/resources/invalid-keys.js: * storage/indexeddb/resources/key-generator.js: * storage/indexeddb/resources/key-sort-order-across-types.js: * storage/indexeddb/resources/key-sort-order-date.js: * storage/indexeddb/resources/key-type-array.js: * storage/indexeddb/resources/key-type-infinity.js: * storage/indexeddb/resources/keypath-arrays.js: * storage/indexeddb/resources/keypath-basics.js: * storage/indexeddb/resources/keypath-edges.js: * storage/indexeddb/resources/keypath-fetch-key.js: * storage/indexeddb/resources/keypath-intrinsic-properties.js: * storage/indexeddb/resources/keyrange-required-arguments.js: * storage/indexeddb/resources/keyrange.js: * storage/indexeddb/resources/lazy-index-types.js: * storage/indexeddb/resources/legacy-constants.js: * storage/indexeddb/resources/list-ordering.js: * storage/indexeddb/resources/metadata.js: * storage/indexeddb/resources/mutating-cursor.js: * storage/indexeddb/resources/objectStore-required-arguments.js: * storage/indexeddb/resources/objectstore-autoincrement.js: * storage/indexeddb/resources/objectstore-basics.js: * storage/indexeddb/resources/objectstore-clear.js: * storage/indexeddb/resources/objectstore-count.js: * storage/indexeddb/resources/objectstore-cursor.js: * storage/indexeddb/resources/objectstore-removeobjectstore.js: * storage/indexeddb/resources/odd-strings.js: * storage/indexeddb/resources/open-cursor.js: * storage/indexeddb/resources/open-during-transaction.js: * storage/indexeddb/resources/open-ordering.js: * storage/indexeddb/resources/open-twice.js: * storage/indexeddb/resources/opencursor-key.js: * storage/indexeddb/resources/pending-activity.js: * storage/indexeddb/resources/pending-version-change-on-exit.js: * storage/indexeddb/resources/pending-version-change-stuck.js: * storage/indexeddb/resources/persistence.js: * storage/indexeddb/resources/prefetch-bugfix-108071.js: * storage/indexeddb/resources/queued-commands.js: * storage/indexeddb/resources/readonly-properties.js: * storage/indexeddb/resources/readonly.js: * storage/indexeddb/resources/removed.js: * storage/indexeddb/resources/request-continue-abort.js: * storage/indexeddb/resources/request-event-propagation.js: * storage/indexeddb/resources/set_version_blocked.js: * storage/indexeddb/resources/setversion-blocked-by-versionchange-close.js: * storage/indexeddb/resources/setversion-not-blocked.js: * storage/indexeddb/resources/transaction-abort.js: * storage/indexeddb/resources/transaction-active-flag.js: * storage/indexeddb/resources/transaction-after-close.js: * storage/indexeddb/resources/transaction-and-objectstore-calls.js: * storage/indexeddb/resources/transaction-basics.js: * storage/indexeddb/resources/transaction-complete-workers.js: * storage/indexeddb/resources/transaction-coordination-across-databases.js: * storage/indexeddb/resources/transaction-coordination-within-database.js: * storage/indexeddb/resources/transaction-crash-on-abort.js: * storage/indexeddb/resources/transaction-error.js: * storage/indexeddb/resources/transaction-event-propagation.js: * storage/indexeddb/resources/transaction-read-only.js: * storage/indexeddb/resources/transaction-readwrite-exclusive.js: * storage/indexeddb/resources/transaction-rollback.js: * storage/indexeddb/resources/transaction-scope-sequencing.js: * storage/indexeddb/resources/transaction-starvation.js: * storage/indexeddb/resources/transaction-storeNames-required.js: * storage/indexeddb/resources/unblocked-version-changes.js: * storage/indexeddb/resources/unprefix.js: * storage/indexeddb/resources/value-undefined.js: * storage/indexeddb/resources/values-odd-types.js: * storage/indexeddb/resources/version-change-abort.js: * storage/indexeddb/resources/version-change-exclusive.js: * storage/indexeddb/resources/versionchangerequest-activedomobject.js: * storage/indexeddb/set_version_blocked.html: * storage/indexeddb/setversion-blocked-by-versionchange-close.html: * storage/indexeddb/setversion-not-blocked.html: * storage/indexeddb/structured-clone.html: * storage/indexeddb/transaction-abort.html: * storage/indexeddb/transaction-active-flag.html: * storage/indexeddb/transaction-after-close.html: * storage/indexeddb/transaction-and-objectstore-calls.html: * storage/indexeddb/transaction-basics.html: * storage/indexeddb/transaction-complete-with-js-recursion-cross-frame.html: * storage/indexeddb/transaction-complete-with-js-recursion.html: * storage/indexeddb/transaction-complete-workers.html: * storage/indexeddb/transaction-coordination-across-databases.html: * storage/indexeddb/transaction-coordination-within-database.html: * storage/indexeddb/transaction-crash-in-tasks.html: * storage/indexeddb/transaction-crash-on-abort.html: * storage/indexeddb/transaction-error.html: * storage/indexeddb/transaction-event-propagation.html: * storage/indexeddb/transaction-read-only.html: * storage/indexeddb/transaction-readwrite-exclusive.html: * storage/indexeddb/transaction-rollback.html: * storage/indexeddb/transaction-scope-sequencing.html: * storage/indexeddb/transaction-starvation.html: * storage/indexeddb/transaction-storeNames-required.html: * storage/indexeddb/unblocked-version-changes.html: * storage/indexeddb/unprefix-workers.html: * storage/indexeddb/unprefix.html: * storage/indexeddb/value-undefined.html: * storage/indexeddb/values-odd-types.html: * storage/indexeddb/version-change-abort.html: * storage/indexeddb/version-change-exclusive.html: * storage/indexeddb/versionchangerequest-activedomobject.html: * storage/script-tests/TEMPLATE.html: * storage/storageinfo-missing-arguments.html: * storage/storageinfo-no-callbacks.html: * storage/storageinfo-query-usage.html: * storage/storageinfo-request-quota.html: * storage/storagequota-query-usage.html: * storage/storagequota-request-quota.html: * storage/websql/execute-sql-rowsAffected.html: * svg/animations/accumulate-values-width-animation.html: * svg/animations/additive-from-to-width-animation.html: * svg/animations/additive-type-by-animation.html: * svg/animations/additive-values-width-animation.html: * svg/animations/animVal-basics.html: * svg/animations/animate-calcMode-spline-by.html: * svg/animations/animate-calcMode-spline-from-by.html: * svg/animations/animate-calcMode-spline-from-to.html: * svg/animations/animate-calcMode-spline-to.html: * svg/animations/animate-calcMode-spline-values.html: * svg/animations/animate-color-calcMode-discrete.html: * svg/animations/animate-color-fill-currentColor.html: * svg/animations/animate-color-fill-from-by.html: * svg/animations/animate-color-rgba-calcMode-discrete.html: * svg/animations/animate-color-transparent.html: * svg/animations/animate-css-xml-attributeType.html: * svg/animations/animate-currentColor.html: * svg/animations/animate-dynamic-update-attributeName.html: * svg/animations/animate-elem-02-t-drt.html: * svg/animations/animate-elem-03-t-drt.html: * svg/animations/animate-elem-04-t-drt.html: * svg/animations/animate-elem-05-t-drt.html: * svg/animations/animate-elem-06-t-drt.html: * svg/animations/animate-elem-07-t-drt.html: * svg/animations/animate-elem-08-t-drt.html: * svg/animations/animate-elem-09-t-drt.html: * svg/animations/animate-elem-10-t-drt.html: * svg/animations/animate-elem-11-t-drt.html: * svg/animations/animate-elem-12-t-drt.html: * svg/animations/animate-elem-13-t-drt.html: * svg/animations/animate-elem-14-t-drt.html: * svg/animations/animate-elem-15-t-drt.html: * svg/animations/animate-elem-16-t-drt.html: * svg/animations/animate-elem-17-t-drt.html: * svg/animations/animate-elem-18-t-drt.html: * svg/animations/animate-elem-19-t-drt.html: * svg/animations/animate-end-attribute-numeric-precision.html: * svg/animations/animate-end-attribute.html: * svg/animations/animate-endElement-beginElement.html: * svg/animations/animate-from-to-keyTimes.html: * svg/animations/animate-gradient-transform.html: * svg/animations/animate-inherit-css-property.html: * svg/animations/animate-insert-begin.html: * svg/animations/animate-insert-no-begin.html: * svg/animations/animate-keySplines.html: * svg/animations/animate-marker-orient-from-angle-to-angle.html: * svg/animations/animate-marker-orient-from-angle-to-auto.html: * svg/animations/animate-marker-orient-to-angle.html: * svg/animations/animate-mpath-insert.html: * svg/animations/animate-number-calcMode-discrete-keyTimes.html: * svg/animations/animate-number-calcMode-discrete.html: * svg/animations/animate-path-animation-Cc-Ss.html: * svg/animations/animate-path-animation-Ll-Vv-Hh.html: * svg/animations/animate-path-animation-Qq-Tt.html: * svg/animations/animate-path-animation-cC-sS-inverse.html: * svg/animations/animate-path-animation-lL-vV-hH-inverse.html: * svg/animations/animate-path-animation-qQ-tT-inverse.html: * svg/animations/animate-path-nested-transforms.html: * svg/animations/animate-path-to-animation.html: * svg/animations/animate-reset-freeze.html: * svg/animations/animate-setcurrenttime.html: * svg/animations/animate-text-nested-transforms.html: * svg/animations/animateTransform-pattern-transform.html: * svg/animations/animateTransform-translate-attributetype-auto.html: * svg/animations/animateTransform-translate-invalid-attributetype.html: * svg/animations/attributeTypes.html: * svg/animations/change-baseVal-while-animating-fill-freeze-2.html: * svg/animations/change-baseVal-while-animating-fill-freeze.html: * svg/animations/change-baseVal-while-animating-fill-remove-2.html: * svg/animations/change-baseVal-while-animating-fill-remove.html: * svg/animations/change-css-property-while-animating-fill-freeze.html: * svg/animations/change-css-property-while-animating-fill-remove.html: * svg/animations/change-target-while-animating-SVG-property.html: * svg/animations/deferred-insertion.html: * svg/animations/dynamic-modify-attributename-crash2.svg: * svg/animations/force-use-shadow-tree-recreation-while-animating.html: * svg/animations/multiple-animations-ending.html: * svg/animations/multiple-animations-fill-freeze.html: * svg/animations/multiple-begin-additive-animation.html: * svg/animations/non-additive-type-by-animation.html: * svg/animations/non-additive-type-from-by-animation.html: * svg/animations/reinserting-svg-into-document.html: * svg/animations/remove-animation-element-while-animation-is-running.html: * svg/animations/single-values-animation.html: * svg/animations/svgPreserveAspectRatio-animation-1.html: * svg/animations/svgangle-animation-deg-to-grad.html: * svg/animations/svgangle-animation-deg-to-rad.html: * svg/animations/svgangle-animation-grad-to-deg.html: * svg/animations/svgangle-animation-grad-to-rad.html: * svg/animations/svgangle-animation-rad-to-deg.html: * svg/animations/svgangle-animation-rad-to-grad.html: * svg/animations/svgboolean-animation-1.html: * svg/animations/svgenum-animation-1.html: * svg/animations/svgenum-animation-10.html: * svg/animations/svgenum-animation-11.html: * svg/animations/svgenum-animation-12.html: * svg/animations/svgenum-animation-13.html: * svg/animations/svgenum-animation-2.html: * svg/animations/svgenum-animation-3.html: * svg/animations/svgenum-animation-4.html: * svg/animations/svgenum-animation-5.html: * svg/animations/svgenum-animation-6.html: * svg/animations/svgenum-animation-7.html: * svg/animations/svgenum-animation-8.html: * svg/animations/svgenum-animation-9.html: * svg/animations/svginteger-animation-1.html: * svg/animations/svginteger-animation-2.html: * svg/animations/svglength-additive-by-1.html: * svg/animations/svglength-additive-by-2.html: * svg/animations/svglength-additive-by-3.html: * svg/animations/svglength-additive-by-4.html: * svg/animations/svglength-additive-by-5.html: * svg/animations/svglength-additive-by-6.html: * svg/animations/svglength-additive-from-by-1.html: * svg/animations/svglength-additive-from-by-2.html: * svg/animations/svglength-additive-from-by-3.html: * svg/animations/svglength-additive-from-by-4.html: * svg/animations/svglength-animation-LengthModeHeight.html: * svg/animations/svglength-animation-LengthModeOther.html: * svg/animations/svglength-animation-LengthModeWidth.html: * svg/animations/svglength-animation-invalid-value-1.html: * svg/animations/svglength-animation-invalid-value-2.html: * svg/animations/svglength-animation-invalid-value-3.html: * svg/animations/svglength-animation-number-to-number.html: * svg/animations/svglength-animation-px-to-cm.html: * svg/animations/svglength-animation-px-to-ems.html: * svg/animations/svglength-animation-px-to-exs.html: * svg/animations/svglength-animation-px-to-in.html: * svg/animations/svglength-animation-px-to-number.html: * svg/animations/svglength-animation-px-to-pc.html: * svg/animations/svglength-animation-px-to-percentage.html: * svg/animations/svglength-animation-px-to-pt.html: * svg/animations/svglength-animation-px-to-px.html: * svg/animations/svglength-animation-unitType.html: * svg/animations/svglength-animation-values.html: * svg/animations/svglengthlist-animation-1.html: * svg/animations/svglengthlist-animation-2.html: * svg/animations/svglengthlist-animation-3.html: * svg/animations/svglengthlist-animation-4.html: * svg/animations/svglengthlist-animation-5.html: * svg/animations/svgnumber-animation-1.html: * svg/animations/svgnumber-animation-2.html: * svg/animations/svgnumber-animation-3.html: * svg/animations/svgnumber-animation-4.html: * svg/animations/svgnumberlist-animation-1.html: * svg/animations/svgnumberlist-animation-2.html: * svg/animations/svgnumberoptionalnumber-animation-1.html: * svg/animations/svgnumberoptionalnumber-animation-2.html: * svg/animations/svgnumberoptionalnumber-animation-3.html: * svg/animations/svgnumberoptionalnumber-animation-4.html: * svg/animations/svgpath-animation-1.html: * svg/animations/svgpointlist-animation-1.html: * svg/animations/svgpointlist-animation-2.html: * svg/animations/svgrect-animation-1.html: * svg/animations/svgrect-animation-2.html: * svg/animations/svgstring-animation-1.html: * svg/animations/svgstring-animation-fallback-to-discrete.html: * svg/animations/svgtransform-animation-1.html: * svg/animations/svgtransform-animation-discrete.html: * svg/animations/use-animate-transform-and-position.html: * svg/as-image/svg-canvas-link-not-colored.html: * svg/as-image/svg-canvas-xhtml-tainted.html: * svg/as-image/svg-container-size-after-reload.html: * svg/as-object/embedded-svg-immediate-offsetWidth-query.html: * svg/as-object/embedded-svg-size-changes.html: * svg/as-object/nested-embedded-svg-size-changes.html: * svg/css/buffered-rendering.html: * svg/css/case-sensitive-attrname-selectors.html: * svg/css/glyph-orientation-rounding-test.xhtml: * svg/css/mask-type.html: * svg/css/rect-system-color.xhtml: * svg/css/scientific-numbers.html: * svg/css/svg-attribute-length-parsing.html: * svg/css/svg-attribute-parser-mode.html: * svg/custom/SVGException.html: * svg/custom/acid3-test-77.html: * svg/custom/currentColor-on-color.html: * svg/custom/document-all-includes-svg.html: * svg/custom/focus-event-handling-keyboard.xhtml: * svg/custom/focus-event-handling.xhtml: * svg/custom/frame-getSVGDocument.html: * svg/custom/getBoundingClientRect.xhtml: * svg/custom/getSubStringLength.html: * svg/custom/global-constructors.html: * svg/custom/immutable-properties.html: * svg/custom/invalid-length-units.html: * svg/custom/loadevents-async.html: * svg/custom/poly-parsing-error.html: * svg/custom/script-tests/TEMPLATE.html: * svg/custom/selectSubString.html: * svg/custom/svg-createsvgtransform-type.html: * svg/custom/svg-fonts-in-text-controls.html: * svg/custom/svg-getelementid.xhtml: * svg/custom/svg-modify-currentTranslate.html: * svg/custom/svg-viewBox-dynamic.html: * svg/custom/svg-xml-dom-sync.html: * svg/custom/tearoffs-with-tearoffs.html: * svg/custom/use-href-update-crash.svg: * svg/custom/use-instanceRoot-as-event-target.xhtml: * svg/custom/use-instanceRoot-event-bubbling.xhtml: * svg/custom/use-instanceRoot-event-listeners.xhtml: * svg/custom/window-named-item-lookup.html: * svg/dom/SVGAngle.html: * svg/dom/SVGAnimatedAngle.html: * svg/dom/SVGAnimatedBoolean.html: * svg/dom/SVGAnimatedEnumeration-SVGClipPathElement.html: * svg/dom/SVGAnimatedEnumeration-SVGComponentTransferFunctionElement.html: * svg/dom/SVGAnimatedEnumeration-SVGFEBlendElement.html: * svg/dom/SVGAnimatedEnumeration-SVGFEColorMatrixElement.html: * svg/dom/SVGAnimatedEnumeration-SVGFECompositeElement.html: * svg/dom/SVGAnimatedEnumeration-SVGFEConvolveMatrixElement.html: * svg/dom/SVGAnimatedEnumeration-SVGFEDisplacementMapElement.html: * svg/dom/SVGAnimatedEnumeration-SVGFEMorphologyElement.html: * svg/dom/SVGAnimatedEnumeration-SVGFETurbulenceElement.html: * svg/dom/SVGAnimatedEnumeration-SVGFilterElement.html: * svg/dom/SVGAnimatedEnumeration-SVGGradientElement.html: * svg/dom/SVGAnimatedEnumeration-SVGMarkerElement.html: * svg/dom/SVGAnimatedEnumeration-SVGMaskElement.html: * svg/dom/SVGAnimatedEnumeration-SVGPatternElement.html: * svg/dom/SVGAnimatedEnumeration-SVGTextContentElement.html: * svg/dom/SVGAnimatedEnumeration-SVGTextPathElement.html: * svg/dom/SVGAnimatedEnumeration.html: * svg/dom/SVGAnimatedInteger.html: * svg/dom/SVGAnimatedLength.html: * svg/dom/SVGAnimatedLengthList.html: * svg/dom/SVGAnimatedNumber.html: * svg/dom/SVGAnimatedNumberList.html: * svg/dom/SVGAnimatedPreserveAspectRatio.html: * svg/dom/SVGAnimatedRect.html: * svg/dom/SVGColor.html: * svg/dom/SVGLength-px-with-context.html: * svg/dom/SVGLength-px.html: * svg/dom/SVGLength.html: * svg/dom/SVGLengthList-appendItem.xhtml: * svg/dom/SVGLengthList-basics.xhtml: * svg/dom/SVGLengthList-getItem.xhtml: * svg/dom/SVGLengthList-initialize.xhtml: * svg/dom/SVGLengthList-insertItemBefore.xhtml: * svg/dom/SVGLengthList-removeItem.xhtml: * svg/dom/SVGLengthList-replaceItem.xhtml: * svg/dom/SVGLengthList-xml-dom-modifications.xhtml: * svg/dom/SVGLocatable-getCTM-svg-root.html: * svg/dom/SVGMatrix-interface.xhtml: * svg/dom/SVGMatrix.html: * svg/dom/SVGNumber.html: * svg/dom/SVGNumberList-basics.xhtml: * svg/dom/SVGPaint.html: * svg/dom/SVGPathSegList-appendItem.xhtml: * svg/dom/SVGPathSegList-clear-and-initialize.xhtml: * svg/dom/SVGPathSegList-insertItemBefore.xhtml: * svg/dom/SVGPathSegList-removeItem.xhtml: * svg/dom/SVGPathSegList-replaceItem.xhtml: * svg/dom/SVGPathSegList-xml-dom-synchronization.xhtml: * svg/dom/SVGPoint.html: * svg/dom/SVGPointList-basics.xhtml: * svg/dom/SVGPreserveAspectRatio.html: * svg/dom/SVGRect.html: * svg/dom/SVGStringList-basics.xhtml: * svg/dom/SVGStringList.html: * svg/dom/SVGStyleElement/disable-svg-style-element.html: * svg/dom/SVGStyleElement/script-tests/TEMPLATE.html: * svg/dom/SVGStyleElement/style-langspace.html: * svg/dom/SVGTransform.html: * svg/dom/SVGTransformList-basics.xhtml: * svg/dom/SVGTransformList.html: * svg/dom/SVGViewSpec-defaults.html: * svg/dom/SVGViewSpec-invalid-ref-crash.html: * svg/dom/SVGViewSpec.html: * svg/dom/altGlyph-dom.xhtml: * svg/dom/baseVal-animVal-crash.html: * svg/dom/css-transforms.xhtml: * svg/dom/feFlood-no-in1.html: * svg/dom/font-face-elements.html: * svg/dom/fuzz-path-parser.html: * svg/dom/getElementsByTagName-localName-matching.html: * svg/dom/id-reflect.html: * svg/dom/length-list-parser.html: * svg/dom/operatorAttribute.html: * svg/dom/path-parser.html: * svg/dom/path-pointAtLength.html: * svg/dom/path-segments.html: * svg/dom/path-totalLength.html: * svg/dom/points-parser.html: * svg/dom/preserve-aspect-ratio-parser.html: * svg/dom/resources/viewspec-parser.js: (continueFuzzing): * svg/dom/rgb-color-parser.html: * svg/dom/script-tests/SVGViewSpec.js: (completeTest): * svg/dom/script-tests/TEMPLATE.html: * svg/dom/string-list-parser.html: * svg/dom/style-reflect.html: * svg/dom/svg2-inheritance.html: * svg/dom/svglist-exception-on-out-bounds-error.html: * svg/dom/svglist-insertItemBefore-appends.html: * svg/dom/svgpath-getPathSegAtLength.html: * svg/dom/svgpath-out-of-bounds-getPathSeg.html: * svg/dom/text-rotate-live.html: * svg/dom/transform-parser.html: * svg/dom/viewspec-parser-1.html: * svg/dom/viewspec-parser-2.html: * svg/dom/viewspec-parser-3.html: * svg/dom/viewspec-parser-4.html: * svg/dom/viewspec-parser-5.html: * svg/dom/viewspec-parser-6.html: * svg/dom/viewspec-parser-7.html: * svg/dynamic-updates/SVG-dynamic-css-transform.html: * svg/dynamic-updates/SVGAElement-dom-href-attr.html: * svg/dynamic-updates/SVGAElement-dom-target-attr.html: * svg/dynamic-updates/SVGAElement-svgdom-href-prop.html: * svg/dynamic-updates/SVGAElement-svgdom-target-prop.html: * svg/dynamic-updates/SVGCircleElement-dom-cx-attr.html: * svg/dynamic-updates/SVGCircleElement-dom-cy-attr.html: * svg/dynamic-updates/SVGCircleElement-dom-r-attr.html: * svg/dynamic-updates/SVGCircleElement-dom-requiredFeatures.html: * svg/dynamic-updates/SVGCircleElement-svgdom-cx-prop.html: * svg/dynamic-updates/SVGCircleElement-svgdom-cy-prop.html: * svg/dynamic-updates/SVGCircleElement-svgdom-r-prop.html: * svg/dynamic-updates/SVGCircleElement-svgdom-requiredFeatures.html: * svg/dynamic-updates/SVGClipPath-influences-hitTesting.html: * svg/dynamic-updates/SVGClipPathElement-css-transform-influences-hitTesting.html: * svg/dynamic-updates/SVGClipPathElement-dom-clipPathUnits-attr.html: * svg/dynamic-updates/SVGClipPathElement-svgdom-clipPathUnits-prop.html: * svg/dynamic-updates/SVGClipPathElement-transform-influences-hitTesting.html: * svg/dynamic-updates/SVGCursorElement-dom-x-attr.html: * svg/dynamic-updates/SVGCursorElement-dom-y-attr.html: * svg/dynamic-updates/SVGCursorElement-svgdom-x-prop.html: * svg/dynamic-updates/SVGCursorElement-svgdom-y-prop.html: * svg/dynamic-updates/SVGEllipseElement-dom-cx-attr.html: * svg/dynamic-updates/SVGEllipseElement-dom-cy-attr.html: * svg/dynamic-updates/SVGEllipseElement-dom-requiredFeatures.html: * svg/dynamic-updates/SVGEllipseElement-dom-rx-attr.html: * svg/dynamic-updates/SVGEllipseElement-dom-ry-attr.html: * svg/dynamic-updates/SVGEllipseElement-svgdom-cx-prop.html: * svg/dynamic-updates/SVGEllipseElement-svgdom-cy-prop.html: * svg/dynamic-updates/SVGEllipseElement-svgdom-requiredFeatures.html: * svg/dynamic-updates/SVGEllipseElement-svgdom-rx-prop.html: * svg/dynamic-updates/SVGEllipseElement-svgdom-ry-prop.html: * svg/dynamic-updates/SVGFEBlendElement-dom-in-attr.html: * svg/dynamic-updates/SVGFEBlendElement-dom-in2-attr.html: * svg/dynamic-updates/SVGFEBlendElement-dom-mode-attr.html: * svg/dynamic-updates/SVGFEBlendElement-svgdom-in-prop.html: * svg/dynamic-updates/SVGFEBlendElement-svgdom-in2-prop.html: * svg/dynamic-updates/SVGFEBlendElement-svgdom-mode-prop.html: * svg/dynamic-updates/SVGFEColorMatrixElement-dom-in-attr.html: * svg/dynamic-updates/SVGFEColorMatrixElement-dom-type-attr.html: * svg/dynamic-updates/SVGFEColorMatrixElement-dom-values-attr.html: * svg/dynamic-updates/SVGFEColorMatrixElement-svgdom-in-prop.html: * svg/dynamic-updates/SVGFEColorMatrixElement-svgdom-type-prop.html: * svg/dynamic-updates/SVGFEColorMatrixElement-svgdom-values-prop.html: * svg/dynamic-updates/SVGFEComponentTransferElement-dom-amplitude-attr.html: * svg/dynamic-updates/SVGFEComponentTransferElement-dom-exponent-attr.html: * svg/dynamic-updates/SVGFEComponentTransferElement-dom-intercept-attr.html: * svg/dynamic-updates/SVGFEComponentTransferElement-dom-offset-attr.html: * svg/dynamic-updates/SVGFEComponentTransferElement-dom-slope-attr.html: * svg/dynamic-updates/SVGFEComponentTransferElement-dom-tableValues-attr.html: * svg/dynamic-updates/SVGFEComponentTransferElement-dom-type-attr.html: * svg/dynamic-updates/SVGFEComponentTransferElement-svgdom-amplitude-prop.html: * svg/dynamic-updates/SVGFEComponentTransferElement-svgdom-exponent-prop.html: * svg/dynamic-updates/SVGFEComponentTransferElement-svgdom-intercept-prop.html: * svg/dynamic-updates/SVGFEComponentTransferElement-svgdom-offset-prop.html: * svg/dynamic-updates/SVGFEComponentTransferElement-svgdom-slope-prop.html: * svg/dynamic-updates/SVGFEComponentTransferElement-svgdom-tableValues-prop.html: * svg/dynamic-updates/SVGFEComponentTransferElement-svgdom-type-prop.html: * svg/dynamic-updates/SVGFECompositeElement-dom-in-attr.html: * svg/dynamic-updates/SVGFECompositeElement-dom-in2-attr.html: * svg/dynamic-updates/SVGFECompositeElement-dom-k1-attr.html: * svg/dynamic-updates/SVGFECompositeElement-dom-k2-attr.html: * svg/dynamic-updates/SVGFECompositeElement-dom-k3-attr.html: * svg/dynamic-updates/SVGFECompositeElement-dom-k4-attr.html: * svg/dynamic-updates/SVGFECompositeElement-dom-operator-attr.html: * svg/dynamic-updates/SVGFECompositeElement-svgdom-in-prop.html: * svg/dynamic-updates/SVGFECompositeElement-svgdom-in2-prop.html: * svg/dynamic-updates/SVGFECompositeElement-svgdom-k1-prop.html: * svg/dynamic-updates/SVGFECompositeElement-svgdom-k2-prop.html: * svg/dynamic-updates/SVGFECompositeElement-svgdom-k3-prop.html: * svg/dynamic-updates/SVGFECompositeElement-svgdom-k4-prop.html: * svg/dynamic-updates/SVGFECompositeElement-svgdom-operator-prop.html: * svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-bias-attr.html: * svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-divisor-attr.html: * svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-edgeMode-attr.html: * svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-in-attr.html: * svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-kernelMatrix-attr.html: * svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-kernelUnitLength-attr.html: * svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-order-attr.html: * svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-preserveAlpha-attr.html: * svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-targetX-attr.html: * svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-targetY-attr.html: * svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-bias-prop.html: * svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-divisor-prop.html: * svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-edgeMode-prop.html: * svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-in-prop.html: * svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-kernelMatrix-prop.html: * svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-kernelUnitLength-prop.html: * svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-order-prop.html: * svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-preserveAlpha-prop.html: * svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-targetX-prop.html: * svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-targetY-prop.html: * svg/dynamic-updates/SVGFEDiffuseLightingElement-dom-diffuseConstant-attr.html: * svg/dynamic-updates/SVGFEDiffuseLightingElement-dom-in-attr.html: * svg/dynamic-updates/SVGFEDiffuseLightingElement-dom-lighting-color-attr.html: * svg/dynamic-updates/SVGFEDiffuseLightingElement-dom-surfaceScale-attr.html: * svg/dynamic-updates/SVGFEDiffuseLightingElement-inherit-lighting-color-css-prop.html: * svg/dynamic-updates/SVGFEDiffuseLightingElement-lighting-color-css-prop.html: * svg/dynamic-updates/SVGFEDiffuseLightingElement-svgdom-diffuseConstant-prop.html: * svg/dynamic-updates/SVGFEDiffuseLightingElement-svgdom-in-prop.html: * svg/dynamic-updates/SVGFEDiffuseLightingElement-svgdom-surfaceScale-prop.html: * svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in-attr.html: * svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in2-attr.html: * svg/dynamic-updates/SVGFEDisplacementMapElement-dom-scale-attr.html: * svg/dynamic-updates/SVGFEDisplacementMapElement-dom-xChannelSelector-attr.html: * svg/dynamic-updates/SVGFEDisplacementMapElement-dom-yChannelSelector-attr.html: * svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in-prop.html: * svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in2-prop.html: * svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-scale-prop.html: * svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-xChannelSelector-prop.html: * svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-yChannelSelector-prop.html: * svg/dynamic-updates/SVGFEDistantLightElement-dom-azimuth-attr.html: * svg/dynamic-updates/SVGFEDistantLightElement-dom-elevation-attr.html: * svg/dynamic-updates/SVGFEDistantLightElement-svgdom-azimuth-prop.html: * svg/dynamic-updates/SVGFEDistantLightElement-svgdom-elevation-prop.html: * svg/dynamic-updates/SVGFEDropShadowElement-dom-dx-attr.html: * svg/dynamic-updates/SVGFEDropShadowElement-dom-dy-attr.html: * svg/dynamic-updates/SVGFEDropShadowElement-dom-in-attr.html: * svg/dynamic-updates/SVGFEDropShadowElement-dom-shadow-color-attr.html: * svg/dynamic-updates/SVGFEDropShadowElement-dom-shadow-opacity-attr.html: * svg/dynamic-updates/SVGFEDropShadowElement-dom-stdDeviation-attr.html: * svg/dynamic-updates/SVGFEDropShadowElement-svgdom-dx-prop.html: * svg/dynamic-updates/SVGFEDropShadowElement-svgdom-dy-prop.html: * svg/dynamic-updates/SVGFEDropShadowElement-svgdom-in-prop.html: * svg/dynamic-updates/SVGFEDropShadowElement-svgdom-shadow-color-prop.html: * svg/dynamic-updates/SVGFEDropShadowElement-svgdom-shadow-opacity-prop.html: * svg/dynamic-updates/SVGFEDropShadowElement-svgdom-stdDeviation-prop.html: * svg/dynamic-updates/SVGFEFloodElement-dom-flood-color-attr.html: * svg/dynamic-updates/SVGFEFloodElement-dom-flood-opacity-attr.html: * svg/dynamic-updates/SVGFEFloodElement-inherit-flood-color.html: * svg/dynamic-updates/SVGFEFloodElement-svgdom-flood-color-prop.html: * svg/dynamic-updates/SVGFEFloodElement-svgdom-flood-opacity-prop.html: * svg/dynamic-updates/SVGFEGaussianBlurElement-dom-edgeMode-attr.html: * svg/dynamic-updates/SVGFEGaussianBlurElement-dom-in-attr.html: * svg/dynamic-updates/SVGFEGaussianBlurElement-dom-stdDeviation-attr.html: * svg/dynamic-updates/SVGFEGaussianBlurElement-dom-stdDeviation-call.html: * svg/dynamic-updates/SVGFEGaussianBlurElement-svgdom-edgeMode-prop.html: * svg/dynamic-updates/SVGFEGaussianBlurElement-svgdom-in-prop.html: * svg/dynamic-updates/SVGFEImageElement-dom-preserveAspectRatio-attr.html: * svg/dynamic-updates/SVGFEImageElement-svgdom-preserveAspectRatio-prop.html: * svg/dynamic-updates/SVGFEMergeNodeElement-dom-in-attr.html: * svg/dynamic-updates/SVGFEMergeNodeElement-svgdom-in-prop.html: * svg/dynamic-updates/SVGFEMorphologyElement-dom-in-attr.html: * svg/dynamic-updates/SVGFEMorphologyElement-dom-operator-attr.html: * svg/dynamic-updates/SVGFEMorphologyElement-dom-radius-attr.html: * svg/dynamic-updates/SVGFEMorphologyElement-svgdom-in-prop.html: * svg/dynamic-updates/SVGFEMorphologyElement-svgdom-operator-prop.html: * svg/dynamic-updates/SVGFEMorphologyElement-svgdom-radius-call.html: * svg/dynamic-updates/SVGFEOffsetElement-dom-dx-attr.html: * svg/dynamic-updates/SVGFEOffsetElement-dom-dy-attr.html: * svg/dynamic-updates/SVGFEOffsetElement-dom-in-attr.html: * svg/dynamic-updates/SVGFEOffsetElement-svgdom-dx-prop.html: * svg/dynamic-updates/SVGFEOffsetElement-svgdom-dy-prop.html: * svg/dynamic-updates/SVGFEOffsetElement-svgdom-in-prop.html: * svg/dynamic-updates/SVGFEPointLightElement-dom-x-attr.html: * svg/dynamic-updates/SVGFEPointLightElement-dom-y-attr.html: * svg/dynamic-updates/SVGFEPointLightElement-dom-z-attr.html: * svg/dynamic-updates/SVGFEPointLightElement-svgdom-x-prop.html: * svg/dynamic-updates/SVGFEPointLightElement-svgdom-y-prop.html: * svg/dynamic-updates/SVGFEPointLightElement-svgdom-z-prop.html: * svg/dynamic-updates/SVGFESpecularLightingElement-dom-in-attr.html: * svg/dynamic-updates/SVGFESpecularLightingElement-dom-specularConstant-attr.html: * svg/dynamic-updates/SVGFESpecularLightingElement-dom-specularExponent-attr.html: * svg/dynamic-updates/SVGFESpecularLightingElement-dom-suraceScale-attr.html: * svg/dynamic-updates/SVGFESpecularLightingElement-inherit-lighting-color-css-prop.html: * svg/dynamic-updates/SVGFESpecularLightingElement-lighting-color-css-prop.html: * svg/dynamic-updates/SVGFESpecularLightingElement-remove-lightSource.html: * svg/dynamic-updates/SVGFESpecularLightingElement-svgdom-in-prop.html: * svg/dynamic-updates/SVGFESpecularLightingElement-svgdom-specularConstant-prop.html: * svg/dynamic-updates/SVGFESpecularLightingElement-svgdom-specularExponent-prop.html: * svg/dynamic-updates/SVGFESpecularLightingElement-svgdom-suraceScale-prop.html: * svg/dynamic-updates/SVGFESpotLightElement-dom-limitingConeAngle-attr.html: * svg/dynamic-updates/SVGFESpotLightElement-dom-pointsAtX-attr.html: * svg/dynamic-updates/SVGFESpotLightElement-dom-pointsAtY-attr.html: * svg/dynamic-updates/SVGFESpotLightElement-dom-pointsAtZ-attr.html: * svg/dynamic-updates/SVGFESpotLightElement-dom-specularExponent-attr.html: * svg/dynamic-updates/SVGFESpotLightElement-dom-x-attr.html: * svg/dynamic-updates/SVGFESpotLightElement-dom-y-attr.html: * svg/dynamic-updates/SVGFESpotLightElement-dom-z-attr.html: * svg/dynamic-updates/SVGFESpotLightElement-svgdom-limitingConeAngle-prop.html: * svg/dynamic-updates/SVGFESpotLightElement-svgdom-pointsAtX-prop.html: * svg/dynamic-updates/SVGFESpotLightElement-svgdom-pointsAtY-prop.html: * svg/dynamic-updates/SVGFESpotLightElement-svgdom-pointsAtZ-prop.html: * svg/dynamic-updates/SVGFESpotLightElement-svgdom-specularExponent-prop.html: * svg/dynamic-updates/SVGFESpotLightElement-svgdom-x-prop.html: * svg/dynamic-updates/SVGFESpotLightElement-svgdom-y-prop.html: * svg/dynamic-updates/SVGFESpotLightElement-svgdom-z-prop.html: * svg/dynamic-updates/SVGFETileElement-dom-in-attr.html: * svg/dynamic-updates/SVGFETileElement-svgdom-in-prop.html: * svg/dynamic-updates/SVGFETurbulenceElement-dom-baseFrequency-attr.html: * svg/dynamic-updates/SVGFETurbulenceElement-dom-numOctaves-attr.html: * svg/dynamic-updates/SVGFETurbulenceElement-dom-seed-attr.html: * svg/dynamic-updates/SVGFETurbulenceElement-dom-stitchTiles-attr.html: * svg/dynamic-updates/SVGFETurbulenceElement-dom-type-attr.html: * svg/dynamic-updates/SVGFETurbulenceElement-svgdom-baseFrequency-prop.html: * svg/dynamic-updates/SVGFETurbulenceElement-svgdom-numOctaves-prop.html: * svg/dynamic-updates/SVGFETurbulenceElement-svgdom-seed-prop.html: * svg/dynamic-updates/SVGFETurbulenceElement-svgdom-stitchTiles-prop.html: * svg/dynamic-updates/SVGFETurbulenceElement-svgdom-type-prop.html: * svg/dynamic-updates/SVGFilterElement-dom-filterRes-attr.html: * svg/dynamic-updates/SVGFilterElement-dom-filterUnits-attr.html: * svg/dynamic-updates/SVGFilterElement-dom-height-attr.html: * svg/dynamic-updates/SVGFilterElement-dom-primitiveUnits-attr.html: * svg/dynamic-updates/SVGFilterElement-dom-width-attr.html: * svg/dynamic-updates/SVGFilterElement-dom-x-attr.html: * svg/dynamic-updates/SVGFilterElement-dom-y-attr.html: * svg/dynamic-updates/SVGFilterElement-svgdom-filterRes-call.html: * svg/dynamic-updates/SVGFilterElement-svgdom-filterResX-prop.html: * svg/dynamic-updates/SVGFilterElement-svgdom-filterResY-prop.html: * svg/dynamic-updates/SVGFilterElement-svgdom-filterUnits-prop.html: * svg/dynamic-updates/SVGFilterElement-svgdom-height-prop.html: * svg/dynamic-updates/SVGFilterElement-svgdom-primitiveUnits-prop.html: * svg/dynamic-updates/SVGFilterElement-svgdom-width-prop.html: * svg/dynamic-updates/SVGFilterElement-svgdom-x-prop.html: * svg/dynamic-updates/SVGFilterElement-svgdom-y-prop.html: * svg/dynamic-updates/SVGFilterPrimitiveStandardAttributes-dom-height-attr.html: * svg/dynamic-updates/SVGFilterPrimitiveStandardAttributes-dom-result-attr.html: * svg/dynamic-updates/SVGFilterPrimitiveStandardAttributes-dom-width-attr.html: * svg/dynamic-updates/SVGFilterPrimitiveStandardAttributes-dom-x-attr.html: * svg/dynamic-updates/SVGFilterPrimitiveStandardAttributes-dom-y-attr.html: * svg/dynamic-updates/SVGFilterPrimitiveStandardAttributes-svgdom-height-prop.html: * svg/dynamic-updates/SVGFilterPrimitiveStandardAttributes-svgdom-result-prop.html: * svg/dynamic-updates/SVGFilterPrimitiveStandardAttributes-svgdom-width-prop.html: * svg/dynamic-updates/SVGFilterPrimitiveStandardAttributes-svgdom-x-prop.html: * svg/dynamic-updates/SVGFilterPrimitiveStandardAttributes-svgdom-y-prop.html: * svg/dynamic-updates/SVGForeignObjectElement-dom-height-attr.html: * svg/dynamic-updates/SVGForeignObjectElement-dom-requiredFeatures.html: * svg/dynamic-updates/SVGForeignObjectElement-dom-width-attr.html: * svg/dynamic-updates/SVGForeignObjectElement-dom-x-attr.html: * svg/dynamic-updates/SVGForeignObjectElement-dom-y-attr.html: * svg/dynamic-updates/SVGForeignObjectElement-svgdom-height-prop.html: * svg/dynamic-updates/SVGForeignObjectElement-svgdom-requiredFeatures.html: * svg/dynamic-updates/SVGForeignObjectElement-svgdom-width-prop.html: * svg/dynamic-updates/SVGForeignObjectElement-svgdom-x-prop.html: * svg/dynamic-updates/SVGForeignObjectElement-svgdom-y-prop.html: * svg/dynamic-updates/SVGGElement-dom-requiredFeatures.html: * svg/dynamic-updates/SVGGElement-svgdom-requiredFeatures.html: * svg/dynamic-updates/SVGImageElement-dom-height-attr.html: * svg/dynamic-updates/SVGImageElement-dom-preserveAspectRatio-attr.html: * svg/dynamic-updates/SVGImageElement-dom-requiredFeatures.html: * svg/dynamic-updates/SVGImageElement-dom-width-attr.html: * svg/dynamic-updates/SVGImageElement-dom-x-attr.html: * svg/dynamic-updates/SVGImageElement-dom-y-attr.html: * svg/dynamic-updates/SVGImageElement-svgdom-height-prop.html: * svg/dynamic-updates/SVGImageElement-svgdom-preserveAspectRatio-prop.html: * svg/dynamic-updates/SVGImageElement-svgdom-requiredFeatures.html: * svg/dynamic-updates/SVGImageElement-svgdom-width-prop.html: * svg/dynamic-updates/SVGImageElement-svgdom-x-prop.html: * svg/dynamic-updates/SVGImageElement-svgdom-y-prop.html: * svg/dynamic-updates/SVGLineElement-dom-requiredFeatures.html: * svg/dynamic-updates/SVGLineElement-dom-x1-attr.html: * svg/dynamic-updates/SVGLineElement-dom-x2-attr.html: * svg/dynamic-updates/SVGLineElement-dom-y1-attr.html: * svg/dynamic-updates/SVGLineElement-dom-y2-attr.html: * svg/dynamic-updates/SVGLineElement-svgdom-requiredFeatures.html: * svg/dynamic-updates/SVGLineElement-svgdom-x1-prop.html: * svg/dynamic-updates/SVGLineElement-svgdom-x2-prop.html: * svg/dynamic-updates/SVGLineElement-svgdom-y1-prop.html: * svg/dynamic-updates/SVGLineElement-svgdom-y2-prop.html: * svg/dynamic-updates/SVGLinearGradientElement-dom-gradientTransform-attr.html: * svg/dynamic-updates/SVGLinearGradientElement-dom-gradientUnits-attr.html: * svg/dynamic-updates/SVGLinearGradientElement-dom-x1-attr.html: * svg/dynamic-updates/SVGLinearGradientElement-dom-x2-attr.html: * svg/dynamic-updates/SVGLinearGradientElement-dom-y1-attr.html: * svg/dynamic-updates/SVGLinearGradientElement-dom-y2-attr.html: * svg/dynamic-updates/SVGLinearGradientElement-svgdom-gradientTransform-prop.html: * svg/dynamic-updates/SVGLinearGradientElement-svgdom-gradientUnits-prop.html: * svg/dynamic-updates/SVGLinearGradientElement-svgdom-x1-prop.html: * svg/dynamic-updates/SVGLinearGradientElement-svgdom-x2-prop.html: * svg/dynamic-updates/SVGLinearGradientElement-svgdom-y1-prop.html: * svg/dynamic-updates/SVGLinearGradientElement-svgdom-y2-prop.html: * svg/dynamic-updates/SVGMarkerElement-dom-markerHeight-attr.html: * svg/dynamic-updates/SVGMarkerElement-dom-markerUnits-attr.html: * svg/dynamic-updates/SVGMarkerElement-dom-markerWidth-attr.html: * svg/dynamic-updates/SVGMarkerElement-dom-orient-attr.html: * svg/dynamic-updates/SVGMarkerElement-dom-refX-attr.html: * svg/dynamic-updates/SVGMarkerElement-dom-refY-attr.html: * svg/dynamic-updates/SVGMarkerElement-svgdom-markerHeight-prop.html: * svg/dynamic-updates/SVGMarkerElement-svgdom-markerUnits-prop.html: * svg/dynamic-updates/SVGMarkerElement-svgdom-markerWidth-prop.html: * svg/dynamic-updates/SVGMarkerElement-svgdom-orientAngle-prop.html: * svg/dynamic-updates/SVGMarkerElement-svgdom-orientType-prop.html: * svg/dynamic-updates/SVGMarkerElement-svgdom-refX-prop.html: * svg/dynamic-updates/SVGMarkerElement-svgdom-refY-prop.html: * svg/dynamic-updates/SVGMarkerElement-svgdom-setOrientToAngle-call.html: * svg/dynamic-updates/SVGMarkerElement-svgdom-setOrientToAuto-call.html: * svg/dynamic-updates/SVGMaskElement-dom-height-attr.html: * svg/dynamic-updates/SVGMaskElement-dom-maskContentUnits-attr.html: * svg/dynamic-updates/SVGMaskElement-dom-maskUnits-attr.html: * svg/dynamic-updates/SVGMaskElement-dom-width-attr.html: * svg/dynamic-updates/SVGMaskElement-dom-x-attr.html: * svg/dynamic-updates/SVGMaskElement-dom-y-attr.html: * svg/dynamic-updates/SVGMaskElement-svgdom-height-prop.html: * svg/dynamic-updates/SVGMaskElement-svgdom-maskContentUnits-prop.html: * svg/dynamic-updates/SVGMaskElement-svgdom-maskUnits-prop.html: * svg/dynamic-updates/SVGMaskElement-svgdom-width-prop.html: * svg/dynamic-updates/SVGMaskElement-svgdom-x-prop.html: * svg/dynamic-updates/SVGMaskElement-svgdom-y-prop.html: * svg/dynamic-updates/SVGPathElement-dom-requiredFeatures.html: * svg/dynamic-updates/SVGPathElement-svgdom-requiredFeatures.html: * svg/dynamic-updates/SVGPatternElement-dom-height-attr.html: * svg/dynamic-updates/SVGPatternElement-dom-patternContentUnits-attr.html: * svg/dynamic-updates/SVGPatternElement-dom-patternTransform-attr.html: * svg/dynamic-updates/SVGPatternElement-dom-patternUnits-attr.html: * svg/dynamic-updates/SVGPatternElement-dom-width-attr.html: * svg/dynamic-updates/SVGPatternElement-dom-x-attr.html: * svg/dynamic-updates/SVGPatternElement-dom-y-attr.html: * svg/dynamic-updates/SVGPatternElement-svgdom-height-prop.html: * svg/dynamic-updates/SVGPatternElement-svgdom-patternContentUnits-prop.html: * svg/dynamic-updates/SVGPatternElement-svgdom-patternTransform-prop.html: * svg/dynamic-updates/SVGPatternElement-svgdom-patternUnits-prop.html: * svg/dynamic-updates/SVGPatternElement-svgdom-width-prop.html: * svg/dynamic-updates/SVGPatternElement-svgdom-x-prop.html: * svg/dynamic-updates/SVGPatternElement-svgdom-y-prop.html: * svg/dynamic-updates/SVGPolygonElement-dom-requiredFeatures.html: * svg/dynamic-updates/SVGPolygonElement-svgdom-requiredFeatures.html: * svg/dynamic-updates/SVGPolylineElement-dom-requiredFeatures.html: * svg/dynamic-updates/SVGPolylineElement-svgdom-requiredFeatures.html: * svg/dynamic-updates/SVGRadialGradientElement-dom-cx-attr.html: * svg/dynamic-updates/SVGRadialGradientElement-dom-cy-attr.html: * svg/dynamic-updates/SVGRadialGradientElement-dom-fx-attr.html: * svg/dynamic-updates/SVGRadialGradientElement-dom-fy-attr.html: * svg/dynamic-updates/SVGRadialGradientElement-dom-gradientTransform-attr.html: * svg/dynamic-updates/SVGRadialGradientElement-dom-gradientUnits-attr.html: * svg/dynamic-updates/SVGRadialGradientElement-dom-r-attr.html: * svg/dynamic-updates/SVGRadialGradientElement-svgdom-cx-prop.html: * svg/dynamic-updates/SVGRadialGradientElement-svgdom-cy-prop.html: * svg/dynamic-updates/SVGRadialGradientElement-svgdom-fx-prop.html: * svg/dynamic-updates/SVGRadialGradientElement-svgdom-fy-prop.html: * svg/dynamic-updates/SVGRadialGradientElement-svgdom-gradientTransform-prop.html: * svg/dynamic-updates/SVGRadialGradientElement-svgdom-gradientUnits-prop.html: * svg/dynamic-updates/SVGRadialGradientElement-svgdom-r-prop.html: * svg/dynamic-updates/SVGRectElement-dom-height-attr.html: * svg/dynamic-updates/SVGRectElement-dom-requiredFeatures.html: * svg/dynamic-updates/SVGRectElement-dom-width-attr.html: * svg/dynamic-updates/SVGRectElement-dom-x-attr.html: * svg/dynamic-updates/SVGRectElement-dom-y-attr.html: * svg/dynamic-updates/SVGRectElement-svgdom-height-prop.html: * svg/dynamic-updates/SVGRectElement-svgdom-requiredFeatures.html: * svg/dynamic-updates/SVGRectElement-svgdom-width-prop.html: * svg/dynamic-updates/SVGRectElement-svgdom-x-prop.html: * svg/dynamic-updates/SVGRectElement-svgdom-y-prop.html: * svg/dynamic-updates/SVGSVGElement-dom-requiredFeatures.html: * svg/dynamic-updates/SVGSVGElement-svgdom-requiredFeatures.html: * svg/dynamic-updates/SVGTRefElement-dom-href-attr.html: * svg/dynamic-updates/SVGTextElement-dom-dx-attr.html: * svg/dynamic-updates/SVGTextElement-dom-dy-attr.html: * svg/dynamic-updates/SVGTextElement-dom-lengthAdjust-attr.html: * svg/dynamic-updates/SVGTextElement-dom-requiredFeatures.html: * svg/dynamic-updates/SVGTextElement-dom-rotate-attr.html: * svg/dynamic-updates/SVGTextElement-dom-textLength-attr.html: * svg/dynamic-updates/SVGTextElement-dom-transform-attr.html: * svg/dynamic-updates/SVGTextElement-dom-x-attr.html: * svg/dynamic-updates/SVGTextElement-dom-y-attr.html: * svg/dynamic-updates/SVGTextElement-svgdom-dx-prop.html: * svg/dynamic-updates/SVGTextElement-svgdom-dy-prop.html: * svg/dynamic-updates/SVGTextElement-svgdom-lengthAdjust-prop.html: * svg/dynamic-updates/SVGTextElement-svgdom-requiredFeatures.html: * svg/dynamic-updates/SVGTextElement-svgdom-rotate-prop.html: * svg/dynamic-updates/SVGTextElement-svgdom-textLength-prop.html: * svg/dynamic-updates/SVGTextElement-svgdom-transform-prop.html: * svg/dynamic-updates/SVGTextElement-svgdom-x-prop.html: * svg/dynamic-updates/SVGTextElement-svgdom-y-prop.html: * svg/dynamic-updates/SVGUseElement-dom-href1-attr.html: * svg/dynamic-updates/SVGUseElement-dom-href2-attr.html: * svg/dynamic-updates/SVGUseElement-dom-requiredFeatures.html: * svg/dynamic-updates/SVGUseElement-svgdom-href1-prop.html: * svg/dynamic-updates/SVGUseElement-svgdom-href2-prop.html: * svg/dynamic-updates/SVGUseElement-svgdom-requiredFeatures.html: * svg/dynamic-updates/resources/SVGTestCase.js: (completeTest): * svg/foreignObject/absolute-position-foreign-object-child-crash.html: * svg/in-html/script-external.html: * svg/in-html/script-nested.html: * svg/in-html/script-write.html: * svg/in-html/script.html: * svg/text/lengthAdjust-text-metrics.html: * svg/text/script-tests/TEMPLATE.html: * svg/text/text-rect-precision.html: * svg/zoom/page/zoom-get-screen-ctm.html: * svg/zoom/page/zoom-getBoundingClientRect.xhtml: * svg/zoom/page/zoom-zoom-coords.xhtml: * svg/zoom/resources/testPageZoom.js: (completeDynamicTest): Canonical link: https://commits.webkit.org/138888@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@155284 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2013-09-08 05:29:22 +00:00
<script src="../../resources/js-test-pre.js"></script>
2011-06-19 Dirk Schulze <krit@webkit.org> Reviewed by Nikolas Zimmermann. SVGAnimatorFactory does not support SVGNumber https://bugs.webkit.org/show_bug.cgi?id=62938 Follow up of "SVGAnimation should use direct unit animation for SVGLength": https://bugs.webkit.org/show_bug.cgi?id=61368 This patch continues the conversion to the new concept of SVGAnimatorFactory with SVGNumber. With the new animator for the With the new animator for SVGNumber we also support the scientific notation, and everything else that's supported by the SVGNumber parsing, removing the SVGAnimate* specific number parsing functionality. Moving the content of SVGAnimatedType header into its own cpp. Changed behavior of parseNumberFromString(). It checks if the String simply consits of a number now. parseNumberFromString() is using genericParseNumber() for parsing numbers. But this method just stops at the first char that does not belong to a number and returns true. I added a check if the current char pointer is at the last char of the String and return false if not. Tests: svg/animations/svgnumber-animation-1.html svg/animations/svgnumber-animation-2.html svg/animations/svgnumber-animation-3.html * CMakeLists.txt: Added new files to build system. * GNUmakefile.list.am: Ditto. * WebCore.gypi: Ditto. * WebCore.pro: Ditto. * WebCore.xcodeproj/project.pbxproj: Ditto. * svg/SVGAllInOne.cpp: Ditto. * svg/SVGAnimateElement.cpp: Use SVGAnimatedNumberAnimator for animations of SVGNumbers. (WebCore::SVGAnimateElement::SVGAnimateElement): (WebCore::SVGAnimateElement::calculateAnimatedValue): (WebCore::SVGAnimateElement::calculateFromAndToValues): (WebCore::SVGAnimateElement::calculateFromAndByValues): (WebCore::SVGAnimateElement::resetToBaseValue): (WebCore::SVGAnimateElement::applyResultsToTarget): (WebCore::SVGAnimateElement::calculateDistance): * svg/SVGAnimateElement.h: Remove floats for value storage. This is done by SVGAnimatedTypes now. * svg/SVGAnimatedNumber.cpp: Added. Animator for SVGNumbers. (WebCore::SVGAnimatedNumberAnimator::SVGAnimatedNumberAnimator): (WebCore::SVGAnimatedNumberAnimator::constructFromString): (WebCore::SVGAnimatedNumberAnimator::calculateFromAndToValues): (WebCore::SVGAnimatedNumberAnimator::calculateFromAndByValues): (WebCore::SVGAnimatedNumberAnimator::calculateAnimatedValue): (WebCore::SVGAnimatedNumberAnimator::calculateDistance): * svg/SVGAnimatedNumber.h: (WebCore::SVGAnimatedNumberAnimator::~SVGAnimatedNumberAnimator): * svg/SVGAnimatedType.cpp: Added. Moved content from header to cpp. (WebCore::SVGAnimatedType::SVGAnimatedType): (WebCore::SVGAnimatedType::~SVGAnimatedType): (WebCore::SVGAnimatedType::createAngle): (WebCore::SVGAnimatedType::createLength): (WebCore::SVGAnimatedType::createNumber): (WebCore::SVGAnimatedType::angle): (WebCore::SVGAnimatedType::length): (WebCore::SVGAnimatedType::number): (WebCore::SVGAnimatedType::valueAsString): (WebCore::SVGAnimatedType::setValueAsString): * svg/SVGAnimatedType.h: Removed method create(). Allways call type specific create funtcions. * svg/SVGAnimatorFactory.h: (WebCore::SVGAnimatorFactory::create): * svg/SVGParserUtilities.cpp: (WebCore::parseNumberFromString): Check if String simply consits of a number. Return false otherwise. 2011-06-19 Dirk Schulze <krit@webkit.org> Reviewed by Nikolas Zimmermann. SVGAnimatorFactory does not support SVGNumber https://bugs.webkit.org/show_bug.cgi?id=62938 Added new tests to check behavior on SVGNumber animation. * svg/animations/script-tests/svgnumber-animation-1.js: Added. (sample1): (sample2): (sample3): (executeTest): * svg/animations/script-tests/svgnumber-animation-2.js: Added. (sample1): (sample2): (sample3): (executeTest): * svg/animations/script-tests/svgnumber-animation-3.js: Added. (sample1): (sample2): (sample3): (executeTest): * svg/animations/svgnumber-animation-1-expected.txt: Added. * svg/animations/svgnumber-animation-1.html: Added. * svg/animations/svgnumber-animation-2-expected.txt: Added. * svg/animations/svgnumber-animation-2.html: Added. * svg/animations/svgnumber-animation-3-expected.txt: Added. * svg/animations/svgnumber-animation-3.html: Added. Canonical link: https://commits.webkit.org/78549@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@89220 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2011-06-19 20:11:24 +00:00
<script src="../dynamic-updates/resources/SVGTestCase.js"></script>
<script src="resources/SVGAnimationTestCase.js"></script>
</head>
Convert svg/animations to use SMIL methods for driving the timeline https://bugs.webkit.org/show_bug.cgi?id=78422 Reviewed by Dirk Schulze. Source/WebCore: Switch the svg/animations tests to use SVGSVGElement.setCurrentTime to drive the animation timeline. This should fix all flakiness we previously had with these tests - and as nice side-effect we're now using the standard SVG methods to drive the timeline, and thus have more coverage for these methods. It already exposed several SMIL bugs, that had to be fixed, before this worked: - beginElement()/endElement() modify the begin/end times of a SVGSMILElement. When beginElement() is called a new begin time is added to the list - and the same happens for endElement() with the end list. Unfortunately the begin/end times never get removed again, leading to incorrect instance time resolving when begin/endElement is called repeatedly, combined with moving the timeline through setCurrentTime. SMIL3 specifically demands that all 'dynamic' times in the begin/endTimes list, such that got inserted via beginElement/endElement - get removed if the begin/endTimes list is updated. Why? When calling beginElement, then endElement, then beginElement again, the begin/endTimes lists should be identical, w/o leftovers from any previous begin/endElement call. To keep track of that introduce SMILTimeWithOrigin, which holds a SMILTime and an Origin enum, which determines whether this SMILTime was created by the parser or dynamically created via beginElement/endElement. - SMILTimeContainer::setElapsed() (called by SVGSVGElement::setCurrentTime) forgot to update the animation state, when it was not paused. - document.getElementsByTagName('animateMotion')[0], always returned 'object SVGElement', instead of SVGAnimateMotion element making it impossible to query the animation start time, as the interfaces from SVGAnimationElement were not available. Fix that by removing the last hacks from svgtags.in, now that all IDLs are available. Now that we use SVGSVGElement::setCurrentTime to drive the animation testing, we can remove the DRT specific sampleSVGAnimationAtTime functionality, and its code springled all over WebCore. Covered by all existing tests in svg/animations. * WebCore.exp.in: Remove sampleAnimationAtTime() symbols. * WebCore.order: Ditto. * svg/SVGAnimationElement.cpp: Add a flag to begin/endElement, SMILTimeWithOrigin::ScriptOrigin, to indicate that these are dynamic SMILTimes, added by a script. (WebCore::SVGAnimationElement::beginElementAt): (WebCore::SVGAnimationElement::endElementAt): * svg/SVGDocumentExtensions.cpp: Remove sampleAnimationAtTime. * svg/SVGDocumentExtensions.h: Ditto. * svg/animation/SMILTime.h: Add SMILTimeWithOrigin helper. (SMILTimeWithOrigin): Needs a SMILTime and an Origin enum entry. (WebCore::SMILTimeWithOrigin::SMILTimeWithOrigin): (WebCore::SMILTimeWithOrigin::time): Returns the SMILTime. (WebCore::SMILTimeWithOrigin::originIsScript): Determines if this SMILTime got added by a script. (WebCore::operator<): Used by std::sort. * svg/animation/SMILTimeContainer.cpp: (WebCore::SMILTimeContainer::setElapsed): Always call updateAnimations, even if the animation is not paused. Use the right elpased time value, to seek precisely to the desired position. (WebCore::SMILTimeContainer::timerFired): Cleanup code, no need for a local variable 'elapsed'. (WebCore::SMILTimeContainer::updateAnimations): Remove DRT specific sampling code, which is no longer needed. * svg/animation/SMILTimeContainer.h: Remove sampleAnimationAtTime. * svg/animation/SVGSMILElement.cpp: (WebCore::SVGSMILElement::SVGSMILElement): Only call resolveFirstInterval, not reset, from the constructor - it wastes unnecessary time, as everything is already initialized. (WebCore::clearTimesWithDynamicOrigins): Helper function to clear all SMILTimes from the begin/endTimes list, that are dynamic. (WebCore::SVGSMILElement::reset): Clear begin/endTimes lists, on any reset() call (when driving the animation timeline through setElapsed). (WebCore::SVGSMILElement::insertedIntoDocument): m_beginTimes now stores SMILTimeWithOrigins, adapt the code. (WebCore::sortTimeList): Ditto. (WebCore::SVGSMILElement::parseBeginOrEnd): Ditto. (WebCore::SVGSMILElement::addBeginTime): Ditto. (WebCore::SVGSMILElement::addEndTime): Ditto. (WebCore::extractTimeFromVector): Ditto. (WebCore::SVGSMILElement::findInstanceTime): Ditto. * svg/animation/SVGSMILElement.h: * svg/svgtags.in: Enable animateMotion/hkern/mpath JS interfaces, which were not enabled, despite their IDLs existed. Source/WebKit/chromium: Remove SVG animation sampling functionality provided for DRT, which no longer uses it. Instead we switched the svg/animations tests to use SVGSVGElement.setCurrentTime. * public/WebFrame.h: (WebFrame): * src/WebFrameImpl.cpp: * src/WebFrameImpl.h: (WebFrameImpl): Source/WebKit/efl: Remove SVG animation sampling functionality provided for DRT, which no longer uses it. Instead we switched the svg/animations tests to use SVGSVGElement.setCurrentTime. * WebCoreSupport/DumpRenderTreeSupportEfl.cpp: * WebCoreSupport/DumpRenderTreeSupportEfl.h: Source/WebKit/gtk: Remove SVG animation sampling functionality provided for DRT, which no longer uses it. Instead we switched the svg/animations tests to use SVGSVGElement.setCurrentTime. * WebCoreSupport/DumpRenderTreeSupportGtk.cpp: * WebCoreSupport/DumpRenderTreeSupportGtk.h: (DumpRenderTreeSupportGtk): Source/WebKit/mac: Remove SVG animation sampling functionality provided for DRT, which no longer uses it. Instead we switched the svg/animations tests to use SVGSVGElement.setCurrentTime. * WebKit.order: * WebView/WebFrame.mm: * WebView/WebFramePrivate.h: Source/WebKit/qt: Remove SVG animation sampling functionality provided for DRT, which no longer uses it. Instead we switched the svg/animations tests to use SVGSVGElement.setCurrentTime. * WebCoreSupport/DumpRenderTreeSupportQt.cpp: * WebCoreSupport/DumpRenderTreeSupportQt.h: Source/WebKit/win: Remove SVG animation sampling functionality provided for DRT, which no longer uses it. Instead we switched the svg/animations tests to use SVGSVGElement.setCurrentTime. * Interfaces/IWebFramePrivate.idl: * WebFrame.cpp: * WebFrame.h: Tools: Remove no longer needed SVG specific animation sampling functionality from DRT. Instead we switched the svg/animations tests to use SVGSVGElement.setCurrentTime. * DumpRenderTree/LayoutTestController.cpp: (LayoutTestController::staticFunctions): * DumpRenderTree/LayoutTestController.h: (LayoutTestController): * DumpRenderTree/blackberry/LayoutTestControllerBlackBerry.cpp: * DumpRenderTree/chromium/LayoutTestController.cpp: (LayoutTestController::LayoutTestController): * DumpRenderTree/chromium/LayoutTestController.h: (LayoutTestController): * DumpRenderTree/efl/LayoutTestControllerEfl.cpp: * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp: * DumpRenderTree/mac/LayoutTestControllerMac.mm: * DumpRenderTree/qt/LayoutTestControllerQt.cpp: * DumpRenderTree/qt/LayoutTestControllerQt.h: (LayoutTestController): * DumpRenderTree/win/LayoutTestControllerWin.cpp: * DumpRenderTree/wx/LayoutTestControllerWx.cpp: LayoutTests: Switch the svg/animations tests to use SVGSVGElement.setCurrentTime to drive the animation timeline. This should fix all flakiness we previously had with these tests - and as nice side-effect we're now using the standard SVG methods to drive the timeline, and thus have more coverage for these methods. It already exposed several SMIL bugs, that had to be fixed, before this worked. This also unifies & cleans up the tests, to use the same formatting and the same shouldBeCloseEnough helpers. * svg/animations/animVal-basics-expected.txt: * svg/animations/animVal-basics.html: * svg/animations/animate-calcMode-spline-by-expected.txt: * svg/animations/animate-calcMode-spline-by.html: * svg/animations/animate-calcMode-spline-from-by-expected.txt: * svg/animations/animate-calcMode-spline-from-by.html: * svg/animations/animate-calcMode-spline-from-to-expected.txt: * svg/animations/animate-calcMode-spline-from-to.html: * svg/animations/animate-calcMode-spline-to-expected.txt: * svg/animations/animate-calcMode-spline-to.html: * svg/animations/animate-calcMode-spline-values-expected.txt: * svg/animations/animate-calcMode-spline-values.html: * svg/animations/animate-color-calcMode-discrete.html: * svg/animations/animate-color-fill-currentColor.html: * svg/animations/animate-color-fill-from-by.html: * svg/animations/animate-color-rgba-calcMode-discrete.html: * svg/animations/animate-color-transparent.html: * svg/animations/animate-currentColor.html: * svg/animations/animate-dynamic-update-attributeName.html: * svg/animations/animate-end-attribute-expected.txt: * svg/animations/animate-end-attribute.html: * svg/animations/animate-endElement-beginElement.html: * svg/animations/animate-from-to-keyTimes.html: * svg/animations/animate-gradient-transform.html: * svg/animations/animate-inherit-css-property.html: * svg/animations/animate-insert-begin.html: * svg/animations/animate-insert-no-begin.html: * svg/animations/animate-keySplines.html: * svg/animations/animate-mpath-insert.html: * svg/animations/animate-number-calcMode-discrete-expected.txt: * svg/animations/animate-number-calcMode-discrete-keyTimes.html: * svg/animations/animate-number-calcMode-discrete.html: * svg/animations/animate-path-animation-Cc-Ss-expected.txt: * svg/animations/animate-path-animation-Cc-Ss.html: * svg/animations/animate-path-animation-Ll-Vv-Hh-expected.txt: * svg/animations/animate-path-animation-Ll-Vv-Hh.html: * svg/animations/animate-path-animation-Qq-Tt.html: * svg/animations/animate-path-animation-cC-sS-inverse-expected.txt: * svg/animations/animate-path-animation-cC-sS-inverse.html: * svg/animations/animate-path-animation-lL-vV-hH-inverse-expected.txt: * svg/animations/animate-path-animation-lL-vV-hH-inverse.html: * svg/animations/animate-path-animation-qQ-tT-inverse.html: * svg/animations/animate-path-nested-transforms-expected.txt: * svg/animations/animate-path-nested-transforms.html: * svg/animations/animate-path-to-animation-expected.txt: * svg/animations/animate-path-to-animation.html: * svg/animations/animate-text-nested-transforms-expected.txt: * svg/animations/animate-text-nested-transforms.html: * svg/animations/animateTransform-pattern-transform.html: * svg/animations/resources/SVGAnimationTestCase.js: (isCloseEnough): (shouldBeCloseEnough): (moveAnimationTimelineAndSample): (sampleAnimation): (runSMILTest): (runAnimationTest): * svg/animations/script-tests/TEMPLATE.html: Removed. * svg/animations/script-tests/animVal-basics.js: (sample3): (executeTest): * svg/animations/script-tests/animate-calcMode-spline-by.js: (sample2): (sample3): (executeTest): * svg/animations/script-tests/animate-calcMode-spline-from-by.js: (sample2): (sample3): (executeTest): * svg/animations/script-tests/animate-calcMode-spline-from-to.js: (sample2): (sample3): (executeTest): * svg/animations/script-tests/animate-calcMode-spline-to.js: (sample2): (sample3): (executeTest): * svg/animations/script-tests/animate-calcMode-spline-values.js: (sample2): (sample3): (executeTest): * svg/animations/script-tests/animate-color-calcMode-discrete.js: (executeTest): * svg/animations/script-tests/animate-color-fill-currentColor.js: (executeTest): * svg/animations/script-tests/animate-color-fill-from-by.js: (executeTest): * svg/animations/script-tests/animate-color-rgba-calcMode-discrete.js: (executeTest): * svg/animations/script-tests/animate-color-transparent.js: (executeTest): * svg/animations/script-tests/animate-currentColor.js: (executeTest): * svg/animations/script-tests/animate-dynamic-update-attributeName.js: (executeTest): * svg/animations/script-tests/animate-end-attribute.js: (sample1): (sample2): (sample3): (executeTest): * svg/animations/script-tests/animate-endElement-beginElement.js: (executeTest): (end): (begin): * svg/animations/script-tests/animate-from-to-keyTimes.js: (executeTest): * svg/animations/script-tests/animate-gradient-transform.js: (executeTest): * svg/animations/script-tests/animate-inherit-css-property.js: (executeTest): * svg/animations/script-tests/animate-insert-begin.js: (executeTest): * svg/animations/script-tests/animate-insert-no-begin.js: (executeTest): * svg/animations/script-tests/animate-keySplines.js: (executeTest): * svg/animations/script-tests/animate-mpath-insert.js: (executeTest): * svg/animations/script-tests/animate-number-calcMode-discrete-keyTimes.js: (executeTest): * svg/animations/script-tests/animate-number-calcMode-discrete.js: (sample1): (sample2): (executeTest): * svg/animations/script-tests/animate-path-animation-Cc-Ss.js: (sample4): (executeTest): * svg/animations/script-tests/animate-path-animation-Ll-Vv-Hh.js: (sample4): (executeTest): * svg/animations/script-tests/animate-path-animation-Qq-Tt.js: (executeTest): * svg/animations/script-tests/animate-path-animation-cC-sS-inverse.js: (sample4): (executeTest): * svg/animations/script-tests/animate-path-animation-lL-vV-hH-inverse.js: (sample4): (executeTest): * svg/animations/script-tests/animate-path-animation-qQ-tT-inverse.js: (executeTest): * svg/animations/script-tests/animate-path-nested-transforms.js: (g.setAttribute.rect.createSVGElement.rect.setAttribute.rect.setAttribute.rect.setAttribute.rect.setAttribute.rect.setAttribute.g.appendChild.animateMotion.createSVGElement.animateMotion.setAttribute.animateMotion.setAttribute.animateMotion.setAttribute.animateMotion.setAttribute.animateMotion.setAttribute.animateMotion.setAttribute.g.appendChild.rootSVGElement.appendChild.startSample): (endSample): (executeTest): * svg/animations/script-tests/animate-path-to-animation.js: (sample2): (sample3): (executeTest): * svg/animations/script-tests/animate-text-nested-transforms.js: (rootSVGElement.setAttribute.text.createSVGElement.text.setAttribute.text.textContent.string_appeared_here.text.setAttribute.animateMotion.createSVGElement.animateMotion.setAttribute.animateMotion.setAttribute.animateMotion.setAttribute.animateMotion.setAttribute.animateMotion.setAttribute.animateMotion.setAttribute.text.appendChild.rootSVGElement.appendChild.startSample): (endSample): (executeTest): * svg/animations/script-tests/animateTransform-pattern-transform.js: (executeTest): * svg/animations/script-tests/svgPreserveAspectRatio-animation-1.js: (sample1): (sample2): (sample3): (executeTest): * svg/animations/script-tests/svgangle-animation-deg-to-grad.js: (sample2): (sample3): (executeTest): * svg/animations/script-tests/svgangle-animation-deg-to-rad.js: (sample2): (sample3): (executeTest): * svg/animations/script-tests/svgangle-animation-grad-to-deg.js: (sample2): (sample3): (executeTest): * svg/animations/script-tests/svgangle-animation-grad-to-rad.js: (sample2): (sample3): (executeTest): * svg/animations/script-tests/svgangle-animation-rad-to-deg.js: (sample2): (sample3): (executeTest): * svg/animations/script-tests/svgangle-animation-rad-to-grad.js: (sample2): (sample3): (executeTest): * svg/animations/script-tests/svgboolean-animation-1.js: (sample1): (sample2): (sample3): (executeTest): * svg/animations/script-tests/svginteger-animation-1.js: (sample1): (sample2): (sample3): (executeTest): * svg/animations/script-tests/svglength-animation-LengthModeHeight.js: (sample3): (executeTest): * svg/animations/script-tests/svglength-animation-LengthModeOther.js: (sample3): (executeTest): * svg/animations/script-tests/svglength-animation-LengthModeWidth.js: (sample3): (executeTest): * svg/animations/script-tests/svglength-animation-invalid-value-1.js: (executeTest): * svg/animations/script-tests/svglength-animation-invalid-value-2.js: (executeTest): * svg/animations/script-tests/svglength-animation-invalid-value-3.js: (executeTest): * svg/animations/script-tests/svglength-animation-number-to-number.js: (sample3): (executeTest): * svg/animations/script-tests/svglength-animation-px-to-cm.js: (sample3): (executeTest): * svg/animations/script-tests/svglength-animation-px-to-ems.js: (sample3): (executeTest): * svg/animations/script-tests/svglength-animation-px-to-exs.js: (sample3): (executeTest): * svg/animations/script-tests/svglength-animation-px-to-in.js: (sample3): (executeTest): * svg/animations/script-tests/svglength-animation-px-to-number.js: (sample3): (executeTest): * svg/animations/script-tests/svglength-animation-px-to-pc.js: (sample3): (executeTest): * svg/animations/script-tests/svglength-animation-px-to-percentage.js: (sample3): (executeTest): * svg/animations/script-tests/svglength-animation-px-to-pt.js: (sample3): (executeTest): * svg/animations/script-tests/svglength-animation-px-to-px.js: (sample3): (executeTest): * svg/animations/script-tests/svglength-animation-unitType.js: (executeTest): * svg/animations/script-tests/svglength-animation-values.js: (sample5): (executeTest): * svg/animations/script-tests/svglengthlist-animation-1.js: (sample1): (sample2): (sample3): (executeTest): * svg/animations/script-tests/svglengthlist-animation-2.js: (sample3): (executeTest): * svg/animations/script-tests/svglengthlist-animation-3.js: (sample1): (sample2): (sample3): (executeTest): * svg/animations/script-tests/svglengthlist-animation-4.js: (sample1): (sample2): (sample3): (executeTest): * svg/animations/script-tests/svglengthlist-animation-5.js: (sample1): (sample2): (sample3): (executeTest): * svg/animations/script-tests/svgnumber-animation-1.js: (executeTest): * svg/animations/script-tests/svgnumber-animation-2.js: (executeTest): * svg/animations/script-tests/svgnumber-animation-3.js: (executeTest): * svg/animations/script-tests/svgnumberlist-animation-1.js: (sample1): (sample2): (sample3): (executeTest): * svg/animations/script-tests/svgnumberlist-animation-2.js: (sample1): (sample2): (sample3): (executeTest): * svg/animations/script-tests/svgnumberoptionalnumber-animation-1.js: (sample1): (sample2): (sample3): (executeTest): * svg/animations/script-tests/svgnumberoptionalnumber-animation-2.js: (sample1): (sample2): (sample3): (executeTest): * svg/animations/script-tests/svgnumberoptionalnumber-animation-3.js: (sample1): (sample2): (sample3): (executeTest): * svg/animations/script-tests/svgnumberoptionalnumber-animation-4.js: (sample1): (sample2): (sample3): (executeTest): * svg/animations/script-tests/svgpath-animation-1.js: (sample3): (executeTest): * svg/animations/script-tests/svgpointlist-animation-1.js: (sample3): (executeTest): * svg/animations/script-tests/svgpointlist-animation-2.js: (sample3): (executeTest): * svg/animations/script-tests/svgrect-animation-1.js: (sample3): (executeTest): * svg/animations/script-tests/svgrect-animation-2.js: (sample3): (executeTest): * svg/animations/script-tests/svgstring-animation-fallback-to-discrete.js: (executeTest): * svg/animations/script-tests/svgtransform-animation-1.js: (executeTest): * svg/animations/script-tests/svgtransform-animation-discrete.js: (executeTest): * svg/animations/smil-element-not-removed-crash.html: * svg/animations/svgPreserveAspectRatio-animation-1.html: * svg/animations/svgangle-animation-deg-to-grad-expected.txt: * svg/animations/svgangle-animation-deg-to-grad.html: * svg/animations/svgangle-animation-deg-to-rad-expected.txt: * svg/animations/svgangle-animation-deg-to-rad.html: * svg/animations/svgangle-animation-grad-to-deg-expected.txt: * svg/animations/svgangle-animation-grad-to-deg.html: * svg/animations/svgangle-animation-grad-to-rad-expected.txt: * svg/animations/svgangle-animation-grad-to-rad.html: * svg/animations/svgangle-animation-rad-to-deg-expected.txt: * svg/animations/svgangle-animation-rad-to-deg.html: * svg/animations/svgangle-animation-rad-to-grad-expected.txt: * svg/animations/svgangle-animation-rad-to-grad.html: * svg/animations/svgboolean-animation-1.html: * svg/animations/svginteger-animation-1.html: * svg/animations/svglength-animation-LengthModeHeight-expected.txt: * svg/animations/svglength-animation-LengthModeHeight.html: * svg/animations/svglength-animation-LengthModeOther-expected.txt: * svg/animations/svglength-animation-LengthModeOther.html: * svg/animations/svglength-animation-LengthModeWidth-expected.txt: * svg/animations/svglength-animation-LengthModeWidth.html: * svg/animations/svglength-animation-invalid-value-1.html: * svg/animations/svglength-animation-invalid-value-2.html: * svg/animations/svglength-animation-invalid-value-3.html: * svg/animations/svglength-animation-number-to-number-expected.txt: * svg/animations/svglength-animation-number-to-number.html: * svg/animations/svglength-animation-px-to-cm-expected.txt: * svg/animations/svglength-animation-px-to-cm.html: * svg/animations/svglength-animation-px-to-ems-expected.txt: * svg/animations/svglength-animation-px-to-ems.html: * svg/animations/svglength-animation-px-to-exs-expected.txt: * svg/animations/svglength-animation-px-to-exs.html: * svg/animations/svglength-animation-px-to-in-expected.txt: * svg/animations/svglength-animation-px-to-in.html: * svg/animations/svglength-animation-px-to-number-expected.txt: * svg/animations/svglength-animation-px-to-number.html: * svg/animations/svglength-animation-px-to-pc-expected.txt: * svg/animations/svglength-animation-px-to-pc.html: * svg/animations/svglength-animation-px-to-percentage-expected.txt: * svg/animations/svglength-animation-px-to-percentage.html: * svg/animations/svglength-animation-px-to-pt-expected.txt: * svg/animations/svglength-animation-px-to-pt.html: * svg/animations/svglength-animation-px-to-px-expected.txt: * svg/animations/svglength-animation-px-to-px.html: * svg/animations/svglength-animation-unitType.html: * svg/animations/svglength-animation-values-expected.txt: * svg/animations/svglength-animation-values.html: * svg/animations/svglengthlist-animation-1.html: * svg/animations/svglengthlist-animation-2-expected.txt: * svg/animations/svglengthlist-animation-2.html: * svg/animations/svglengthlist-animation-3.html: * svg/animations/svglengthlist-animation-4.html: * svg/animations/svglengthlist-animation-5.html: * svg/animations/svgnumber-animation-1.html: * svg/animations/svgnumber-animation-2.html: * svg/animations/svgnumber-animation-3.html: * svg/animations/svgnumberlist-animation-1-expected.txt: * svg/animations/svgnumberlist-animation-1.html: * svg/animations/svgnumberlist-animation-2-expected.txt: * svg/animations/svgnumberlist-animation-2.html: * svg/animations/svgnumberoptionalnumber-animation-1.html: * svg/animations/svgnumberoptionalnumber-animation-2.html: * svg/animations/svgnumberoptionalnumber-animation-3.html: * svg/animations/svgnumberoptionalnumber-animation-4.html: * svg/animations/svgpath-animation-1-expected.txt: * svg/animations/svgpath-animation-1.html: * svg/animations/svgpointlist-animation-1-expected.txt: * svg/animations/svgpointlist-animation-1.html: * svg/animations/svgpointlist-animation-2-expected.txt: * svg/animations/svgpointlist-animation-2.html: * svg/animations/svgrect-animation-1-expected.txt: * svg/animations/svgrect-animation-1.html: * svg/animations/svgrect-animation-2-expected.txt: * svg/animations/svgrect-animation-2.html: * svg/animations/svgstring-animation-fallback-to-discrete-expected.txt: * svg/animations/svgstring-animation-fallback-to-discrete.html: * svg/animations/svgtransform-animation-1.html: * svg/animations/svgtransform-animation-discrete-expected.txt: * svg/animations/svgtransform-animation-discrete.html: Canonical link: https://commits.webkit.org/95529@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@107682 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2012-02-14 08:41:30 +00:00
<body onload="runSMILTest()">
2011-06-19 Dirk Schulze <krit@webkit.org> Reviewed by Nikolas Zimmermann. SVGAnimatorFactory does not support SVGNumber https://bugs.webkit.org/show_bug.cgi?id=62938 Follow up of "SVGAnimation should use direct unit animation for SVGLength": https://bugs.webkit.org/show_bug.cgi?id=61368 This patch continues the conversion to the new concept of SVGAnimatorFactory with SVGNumber. With the new animator for the With the new animator for SVGNumber we also support the scientific notation, and everything else that's supported by the SVGNumber parsing, removing the SVGAnimate* specific number parsing functionality. Moving the content of SVGAnimatedType header into its own cpp. Changed behavior of parseNumberFromString(). It checks if the String simply consits of a number now. parseNumberFromString() is using genericParseNumber() for parsing numbers. But this method just stops at the first char that does not belong to a number and returns true. I added a check if the current char pointer is at the last char of the String and return false if not. Tests: svg/animations/svgnumber-animation-1.html svg/animations/svgnumber-animation-2.html svg/animations/svgnumber-animation-3.html * CMakeLists.txt: Added new files to build system. * GNUmakefile.list.am: Ditto. * WebCore.gypi: Ditto. * WebCore.pro: Ditto. * WebCore.xcodeproj/project.pbxproj: Ditto. * svg/SVGAllInOne.cpp: Ditto. * svg/SVGAnimateElement.cpp: Use SVGAnimatedNumberAnimator for animations of SVGNumbers. (WebCore::SVGAnimateElement::SVGAnimateElement): (WebCore::SVGAnimateElement::calculateAnimatedValue): (WebCore::SVGAnimateElement::calculateFromAndToValues): (WebCore::SVGAnimateElement::calculateFromAndByValues): (WebCore::SVGAnimateElement::resetToBaseValue): (WebCore::SVGAnimateElement::applyResultsToTarget): (WebCore::SVGAnimateElement::calculateDistance): * svg/SVGAnimateElement.h: Remove floats for value storage. This is done by SVGAnimatedTypes now. * svg/SVGAnimatedNumber.cpp: Added. Animator for SVGNumbers. (WebCore::SVGAnimatedNumberAnimator::SVGAnimatedNumberAnimator): (WebCore::SVGAnimatedNumberAnimator::constructFromString): (WebCore::SVGAnimatedNumberAnimator::calculateFromAndToValues): (WebCore::SVGAnimatedNumberAnimator::calculateFromAndByValues): (WebCore::SVGAnimatedNumberAnimator::calculateAnimatedValue): (WebCore::SVGAnimatedNumberAnimator::calculateDistance): * svg/SVGAnimatedNumber.h: (WebCore::SVGAnimatedNumberAnimator::~SVGAnimatedNumberAnimator): * svg/SVGAnimatedType.cpp: Added. Moved content from header to cpp. (WebCore::SVGAnimatedType::SVGAnimatedType): (WebCore::SVGAnimatedType::~SVGAnimatedType): (WebCore::SVGAnimatedType::createAngle): (WebCore::SVGAnimatedType::createLength): (WebCore::SVGAnimatedType::createNumber): (WebCore::SVGAnimatedType::angle): (WebCore::SVGAnimatedType::length): (WebCore::SVGAnimatedType::number): (WebCore::SVGAnimatedType::valueAsString): (WebCore::SVGAnimatedType::setValueAsString): * svg/SVGAnimatedType.h: Removed method create(). Allways call type specific create funtcions. * svg/SVGAnimatorFactory.h: (WebCore::SVGAnimatorFactory::create): * svg/SVGParserUtilities.cpp: (WebCore::parseNumberFromString): Check if String simply consits of a number. Return false otherwise. 2011-06-19 Dirk Schulze <krit@webkit.org> Reviewed by Nikolas Zimmermann. SVGAnimatorFactory does not support SVGNumber https://bugs.webkit.org/show_bug.cgi?id=62938 Added new tests to check behavior on SVGNumber animation. * svg/animations/script-tests/svgnumber-animation-1.js: Added. (sample1): (sample2): (sample3): (executeTest): * svg/animations/script-tests/svgnumber-animation-2.js: Added. (sample1): (sample2): (sample3): (executeTest): * svg/animations/script-tests/svgnumber-animation-3.js: Added. (sample1): (sample2): (sample3): (executeTest): * svg/animations/svgnumber-animation-1-expected.txt: Added. * svg/animations/svgnumber-animation-1.html: Added. * svg/animations/svgnumber-animation-2-expected.txt: Added. * svg/animations/svgnumber-animation-2.html: Added. * svg/animations/svgnumber-animation-3-expected.txt: Added. * svg/animations/svgnumber-animation-3.html: Added. Canonical link: https://commits.webkit.org/78549@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@89220 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2011-06-19 20:11:24 +00:00
<h1>SVG 1.1 dynamic animation tests</h1>
<p id="description"></p>
<div id="console"></div>
<script>
description("Test for SVGNumber animation with different exponents.");
createSVGTestCase();
// Setup test document
var rect = createSVGElement("rect");
rect.setAttribute("id", "rect");
rect.setAttribute("x", "0");
rect.setAttribute("width", "100");
rect.setAttribute("height", "100");
rect.setAttribute("fill", "green");
rect.setAttribute("opacity", "0");
rect.setAttribute("onclick", "executeTest()");
var animate = createSVGElement("animate");
animate.setAttribute("id", "animation");
animate.setAttribute("attributeName", "opacity");
animate.setAttribute("begin", "click");
animate.setAttribute("dur", "4s");
animate.setAttribute("from", "0e10");
animate.setAttribute("to", ".1e1");
rect.appendChild(animate);
rootSVGElement.appendChild(rect);
// Setup animation test
function sample1() {
// Check initial/end conditions
shouldBeCloseEnough("getComputedStyle(rect).getPropertyCSSValue('opacity').getFloatValue(CSSPrimitiveValue.CSS_NUMBER)", "0");
}
function sample2() {
shouldBeCloseEnough("getComputedStyle(rect).getPropertyCSSValue('opacity').getFloatValue(CSSPrimitiveValue.CSS_NUMBER)", "0.5");
}
function sample3() {
shouldBeCloseEnough("getComputedStyle(rect).getPropertyCSSValue('opacity').getFloatValue(CSSPrimitiveValue.CSS_NUMBER)", "1");
}
function executeTest() {
const expectedValues = [
// [animationId, time, sampleCallback]
["animation", 0.0, sample1],
["animation", 2.0, sample2],
["animation", 3.999, sample3],
["animation", 4.001, sample1]
];
runAnimationTest(expectedValues);
}
var successfullyParsed = true;
</script>
2011-06-19 Dirk Schulze <krit@webkit.org> Reviewed by Nikolas Zimmermann. SVGAnimatorFactory does not support SVGNumber https://bugs.webkit.org/show_bug.cgi?id=62938 Follow up of "SVGAnimation should use direct unit animation for SVGLength": https://bugs.webkit.org/show_bug.cgi?id=61368 This patch continues the conversion to the new concept of SVGAnimatorFactory with SVGNumber. With the new animator for the With the new animator for SVGNumber we also support the scientific notation, and everything else that's supported by the SVGNumber parsing, removing the SVGAnimate* specific number parsing functionality. Moving the content of SVGAnimatedType header into its own cpp. Changed behavior of parseNumberFromString(). It checks if the String simply consits of a number now. parseNumberFromString() is using genericParseNumber() for parsing numbers. But this method just stops at the first char that does not belong to a number and returns true. I added a check if the current char pointer is at the last char of the String and return false if not. Tests: svg/animations/svgnumber-animation-1.html svg/animations/svgnumber-animation-2.html svg/animations/svgnumber-animation-3.html * CMakeLists.txt: Added new files to build system. * GNUmakefile.list.am: Ditto. * WebCore.gypi: Ditto. * WebCore.pro: Ditto. * WebCore.xcodeproj/project.pbxproj: Ditto. * svg/SVGAllInOne.cpp: Ditto. * svg/SVGAnimateElement.cpp: Use SVGAnimatedNumberAnimator for animations of SVGNumbers. (WebCore::SVGAnimateElement::SVGAnimateElement): (WebCore::SVGAnimateElement::calculateAnimatedValue): (WebCore::SVGAnimateElement::calculateFromAndToValues): (WebCore::SVGAnimateElement::calculateFromAndByValues): (WebCore::SVGAnimateElement::resetToBaseValue): (WebCore::SVGAnimateElement::applyResultsToTarget): (WebCore::SVGAnimateElement::calculateDistance): * svg/SVGAnimateElement.h: Remove floats for value storage. This is done by SVGAnimatedTypes now. * svg/SVGAnimatedNumber.cpp: Added. Animator for SVGNumbers. (WebCore::SVGAnimatedNumberAnimator::SVGAnimatedNumberAnimator): (WebCore::SVGAnimatedNumberAnimator::constructFromString): (WebCore::SVGAnimatedNumberAnimator::calculateFromAndToValues): (WebCore::SVGAnimatedNumberAnimator::calculateFromAndByValues): (WebCore::SVGAnimatedNumberAnimator::calculateAnimatedValue): (WebCore::SVGAnimatedNumberAnimator::calculateDistance): * svg/SVGAnimatedNumber.h: (WebCore::SVGAnimatedNumberAnimator::~SVGAnimatedNumberAnimator): * svg/SVGAnimatedType.cpp: Added. Moved content from header to cpp. (WebCore::SVGAnimatedType::SVGAnimatedType): (WebCore::SVGAnimatedType::~SVGAnimatedType): (WebCore::SVGAnimatedType::createAngle): (WebCore::SVGAnimatedType::createLength): (WebCore::SVGAnimatedType::createNumber): (WebCore::SVGAnimatedType::angle): (WebCore::SVGAnimatedType::length): (WebCore::SVGAnimatedType::number): (WebCore::SVGAnimatedType::valueAsString): (WebCore::SVGAnimatedType::setValueAsString): * svg/SVGAnimatedType.h: Removed method create(). Allways call type specific create funtcions. * svg/SVGAnimatorFactory.h: (WebCore::SVGAnimatorFactory::create): * svg/SVGParserUtilities.cpp: (WebCore::parseNumberFromString): Check if String simply consits of a number. Return false otherwise. 2011-06-19 Dirk Schulze <krit@webkit.org> Reviewed by Nikolas Zimmermann. SVGAnimatorFactory does not support SVGNumber https://bugs.webkit.org/show_bug.cgi?id=62938 Added new tests to check behavior on SVGNumber animation. * svg/animations/script-tests/svgnumber-animation-1.js: Added. (sample1): (sample2): (sample3): (executeTest): * svg/animations/script-tests/svgnumber-animation-2.js: Added. (sample1): (sample2): (sample3): (executeTest): * svg/animations/script-tests/svgnumber-animation-3.js: Added. (sample1): (sample2): (sample3): (executeTest): * svg/animations/svgnumber-animation-1-expected.txt: Added. * svg/animations/svgnumber-animation-1.html: Added. * svg/animations/svgnumber-animation-2-expected.txt: Added. * svg/animations/svgnumber-animation-2.html: Added. * svg/animations/svgnumber-animation-3-expected.txt: Added. * svg/animations/svgnumber-animation-3.html: Added. Canonical link: https://commits.webkit.org/78549@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@89220 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2011-06-19 20:11:24 +00:00
</body>
</html>