Stacking context and offscreen bitmaps

In order to have interoperable implementations of blending and filters,
there needs to be a specification that describes when offscreen bitmaps are
generated.
Currently, the compositing spec states that every stacking context will
have a buffer [1] but that is not always the case [2]. This behavior is not
documented.

I can see 2 ways forward:
1. document the current browser behavior
Create a new document, or extend "Appendix E. Elaborate description of
Stacking Contexts" [3] so it describes when off-screen buffers should be
generated.
Browsers wouldn't have to change their behavior if they didn't follow the
spec except where it would make a difference.
For instance, if a browser did not create a buffer for a stacking context
but the spec said it should and there is blending or a filter that accesses
the backdrop, then the stacking context should create a buffer.
I think this would be fairly easy to implement but it would take quite a
bit of time to investigate and document. A drawback is that the spec would
be complex and hard to use for authors

2. Always give a stacking context on offscreen buffer if it contains an
element with blending.
This would be a bit harder to implement, but easy to specify.
The biggest drawback is that it introduces more isolated groups. For
instance, 2d transform or 'position: abs' won't force isolation currently.

Rik


1:
https://dvcs.w3.org/hg/FXTF/rawfile/default/compositing/index.html#csscompositingrules_CSS
2: http://lists.w3.org/Archives/Public/public-fx/2013JanMar/0109.html
3: http://www.w3.org/TR/CSS21/zindex.html

Received on Thursday, 7 March 2013 21:06:11 UTC