On 10/15/14, 9:03 AM, Boris Zbarsky wrote:
The situation is that we have a bunch of unmaintained code that
complicates layout.
I feel like I should expand on this.
"XUL" covers a variety of somewhat-unrelated features, including at least:
1) The XUL box model.
2) The built-in XUL elements (with C++ implementations). <tree> for
example.
3) The overlay system.
4) XBL and the bindings provided by default.
5) Localization via DTDs
I probably missed some; please tell me what they are.
I would dearly like #1 to go away in favor of flexbox. This might be
possible to do without changing anything else, maybe, albeit with some
UI layout breakage in some consumers because the models are not quite
identical. If that's not possible, it might be a good idea to migrate
away from flexbox manually (by using those display types instead of
-moz-box and company in your stylesheets for XUL hbox/vbox/etc
elements). flexbox is all done, pretty much, so there is a viable path
forward here that just needs resources. This would clearly not affect
scripts, except to the extent that the slightly different layout model
forces changes to the DOM used.
I'm slightly less concerned about #2, though it would be good to replace
those with web components if/when possible.
I haven't thought much about #3; it's somewhat in its own little world
and has no web tech equivalent.
For #4 a viable path forward is piecemeal conversion to web components
once those are stable and shipping. Since they aren't, there's nothing
to think about here yet.
For #5, I'm not an expert. l20n or something seems like a possible
replacement, but in any case a replacement would need to exist to talk
about moving away from the current localization mechanism.
Again, except for maybe #1 these are all off in "who knows when this
will be possible?" territory. I'm sorry if you got the impression that
there are short-term plans to remove anything here.
-Boris
_______________________________________________
dev-platform mailing list
dev-platform@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-platform