<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>232128</bug_id>
          
          <creation_ts>2021-10-21 19:51:08 -0700</creation_ts>
          <short_desc>Make transform a proper presentational attribute</short_desc>
          <delta_ts>2024-10-08 00:40:39 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>SVG</component>
          <version>Safari Technology Preview</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>NEW</bug_status>
          <resolution></resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=263712</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Simon Fraser (smfr)">simon.fraser</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>heycam</cc>
    
    <cc>karlcow</cc>
    
    <cc>maggotfish</cc>
    
    <cc>nmouchtaris</cc>
    
    <cc>sabouhallawa</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>zimmermann</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1807501</commentid>
    <comment_count>0</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2021-10-21 19:51:08 -0700</bug_when>
    <thetext>Our SVG code currently does not treat `transform` as a presentational attribute. `transform-origin` is partially done (see the FIXME in createAttributeNameToCSSPropertyIDMap()). This all needs cleaning up.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1807503</commentid>
    <comment_count>1</comment_count>
    <who name="Cameron McCormack (:heycam)">heycam</who>
    <bug_when>2021-10-21 20:17:32 -0700</bug_when>
    <thetext>One tricky thing will be to make SVGTransformableElement.transform.{baseVal,animVal} do the right thing.

https://drafts.csswg.org/css-transforms-1/#transform-attribute-dom</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1809939</commentid>
    <comment_count>2</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-10-28 19:52:16 -0700</bug_when>
    <thetext>&lt;rdar://problem/84790424&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1993828</commentid>
    <comment_count>3</comment_count>
    <who name="Nikolas Zimmermann">zimmermann</who>
    <bug_when>2023-11-20 00:07:14 -0800</bug_when>
    <thetext>Good catch Karl. Indeed this is the „lazy SVG attribute synchronization“ that apparently exposes this bug. We probably fail to unmap properly..</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1993830</commentid>
    <comment_count>4</comment_count>
    <who name="Nikolas Zimmermann">zimmermann</who>
    <bug_when>2023-11-20 00:32:48 -0800</bug_when>
    <thetext>Oops ignore the last comment, wrong bug report.

Notes that I tried this two years ago, but it was really hard to beat the speed of SVGTransformList parsing - even when adding multiple of fast paths for certain transformations as CSSParserFastPaths.

But we should repeat the experiment.
The only thing missing is rotation center support for rotate().
If there is interest, I can look up my code from a while ago</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>