Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: c5a71dadf89f5816fedaab3d7efaaec4e247fdc6 https://github.com/WebKit/WebKit/commit/c5a71dadf89f5816fedaab3d7efaaec4e247fdc6 Author: Antti Koivisto <an...@apple.com> Date: 2023-11-17 (Fri, 17 Nov 2023)
Changed paths: M Source/WebCore/animation/ElementAnimationRareData.h M Source/WebCore/animation/KeyframeEffect.cpp M Source/WebCore/dom/Element.cpp M Source/WebCore/dom/Element.h M Source/WebCore/dom/Node.h M Source/WebCore/style/StyleInvalidator.cpp M Source/WebCore/style/StyleTreeResolver.cpp M Source/WebCore/style/StyleTreeResolver.h M Source/WebCore/style/StyleValidity.h M Source/WebCore/style/Styleable.h M Source/WebCore/testing/Internals.cpp Log Message: ----------- Add style invalidity state for animations https://bugs.webkit.org/show_bug.cgi?id=264932 rdar://118500247 Reviewed by Antoine Quint. We may be able to apply animation effects only without reapplying normal style rules. * Source/WebCore/animation/ElementAnimationRareData.h: (WebCore::ElementAnimationRareData::hasPropertiesOverridenAfterAnimation const): (WebCore::ElementAnimationRareData::setHasPropertiesOverridenAfterAnimation): If we have rules the override animation effects we can not use this optimization. * Source/WebCore/animation/KeyframeEffect.cpp: (WebCore::invalidateElement): Set the animation invalidity state instead of invaliding the element fully. (WebCore::KeyframeEffect::animationDidChangeTimingProperties): * Source/WebCore/dom/Element.cpp: (WebCore::Element::invalidateStyleForAnimation): (WebCore::Element::hasPropertiesOverridenAfterAnimation const): (WebCore::Element::setHasPropertiesOverridenAfterAnimation): * Source/WebCore/dom/Element.h: * Source/WebCore/dom/Node.h: * Source/WebCore/style/StyleInvalidator.cpp: (WebCore::Style::Invalidator::invalidateIfNeeded): * Source/WebCore/style/StyleTreeResolver.cpp: (WebCore::Style::TreeResolver::styleForStyleable): Use the base style from the previous frame instead of computing it again if only the animation is invalid. (WebCore::Style::TreeResolver::createAnimatedElementUpdate): (WebCore::Style::TreeResolver::determineResolutionType): (WebCore::Style::shouldResolvePseudoElement): Deleted. * Source/WebCore/style/StyleTreeResolver.h: * Source/WebCore/style/StyleValidity.h: * Source/WebCore/style/Styleable.h: (WebCore::Styleable::hasPropertiesOverridenAfterAnimation const): (WebCore::Styleable::setHasPropertiesOverridenAfterAnimation const): * Source/WebCore/testing/Internals.cpp: (WebCore::styleValidityToToString): Canonical link: https://commits.webkit.org/270890@main _______________________________________________ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes