InvalidUsernameException
28ba610f32
Everywhere: Avoid large rebuilds when editing (Immutable)Bitmap headers
...
This reduces the number of recompiled files as follow:
- Bitmap.h: 1309 -> 101
- ImmutableBitmap.h: 1218 -> 75
2025-11-28 18:32:48 +01:00
Undefine
5b88b76b84
LibWeb: Deduplicate WebGL1 implementations from WebGL2
...
This makes the WebGL2 implementation file inherit from the WebGL1
implementation file. This is actually closer to what the IDL files
describe and allows us to not have to maintain two copies of the same
functions.
2025-11-05 02:19:32 +01:00
Undefine
6c115171da
LibWeb: Split off WebGL2RenderingContextImpl to Impl and Overloads
...
This mostly analogous to the previous commit that does the same with
the WebGL1 Impl file.
2025-11-05 02:19:32 +01:00
Undefine
7f0f1c3266
LibWeb: Add missing WebGL includes
2025-11-05 02:19:32 +01:00
Undefine
50d66ba74c
LibWeb: Implement WebGL getVertexAttribOffset
2025-11-01 16:53:39 -07:00
Undefine
1bc7e9d3f8
LibWeb: Stub out WebGL getUniform
...
This makes the function return a dummy value instead of undefined
as that fixes a crash while capturing on SpectorJS.
2025-11-01 16:53:39 -07:00
Undefine
a2c659ee6b
LibWeb: Implement WebGL getVertexAttrib
...
This also implements all allowed parameter name values for this
function.
2025-11-01 16:53:39 -07:00
Undefine
2d8b393c76
LibWeb: Implement WebGL getShaderSource
2025-11-01 16:53:39 -07:00
Jelle Raaijmakers
2f7797f854
LibWeb: Implement WebGL2's getBufferSubData()
...
This allows copying data from a buffer to an ArrayBufferView's storage.
2025-10-30 16:20:33 -07:00
Jelle Raaijmakers
25d78f7c8e
LibWeb: Implement WebGL2's readPixels with a byte offset argument
...
We pass it in as a `void*` since that's what this API expects when you
have bound the GL_PIXEL_PACK_BUFFER buffer.
2025-10-30 16:20:33 -07:00
Jelle Raaijmakers
7b5940d27d
LibWeb: Store and return pixel (un)pack buffer bindings in WebGL2
2025-10-30 16:20:33 -07:00
Luke Wilde
4ebe43af58
LibWeb/WebGL2: Implement most of the transform feedback APIs
2025-10-21 23:29:50 +02:00
Luke Wilde
39d42b7b73
LibWeb/WebGL2: Implement waitSync
2025-10-21 23:29:50 +02:00
Luke Wilde
3d2874bc4e
LibWeb/WebGL2: Implement invalidateSubFramebuffer
2025-10-21 23:29:50 +02:00
Luke Wilde
b949c8ea47
LibWeb/WebGL2: Implement framebufferTextureLayer
2025-10-21 23:29:50 +02:00
Luke Wilde
5c1bf5c3f6
LibWeb/WebGL2: Implement most of the query APIs
2025-10-21 23:29:50 +02:00
Luke Wilde
2b941731a7
LibWeb/WebGL2: Implement compressedTex(Sub)Image3D
2025-10-21 23:29:50 +02:00
Luke Wilde
8dcbe69eb6
LibWeb/WebGL2: Implement drawRangeElements
2025-10-21 23:29:50 +02:00
Luke Wilde
2c13a2a68c
LibWeb/WebGL2: Implement vertexAttribI4(u)i(v)
2025-10-21 23:29:50 +02:00
Luke Wilde
35763ffe53
LibWeb/WebGL2: Implement uniform{1,2,3,4}uiv
2025-10-21 23:29:50 +02:00
Luke Wilde
59bea36a59
LibWeb/WebGL2: Implement remaining uniformMatrix methods
2025-10-21 23:29:50 +02:00
Aliaksandr Kalenik
a6288e12e9
LibWeb/WebGL: Use TexImageSource alias in method signatures
2025-10-02 18:41:02 +02:00
Aliaksandr Kalenik
ffc05a9ca9
LibWeb/WebGL: Define Uint32List exactly like in the spec
...
Same fix as d54cab60 but applied for Uint32List.
2025-09-30 18:35:32 +02:00
Aliaksandr Kalenik
c75a8fab3b
LibWeb/WebGL: Define Int32List exactly like in the spec
...
Same fix as d54cab60 but applied for Int32List.
2025-09-30 17:57:46 +02:00
Aliaksandr Kalenik
d54cab60a8
LibWeb/WebGL: Define Float32List exactly like in the spec
...
Use `Float32Array or sequence<GLfloat>` instead of
`BufferSource or sequence<GLfloat>`. This meaningfully changes behavior
for `Float16Array` and `Float64Array`: they are now converted to
`sequence<GLfloat>` by iterating the typed array, rather than being
treated as a `BufferSource`. As a result, many WebGL calls now work
correctly where we previously crashed in `VERIFY_NOT_REACHED()` due to
the assumption that a `BufferSource` was always a `Float32Array`.
Fixes https://github.com/LadybirdBrowser/ladybird/issues/5962
2025-09-30 16:47:16 +02:00
Luke Wilde
e85b809f8d
LibWeb+Meta: Move WebGL rendering context implementations in tree
...
This copies the latest generated code in tree and then removes code
generation for the WebGL rendering contexts. This is because it didn't
add much value, and we can maintain the generated output instead of
both that and the generator itself.
2025-07-02 19:00:49 +02:00