ladybird/Libraries/LibWeb/WebGL
Shannon Booth 637fd51595 LibWeb: Unify WebIDL C++ type generation
Represent WebIDL C++ types with a single CppType model that tracks
nullability, optional presence, and contained storage.

GC-like values now use GC::Ref/GC::Ptr directly, while containers choose
"plain", "Root", or "Conservative" container types depending on what
they contain. For example, sequence<Element> becomes a RootVector of
GC::Ref values, while sequence<SomeDictionary> becomes a
ConservativeVector only when the dictionary contains GC-like values.
This moves the generated bindings away from wrapping GC values in
GC::Root by default.

This has broad fallout as the types passed to interfaces for GC
objects changes almost fully across the board.
2026-05-23 18:26:12 +02:00
..
Extensions LibWeb+LibIDL: Remove support for #import directives during parsing 2026-04-24 20:08:29 +02:00
EventNames.cpp LibWeb: Remove the initialize_strings methods 2025-01-12 00:35:58 +01:00
EventNames.h LibWeb: Remove the initialize_strings methods 2025-01-12 00:35:58 +01:00
OpenGLContext.cpp LibWeb: Initialize WebGL viewport on macOS IOSurface surface allocation 2026-04-22 22:38:16 +02:00
OpenGLContext.h Meta+LibGfx: Rename USE_VULKAN_IMAGES to USE_VULKAN_DMABUF_IMAGES 2026-04-12 21:18:33 +02:00
Types.h LibWeb: Deduplicate the WebGL null_terminated_string helper 2025-11-05 02:19:32 +01:00
Types.idl LibWeb/WebGL: Define Float32List exactly like in the spec 2025-09-30 16:47:16 +02:00
WebGL2RenderingContext.cpp LibGfx: Rename main-thread Skia backend accessor 2026-05-04 20:12:21 +02:00
WebGL2RenderingContext.h LibWeb: Implement enough of WebXR for xrSession_end test to pass 2026-04-03 13:14:33 +02:00
WebGL2RenderingContext.idl LibWeb+LibIDL: Remove support for #import directives during parsing 2026-04-24 20:08:29 +02:00
WebGL2RenderingContextBase.idl LibWeb+LibIDL: Remove support for #import directives during parsing 2026-04-24 20:08:29 +02:00
WebGL2RenderingContextImpl.cpp LibWeb: Introduce a WebGL extension_enabled helper 2026-03-11 20:19:45 +01:00
WebGL2RenderingContextImpl.h LibWeb: Give IDL exposed PlatformObjects an InterfaceName 2026-02-14 20:22:40 +01:00
WebGL2RenderingContextOverloads.cpp LibWeb: Unify WebIDL C++ type generation 2026-05-23 18:26:12 +02:00
WebGL2RenderingContextOverloads.h LibWeb: Unify WebIDL C++ type generation 2026-05-23 18:26:12 +02:00
WebGL2RenderingContextOverloads.idl LibWeb+LibIDL: Remove support for #import directives during parsing 2026-04-24 20:08:29 +02:00
WebGLActiveInfo.cpp LibWeb/Bindings: Emit one bindings header and cpp per IDL 2026-04-21 07:36:13 +02:00
WebGLActiveInfo.h LibWeb/WebGL: Implement getActiveAttrib() and getActiveUniform() 2024-12-03 23:35:45 +01:00
WebGLActiveInfo.idl LibWeb+LibIDL: Remove support for #import directives during parsing 2026-04-24 20:08:29 +02:00
WebGLBuffer.cpp LibWeb/Bindings: Emit one bindings header and cpp per IDL 2026-04-21 07:36:13 +02:00
WebGLBuffer.h LibWeb: Make WebGLRenderingContextBase derive from PlatformObject 2026-01-10 13:22:17 +01:00
WebGLBuffer.idl LibWeb+LibIDL: Remove support for #import directives during parsing 2026-04-24 20:08:29 +02:00
WebGLContextAttributes.cpp LibJS+LibWeb+WebContent: Port JS::PropertyKey to UTF-16 2025-08-05 07:07:15 -04:00
WebGLContextAttributes.h LibWeb/Bindings: Emit one bindings header and cpp per IDL 2026-04-21 07:36:13 +02:00
WebGLContextEvent.cpp LibWeb/Bindings: Generate struct definitions from IDL dictionaries 2026-05-09 10:49:49 +02:00
WebGLContextEvent.h LibWeb/Bindings: Generate struct definitions from IDL dictionaries 2026-05-09 10:49:49 +02:00
WebGLContextEvent.idl LibWeb+LibIDL: Remove support for #import directives during parsing 2026-04-24 20:08:29 +02:00
WebGLFramebuffer.cpp LibWeb/Bindings: Emit one bindings header and cpp per IDL 2026-04-21 07:36:13 +02:00
WebGLFramebuffer.h LibWeb: Make WebGLRenderingContextBase derive from PlatformObject 2026-01-10 13:22:17 +01:00
WebGLFramebuffer.idl LibWeb+LibIDL: Remove support for #import directives during parsing 2026-04-24 20:08:29 +02:00
WebGLObject.cpp LibWeb/Bindings: Emit one bindings header and cpp per IDL 2026-04-21 07:36:13 +02:00
WebGLObject.h LibWeb: Make WebGLRenderingContextBase derive from PlatformObject 2026-01-10 13:22:17 +01:00
WebGLObject.idl LibWeb: Add WebGLObject interface 2024-11-13 11:41:54 +01:00
WebGLProgram.cpp LibWeb/Bindings: Emit one bindings header and cpp per IDL 2026-04-21 07:36:13 +02:00
WebGLProgram.h LibWeb: Make WebGLRenderingContextBase derive from PlatformObject 2026-01-10 13:22:17 +01:00
WebGLProgram.idl LibWeb+LibIDL: Remove support for #import directives during parsing 2026-04-24 20:08:29 +02:00
WebGLQuery.cpp LibWeb/Bindings: Emit one bindings header and cpp per IDL 2026-04-21 07:36:13 +02:00
WebGLQuery.h LibWeb: Make WebGLRenderingContextBase derive from PlatformObject 2026-01-10 13:22:17 +01:00
WebGLQuery.idl LibWeb+LibIDL: Remove support for #import directives during parsing 2026-04-24 20:08:29 +02:00
WebGLRenderbuffer.cpp LibWeb/Bindings: Emit one bindings header and cpp per IDL 2026-04-21 07:36:13 +02:00
WebGLRenderbuffer.h LibWeb: Make WebGLRenderingContextBase derive from PlatformObject 2026-01-10 13:22:17 +01:00
WebGLRenderbuffer.idl LibWeb+LibIDL: Remove support for #import directives during parsing 2026-04-24 20:08:29 +02:00
WebGLRenderingContext.cpp LibWeb/Bindings: Generate struct definitions from IDL dictionaries 2026-05-09 10:49:49 +02:00
WebGLRenderingContext.h LibWeb: Implement enough of WebXR for xrSession_end test to pass 2026-04-03 13:14:33 +02:00
WebGLRenderingContext.idl LibWeb+LibIDL: Remove support for #import directives during parsing 2026-04-24 20:08:29 +02:00
WebGLRenderingContextBase.cpp LibWeb: Unify WebIDL C++ type generation 2026-05-23 18:26:12 +02:00
WebGLRenderingContextBase.h LibWeb: Unify WebIDL C++ type generation 2026-05-23 18:26:12 +02:00
WebGLRenderingContextBase.idl LibWeb+LibIDL: Remove support for #import directives during parsing 2026-04-24 20:08:29 +02:00
WebGLRenderingContextImpl.cpp LibWeb: Implement WEBGL_debug_renderer_info extension 2026-04-22 22:38:16 +02:00
WebGLRenderingContextImpl.h LibWeb: Give IDL exposed PlatformObjects an InterfaceName 2026-02-14 20:22:40 +01:00
WebGLRenderingContextOverloads.cpp LibWeb: Unify WebIDL C++ type generation 2026-05-23 18:26:12 +02:00
WebGLRenderingContextOverloads.h LibWeb: Unify WebIDL C++ type generation 2026-05-23 18:26:12 +02:00
WebGLRenderingContextOverloads.idl LibWeb+LibIDL: Remove support for #import directives during parsing 2026-04-24 20:08:29 +02:00
WebGLSampler.cpp LibWeb/Bindings: Emit one bindings header and cpp per IDL 2026-04-21 07:36:13 +02:00
WebGLSampler.h LibWeb: Make WebGLRenderingContextBase derive from PlatformObject 2026-01-10 13:22:17 +01:00
WebGLSampler.idl LibWeb+LibIDL: Remove support for #import directives during parsing 2026-04-24 20:08:29 +02:00
WebGLShader.cpp LibWeb/Bindings: Emit one bindings header and cpp per IDL 2026-04-21 07:36:13 +02:00
WebGLShader.h LibWeb: Make WebGLRenderingContextBase derive from PlatformObject 2026-01-10 13:22:17 +01:00
WebGLShader.idl LibWeb+LibIDL: Remove support for #import directives during parsing 2026-04-24 20:08:29 +02:00
WebGLShaderPrecisionFormat.cpp LibWeb/Bindings: Emit one bindings header and cpp per IDL 2026-04-21 07:36:13 +02:00
WebGLShaderPrecisionFormat.h LibWeb/WebGL: Implement getShaderPrecisionFormat 2024-12-05 21:27:32 +01:00
WebGLShaderPrecisionFormat.idl LibWeb+LibIDL: Remove support for #import directives during parsing 2026-04-24 20:08:29 +02:00
WebGLSync.cpp LibWeb/Bindings: Emit one bindings header and cpp per IDL 2026-04-21 07:36:13 +02:00
WebGLSync.h LibWeb: Make WebGLRenderingContextBase derive from PlatformObject 2026-01-10 13:22:17 +01:00
WebGLSync.idl LibWeb+LibIDL: Remove support for #import directives during parsing 2026-04-24 20:08:29 +02:00
WebGLTexture.cpp LibWeb/Bindings: Emit one bindings header and cpp per IDL 2026-04-21 07:36:13 +02:00
WebGLTexture.h LibWeb: Make WebGLRenderingContextBase derive from PlatformObject 2026-01-10 13:22:17 +01:00
WebGLTexture.idl LibWeb+LibIDL: Remove support for #import directives during parsing 2026-04-24 20:08:29 +02:00
WebGLTransformFeedback.cpp LibWeb/Bindings: Emit one bindings header and cpp per IDL 2026-04-21 07:36:13 +02:00
WebGLTransformFeedback.h LibWeb: Make WebGLRenderingContextBase derive from PlatformObject 2026-01-10 13:22:17 +01:00
WebGLTransformFeedback.idl LibWeb+LibIDL: Remove support for #import directives during parsing 2026-04-24 20:08:29 +02:00
WebGLUniformLocation.cpp LibWeb/Bindings: Emit one bindings header and cpp per IDL 2026-04-21 07:36:13 +02:00
WebGLUniformLocation.h LibWeb: Bind WebGL uniform locations to their respective program 2025-11-27 19:19:54 +01:00
WebGLUniformLocation.idl LibWeb+LibIDL: Remove support for #import directives during parsing 2026-04-24 20:08:29 +02:00
WebGLVertexArrayObject.cpp LibWeb/Bindings: Emit one bindings header and cpp per IDL 2026-04-21 07:36:13 +02:00
WebGLVertexArrayObject.h LibWeb: Make WebGLRenderingContextBase derive from PlatformObject 2026-01-10 13:22:17 +01:00
WebGLVertexArrayObject.idl LibWeb+LibIDL: Remove support for #import directives during parsing 2026-04-24 20:08:29 +02:00