SVG:Use

From MozillaWiki
Revision as of 13:04, 14 May 2006 by Jonathan Watt (talk | contribs) (SVGDev:Use moved to SVG:Use: killing SVGDev)
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
    1. extend current architecture to support multiple primary frames for an element in the same frame tree
      1. useful for table header/footers, repeating fixed elements too
  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?)