I lean really hard into using the precise variable names and language
from the spec here. Previously I had more qualitative/descriptive names,
but I found this to mostly cause confusion. When we're up to our waists
in spec edge cases like we are here, descriptive qualitative names can
just be deceptive, and lead to incorrect intuitions.
Differential Revision: https://phabricator.services.mozilla.com/D107016
E.g. Blitting 1,1,-1,-1 to 0,2,2,0.
Some drivers have trouble with this.
Primarily tested by:
* conformance2/rendering/blitframebuffer-filter-outofbounds.html
* conformance2/rendering/blitframebuffer-outside-readbuffer.html
Differential Revision: https://phabricator.services.mozilla.com/D97890
* Majorly simplity CanvasRenderer
* Replace GLScreenBuffer with trivial GLSwapChain
* Use descriptor structs so that future SharedSurface changes aren't so painful
to propagate
* Mortgage/strip out more OffscreenCanvas code for now
Differential Revision: https://phabricator.services.mozilla.com/D75055
* Majorly simplity CanvasRenderer
* Replace GLScreenBuffer with trivial GLSwapChain
* Use descriptor structs so that future SharedSurface changes aren't so painful
to propagate
* Mortgage/strip out more OffscreenCanvas code for now
Differential Revision: https://phabricator.services.mozilla.com/D75055
* Majorly simplity CanvasRenderer
* Replace GLScreenBuffer with trivial GLSwapChain
* Use descriptor structs so that future SharedSurface changes aren't so painful
to propagate
* Mortgage/strip out more OffscreenCanvas code for now
Differential Revision: https://phabricator.services.mozilla.com/D75055
* Majorly simplity CanvasRenderer
* Replace GLScreenBuffer with trivial GLSwapChain
* Use descriptor structs so that future SharedSurface changes aren't so painful
to propagate
* Mortgage/strip out more OffscreenCanvas code for now
Differential Revision: https://phabricator.services.mozilla.com/D75055
* Context loss using RAII
* Move Program reflection Client-side
Depends on D54018
Differential Revision: https://phabricator.services.mozilla.com/D54019
--HG--
extra : moz-landing-system : lando
Splits WebGLContext into ClientWebGLContext and HostWebGLContext. The Client enables the JS-control of a WebGL context in a content procecss while the Host executes the WebGL graphics operations (via a WebGLContext that maintains much of the existing code) in the compositor process. At this point, the cross-process behavior is disabled -- this series of patches is an incremental step toward that final goal.
Differential Revision: https://phabricator.services.mozilla.com/D54018
--HG--
extra : moz-landing-system : lando
Before this patch any partial upload to a texture would incur
a zeroing of the texture first to prevent leakage of information.
The texture now tracks, for each image not fully initialized,
which z-slices have been initialized, and only zeroes the rest
of the slices when the texture is used.
Differential Revision: https://phabricator.services.mozilla.com/D37843
--HG--
extra : moz-landing-system : lando
Before this patch any partial upload to a texture would incur
a zeroing of the texture first to prevent leakage of information.
The texture now tracks, for each image not fully initialized,
which z-slices have been initialized, and only zeroes the rest
of the slices when the texture is used.
Differential Revision: https://phabricator.services.mozilla.com/D37843
--HG--
extra : moz-landing-system : lando
glBlitFramebuffer ignores glColorMask, unlike glClear, so we have to do
a fix-up.
Eventually we should drop mNeedsFakeNoAlpha, though.
Differential Revision: https://phabricator.services.mozilla.com/D17717
--HG--
extra : moz-landing-system : lando
This is a best effort attempt at ensuring that the adverse impact of
reformatting the entire tree over the comments would be minimal. I've used a
combination of strategies including disabling of formatting, some manual
formatting and some changes to formatting to work around some clang-format
limitations.
Differential Revision: https://phabricator.services.mozilla.com/D13046
--HG--
extra : moz-landing-system : lando