||The compositor-side counterpart to CompositableClient. Responsible for
updating textures and data about textures from IPC and how textures are
composited (tiling, double buffering, etc.).
Update (for images/canvases) and UpdateThebes (for Thebes) are called during
the layers transaction to update the Compositbale's textures from the
content side. The actual update (and any syncronous upload) is done by the
TextureHost, but it is coordinated by the CompositableHost.
Composite is called by the owning layer when it is composited.
CompositableHost will use its TextureHost(s) and call Compositor::DrawQuad to
do the actual rendering.
||Implements Image selection logic.
||TextureParent is the host-side IPDL glue between TextureClient and
TextureHost. It is an IPDL actor just like LayerParent, CompositableParent,
||A view on a TextureHost where the texture is internally represented as tiles
(contrast with a tiled buffer, where each texture is a tile). For iteration
by the texture's buffer host. This is only useful when the underlying surface
is too big to fit in one device texture, which forces us to split it in
smaller parts. Tiled Compositable is a different thing.