[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Public WebGL] Improving "explicit context loss handling"
Based on the earlier discussion with Boris and Cameron, I'll suggest the following:
1. Replace the "The following methods have explicit context lost handling..." section with WebIDL extended attributes. Remove that list, and add the [WebGLContextLoss] attribute to those methods, eg.
[WebGLContextLoss] boolean isContextLost();
[WebGLContextLoss] GLenum checkFramebufferStatus(GLenum target);
2. In 5.14, replace step 1. with: "1. If the [WebGLContextLoss] extended
attribute appears on the called method, perform the implementation of
the called method,
return its result and terminate these steps."
This makes it much easier to see a function's behavior by looking at the IDL. Currently you have to "just know" that there's a list of functions somewhere that may affect it; this attribute is a much clearer tip-off, even on first reading.
It makes it possible to automatically sanity-check the IDL, to ensure that all functions with non-nullable, non-any return values are also [WebGLContextLoss]. It may also be usable by implementors, to automatically generate the binding logic for these functions.