[Webkit-unassigned] [Bug 191237] New: Remove SVG properties tear-off objects

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Sun Nov 4 14:37:58 PST 2018


https://bugs.webkit.org/show_bug.cgi?id=191237

            Bug ID: 191237
           Summary: Remove SVG properties tear-off objects
           Product: WebKit
           Version: WebKit Nightly Build
          Hardware: Unspecified
                OS: Unspecified
            Status: NEW
          Severity: Normal
          Priority: P2
         Component: SVG
          Assignee: webkit-unassigned at lists.webkit.org
          Reporter: sabouhallawa at apple.com
                CC: zimmermann at kde.org

SVG properties tear-off objects have been troublesome and confusing part of SVG. These objects are created only when requested from DOM and SMIL animations. They wrap primitive or value members in the SVGElements. Their life cycle requires the SVGElement and all the objects in between to be alive even if they are not accessible from the anything else. Many things can go wrong trying to strongly tie the tear-off object with the SVGElement. Trying to fix these issues by relaxing the relationship leads to different kind of problems.

The current code

-- Does not reflect the specs which makes difficult to correlate between them.   
-- Lacks clear object life cycle, see all different kinds of pointes in SVGAnimatedProperty, SVGAnimatedPropertyTearOff and SVGAnimatedListPropertyTearOff
-- Lacks correct encapsulation, see the SVGPathElement, SVGAnimatedPathSegList and SVGPathSegList
-- Lacks strong type variable declaration, see SVGAnimatedType
-- Does not choose the right time and place to extract information, see many functions in SVGElement which includes HashMap or HashSet of attributes' names. See SVGAnimateElementBase::determineAnimatedPropertyType() and SVGAnimationElement::checkInvalidCSSAttributeType()
-- Have hacks to overcome the limitation of tear-off object creation and caching, see SVGTests::requiredFeatures() and SVGViewSpec::transform()
-- Has loose relationship between the animator and the form and the to values. See SVGAnimateElementBase.
-- Have correctness issues when animating the same attribute with multiple animators. See https://bugs.webkit.org/show_bug.cgi?id=150388.
-- Have correctness issues with optional attributes, see https://bugs.webkit.org/show_bug.cgi?id=154141.

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-unassigned/attachments/20181104/c5435d08/attachment.html>


More information about the webkit-unassigned mailing list