Re: [dev-servo] WebGL canvas display

2015-03-14 Thread Patrick Walton
Well, I don't know how to without sacrificing incremental display list building. The idea behind incremental DL building is to retain display lists at the level of stacking contexts: each stacking context is associated with a DL and optionally a layer. This makes it very easy to avoid

Re: [dev-servo] WebGL canvas display

2015-03-14 Thread Robert O'Callahan
On Sun, Mar 15, 2015 at 6:38 AM, Patrick Walton pwal...@mozilla.com wrote: One issue is that we have to unconditionally layerize canvases for this, which violates the spec. What do you mean, it violates the spec? Rob -- oIo otoeololo oyooouo otohoaoto oaonoyooonoeo owohooo oioso oaonogoroyo

Re: [dev-servo] WebGL canvas display

2015-03-14 Thread Patrick Walton
We can only layerize stacking contexts, since we have no FrameLayerBuilder. So we have to promote canvases to stacking contexts if we want to layerize them. WebKit does the same thing. Patrick On Mar 14, 2015 10:08 PM, Robert O'Callahan rob...@ocallahan.org wrote: On Sun, Mar 15, 2015 at 6:38

Re: [dev-servo] WebGL canvas display

2015-03-14 Thread Patrick Walton
So readback is definitely the easiest way to get started, but obviously it won't work long-term. The right way is to create a new type of layer, a CanvasLayer, that encompasses a native shared surface shared between the WebGL task and the compositor. A native shared surface is the same