ladybird/Meta
Aliaksandr Kalenik 5b856595b3 Meta+LibWeb/WebGL: Route all GL calls through generated GLFunctions
LibWeb's WebGL implementation currently reaches ANGLE by calling glFoo()
throughout the WebGL context and extension code. That ties the WebGL
spec layer to the concrete GL executor. A future backend that records
operations, sends them to another process, or executes them from the
Compositor would otherwise need to duplicate the WebGL logic or edit
every call site again.

Introduce GLFunctions as an explicit boundary between WebGL semantics
and GL execution. GLFunctions.json lists the GL entry points used by the
implementation, and the generator emits one forwarding method per entry
point. OpenGLContext implements those methods today, so the current
in-process ANGLE path keeps the same behavior while all callers go
through a single replaceable interface.

That boundary is needed before canvas/WebGL rendering can move to the
Compositor: the WebGL context code can keep doing validation, state
tracking, and spec-visible error handling in LibWeb, while a later
implementation can record the same GL calls and replay them where the
canvas surface is produced. The JSON source also gives the recorder and
replayer one shared description of argument shapes, avoiding two
hand-written views of the GL API drifting apart.
2026-06-13 01:58:43 +02:00
..
CMake Meta+LibWeb/WebGL: Route all GL calls through generated GLFunctions 2026-06-13 01:58:43 +02:00
Debuggers Meta: Restore serenity_gdb.py 2026-05-28 14:33:25 +01:00
Docker/ci Meta: Revert to a stable rust compiler 2026-06-02 20:12:41 +02:00
Generators Meta+LibWeb/WebGL: Route all GL calls through generated GLFunctions 2026-06-13 01:58:43 +02:00
Lagom LibGfx+LibWeb: Remove TIFF image decoding 2026-06-12 22:37:49 +02:00
Linters LibMedia: Implement audio time stretching with WSOLA 2026-06-06 19:58:17 -05:00
Utils Meta: Enable Gtk UI on macOS 2026-06-09 17:10:31 +02:00
debug.plist CMake: Add a command for codesigning with the get-task-allow entitlement 2024-07-02 16:57:51 -06:00
gc-heap-explorer.html Meta: Simplify GC heap explorer's class list rendering 2026-03-01 21:50:51 +01:00
import-v8-regexp-tests.py Tests+Meta: Reimport V8 regexp tests 2026-05-26 10:00:22 +02:00
import-webkit-regexp-tests.py Tests+Meta: Reimport WebKit regexp tests 2026-05-26 10:00:22 +02:00
import-wpt-test.py Meta: Handle legacy-encoded WPT files in import-wpt-test.py 2026-05-23 11:57:33 +02:00
ladybird.py Meta: Remove obsolete Lagom host-tools build 2026-06-08 01:11:40 +02:00
lint-ci.sh Meta: Revert to a stable rust compiler 2026-06-02 20:12:41 +02:00
lint-commit.sh Meta: Allow a couple of extra characters in long URLs in commit messages 2026-01-10 20:25:16 +01:00
refresh-ladybird-qtcreator.sh Documentation+Meta: Remove references to nonexistent Toolchain directory 2026-04-21 06:56:32 -04:00
watch_wpt_progress.sh Meta: Make WPT.sh run nproc/2 testrunners in parallel 2025-05-07 15:48:21 +01:00
wpt-bisect-helper.sh Meta: Add WPT.sh bisect for finding WPT regressions automatically 2025-07-17 10:51:12 +02:00
WPT.sh Meta: Move utility scripts to a subfolder 2026-04-23 12:36:08 -04:00