Confirmed users
716
edits
No edit summary |
|||
| Line 6: | Line 6: | ||
We'll probably want to allow sharing between binding docs between documents. Especially for chrome. For chrome we could simply use raw sharing. For content documents we could use a cache of documents and clone them as needed. | We'll probably want to allow sharing between binding docs between documents. Especially for chrome. For chrome we could simply use raw sharing. For content documents we could use a cache of documents and clone them as needed. | ||
When a binding document is added, we store all element="" selectors in a <tt>RuleHash</tt>, templatized as <tt>nsSelectorHash</tt>. These hashes are stored per resource document since binding documents are linked per resource document. | When a binding document is added, we store all <tt>element=""</tt> selectors in a <tt>RuleHash</tt>, templatized as <tt>nsSelectorHash</tt>. These hashes are stored per resource document since binding documents are linked per resource document. | ||
Notifications happen by modifying <tt>nsNodeUtils</tt> such that the XBL2 code is notified after the root of any subtree. This avoids having to have the XBL2 code register a <tt>nsIMutationObserver</tt> for every orphaned subtree. | Notifications happen by modifying <tt>nsNodeUtils</tt> such that the XBL2 code is notified after the root of any subtree. This avoids having to have the XBL2 code register a <tt>nsIMutationObserver</tt> for every orphaned subtree. | ||
| Line 17: | Line 17: | ||
CSS and <tt>.addBinding</tt> bindings are added and removed separately. For CSS bindings we should only attach bindings when normal frame construction finds a binding, i.e. no more hacks to force style resolution on <tt>dislay:none</tt> elements. | CSS and <tt>.addBinding</tt> bindings are added and removed separately. For CSS bindings we should only attach bindings when normal frame construction finds a binding, i.e. no more hacks to force style resolution on <tt>dislay:none</tt> elements. | ||
=== Shadow tree rendering === | === Shadow tree rendering === | ||