Andrew Kaster
beb3519a49
LibWeb: Remove unecessary dependence on Window from WebGL and WebSocket
...
These classes only needed Window to get at its realm. Pass a realm
directly to construct WebGL and WebSocket classes.
2022-10-01 21:05:32 +01:00
Hendiadyoin1
5bd34f115e
LibWeb: Add some missing includes
2022-09-13 20:55:21 +02:00
Andreas Kling
4452b5ca09
LibWeb: Make 2D and 3D canvas rendering contexts GC-allocated
2022-09-06 00:27:09 +02:00
Andreas Kling
6f433c8656
LibWeb+LibJS: Make the EventTarget hierarchy (incl. DOM) GC-allocated
...
This is a monster patch that turns all EventTargets into GC-allocated
PlatformObjects. Their C++ wrapper classes are removed, and the LibJS
garbage collector is now responsible for their lifetimes.
There's a fair amount of hacks and band-aids in this patch, and we'll
have a lot of cleanup to do after this.
2022-09-06 00:27:09 +02:00
Luke Wilde
50642f85ac
LibWeb/WebGL: Add WebGLRenderingContextBase.canvas
2022-06-27 22:54:41 +01:00
Luke Wilde
0ec8a19a34
LibWeb/WebGL: Forward the render context ref count to HTMLCanvasElement
...
This allows HTMLCanvasElement and WebGL rendering contexts to share
their lifetime, as JS allows them to arbitrarily access them at any
time and WebGLRCB.canvas expects a non-null return value.
2022-06-27 22:54:41 +01:00
Luke Wilde
0805911a93
LibWeb/WebGL: Implement WebGLRenderingContextBase.depthRange()
2022-06-13 21:45:27 +01:00
Luke Wilde
d9ef228c76
LibWeb/WebGL: Implement WebGLRenderingContextBase.lineWidth()
2022-06-13 21:45:27 +01:00
Luke Wilde
a6617e1096
LibWeb/WebGL: Implement error handling and getError()
2022-06-13 21:45:27 +01:00
Luke Wilde
528c7bea03
LibWeb/WebGL: Add WebGLRenderingContextBase.isContextLost()
2022-06-13 21:45:27 +01:00
Luke Wilde
39a212b54f
LibWeb/WebGL: Add a bunch of simple forwarding functions
...
This collection of functions simply check if the context is still
alive, then forward the call to the GL context.
2022-06-13 21:45:27 +01:00
Luke Wilde
aa77c26b60
LibWeb/WebGL: Add extensions APIs to WebGLRenderingContextBase
...
These currently return nothing, as we don't currently support any WebGL
extensions.
2022-06-13 21:45:27 +01:00
Luke Wilde
076c9772a4
LibWeb: Add ability to present LibGL framebuffer and add clearing
2022-06-13 21:45:27 +01:00
Luke Wilde
58f882200c
LibWeb: Add the ability to retrieve a WebGL context from getContext
2022-06-13 21:45:27 +01:00