In Issue 599285 WebGL's premultipliedAlpha context creation attribute was fixed on macOS by avoiding the use of GpuMemoryBuffers when it's set to false. (At least on macOS, Core Animation can't treat alpha as non-premultiplied.) The fallback, however, triggers the GL compositor, and we'd prefer to stay on the Core Animation path.
We should add a code path which, if WebGL's DrawingBuffer prefers to use GpuMemoryBuffers and premultipliedAlpha is set to false, renders into a regular texture and uses CopyTextureCHROMIUM to blit into the GpuMemoryBuffer, multiplying the alpha channel into the color channels on the way, and then give the GMB to the compositor.
ccameron@ indicated he could pick this up. (Thanks.)
Comment 1 by kbr@chromium.org
, Nov 21 2017