SVG:Use

From MozillaWiki
Revision as of 17:14, 8 December 2005 by Roc (talk | contribs)
Jump to navigation Jump to search

Mental Testcases

  1. svg:use to
    1. same document displayed content
    2. same document undisplayed content
    3. other document
    4. foreignObject containing HTML form elements (textbox)
  2. dynamic changes
    1. attribute change within used content
    2. style change inherited from ancestor of use
    3. tree structure changes within use
    4. addition/removal of use itself
    5. non-DOM content changes (e.g. form contents)
  3. event delivery to shadow instance tree

Implementation Strategies

No Frame Tree

  1. remove multiple presentations
  2. Move SVG painting and event handling to content
    • ownership of style context also therefore goes to content
  3. Clone content for svg:use
  4. Let style contexts know they're held by content (bit)

Single Content Tree, Multiple Frame Trees

  1. leverage multiple presentations
  2. use existing content-style-frame setup
  3. SVG elements whose style we need (e.g. gradients) continue to need frames
  4. hack style system to get inheritance-across-use to work (how?)