> How does this proposal deal with transformed content? Not sure what you mean. If you mean SVG foreignobject stuff, then here's how I expect that to work: -- there's an nsDisplayItemSVG which an outermost SVG frame pushes onto the display list -- nsDisplayItemSVG::Paint just calls into SVG's own paint system to paint the entire subtree of SVG content -- if SVG painting encounters a foreignobject, then it calls BuildDisplayListForStackingContext to build a display list for the non-SVG subtree, then paints the contents of the display list into a gfxContext with appropriate transforms already set in it.
Pretty straightforward really. That's basically what my original foreignobject demo did except it had to be hacked into the view system. It'll simpler with this approach to viewless painting. > Does GetAbsoluteBounds calculate the bounds relative to the nearest widget? No, relative to some arbitrary reference point that is fixed for the display list. Probably we would choose the origin of the rootmost widget. > Removing views completely is a significantly bigger > project than just moving display-list related code. Yes. Removing views completely is a longer term project, but moving out the display-list code is a good first step. > Are you planning on moving the widget management code at the same time? My not-so-secret agenda is also to remove all widgets :-) (except for rootmost widgets (including popups), and plugin-related widgets). I swear I had some wiki notes about this but I can't find them... I believe the main issues are plugins and scrolling, and possibly some API issues if subdocuments (IFRAMEs) no longer have an nsIWidget. Rob _______________________________________________ mozilla-layout mailing list [email protected] http://mail.mozilla.org/listinfo/mozilla-layout
