Right now XUL has this somewhat odd setup where XUL frames of various sorts
examine attributes on the content node and their style to decide what to do.
Ideally, we'd use the same system as for HTML and map the XUL attributes into
style. This would, I suspect, let us make things a good bit more efficient in
some cases, not to mention sharing well-tested codepaths, etc.
In general, I have a good idea of how to do this (see bug 216838). But
something I realized today is that we might want to map differently depending
on... something. Not sure what. localName? Resolved (post-xbl) localName?
Something else? Whatever it is needs to be an invariant of the content node,
basically, so I'm leaning towards mapping based on the localName. This will
change behavior of XUL display types as applied to non-XUL nodes for sure, and
in some cases may change behavior of some XUL bindings applied to nodes with
unexpected localNames (eg having some random XUL element xbl:inherit xul:image
or some such). But I think that's fine, personally.
Am I missing any problems with this? If so, what would be a better approach?