mozilla/servo — pull request #2819 by bjwbell (2014-07-13 12:17:22+00:00)
Title: Restructure compositor layers to work with iframes.

When a frame is selected via set_ids, a tree of root compositor layers is
also created, matching the tree of pipelines in the frame. This
decouples the chronological ordering dependency for parent frames and child iframes when they
send CreateOrUpdateRootLayer & CreateOrUpdateDescendentLayer
messages.

Gotchas:
* iframes dont render when using the -o option (the compositor doesnt
wait for the child iframe to render before exiting).
* layout task or script task failure on exit ("task * failed at sending on a
closed channel"), this happens if the child iframe
shares the same script task as the parent and can be avoided by adding
the sandbox attribute to the iframe.

@pcwalton & @mrobinson