@@ -2436,6 +2436,11 @@ JS::Value WebGL2RenderingContextImpl::get_parameter(WebIDL::UnsignedLong pname)
24362436 return JS::js_null ();
24372437 return JS::Value (m_framebuffer_binding);
24382438 }
2439+ case GL_FRAGMENT_SHADER_DERIVATIVE_HINT: {
2440+ GLint result { 0 };
2441+ glGetIntegervRobustANGLE (GL_FRAGMENT_SHADER_DERIVATIVE_HINT, 1 , nullptr , &result);
2442+ return JS::Value (result);
2443+ }
24392444 case GL_FRONT_FACE: {
24402445 GLint result { 0 };
24412446 glGetIntegervRobustANGLE (GL_FRONT_FACE, 1 , nullptr , &result);
@@ -2530,6 +2535,21 @@ JS::Value WebGL2RenderingContextImpl::get_parameter(WebIDL::UnsignedLong pname)
25302535 glGetIntegervRobustANGLE (GL_PACK_ALIGNMENT, 1 , nullptr , &result);
25312536 return JS::Value (result);
25322537 }
2538+ case GL_PACK_ROW_LENGTH: {
2539+ GLint result { 0 };
2540+ glGetIntegervRobustANGLE (GL_PACK_ROW_LENGTH, 1 , nullptr , &result);
2541+ return JS::Value (result);
2542+ }
2543+ case GL_PACK_SKIP_ROWS: {
2544+ GLint result { 0 };
2545+ glGetIntegervRobustANGLE (GL_PACK_SKIP_ROWS, 1 , nullptr , &result);
2546+ return JS::Value (result);
2547+ }
2548+ case GL_PACK_SKIP_PIXELS: {
2549+ GLint result { 0 };
2550+ glGetIntegervRobustANGLE (GL_PACK_SKIP_PIXELS, 1 , nullptr , &result);
2551+ return JS::Value (result);
2552+ }
25332553 case GL_POLYGON_OFFSET_FACTOR: {
25342554 GLfloat result { 0 .0f };
25352555 glGetFloatvRobustANGLE (GL_POLYGON_OFFSET_FACTOR, 1 , nullptr , &result);
@@ -2545,6 +2565,11 @@ JS::Value WebGL2RenderingContextImpl::get_parameter(WebIDL::UnsignedLong pname)
25452565 glGetFloatvRobustANGLE (GL_POLYGON_OFFSET_UNITS, 1 , nullptr , &result);
25462566 return JS::Value (result);
25472567 }
2568+ case GL_RASTERIZER_DISCARD: {
2569+ GLboolean result { GL_FALSE };
2570+ glGetBooleanvRobustANGLE (GL_RASTERIZER_DISCARD, 1 , nullptr , &result);
2571+ return JS::Value (result == GL_TRUE);
2572+ }
25482573 case GL_RED_BITS: {
25492574 GLint result { 0 };
25502575 glGetIntegervRobustANGLE (GL_RED_BITS, 1 , nullptr , &result);
@@ -2584,6 +2609,11 @@ JS::Value WebGL2RenderingContextImpl::get_parameter(WebIDL::UnsignedLong pname)
25842609 glGetFloatvRobustANGLE (GL_SAMPLE_COVERAGE_VALUE, 1 , nullptr , &result);
25852610 return JS::Value (result);
25862611 }
2612+ case GL_SAMPLER_BINDING: {
2613+ GLint handle { 0 };
2614+ glGetIntegervRobustANGLE (GL_SAMPLER_BINDING, 1 , nullptr , &handle);
2615+ return WebGLSampler::create (m_realm, *this , handle);
2616+ }
25872617 case GL_SAMPLES: {
25882618 GLint result { 0 };
25892619 glGetIntegervRobustANGLE (GL_SAMPLES, 1 , nullptr , &result);
@@ -2712,6 +2742,31 @@ JS::Value WebGL2RenderingContextImpl::get_parameter(WebIDL::UnsignedLong pname)
27122742 glGetIntegervRobustANGLE (GL_UNPACK_ALIGNMENT, 1 , nullptr , &result);
27132743 return JS::Value (result);
27142744 }
2745+ case GL_UNPACK_IMAGE_HEIGHT: {
2746+ GLint result { 0 };
2747+ glGetIntegervRobustANGLE (GL_UNPACK_IMAGE_HEIGHT, 1 , nullptr , &result);
2748+ return JS::Value (result);
2749+ }
2750+ case GL_UNPACK_ROW_LENGTH: {
2751+ GLint result { 0 };
2752+ glGetIntegervRobustANGLE (GL_UNPACK_ROW_LENGTH, 1 , nullptr , &result);
2753+ return JS::Value (result);
2754+ }
2755+ case GL_UNPACK_SKIP_IMAGES: {
2756+ GLint result { 0 };
2757+ glGetIntegervRobustANGLE (GL_UNPACK_SKIP_IMAGES, 1 , nullptr , &result);
2758+ return JS::Value (result);
2759+ }
2760+ case GL_UNPACK_SKIP_PIXELS: {
2761+ GLint result { 0 };
2762+ glGetIntegervRobustANGLE (GL_UNPACK_SKIP_PIXELS, 1 , nullptr , &result);
2763+ return JS::Value (result);
2764+ }
2765+ case GL_UNPACK_SKIP_ROWS: {
2766+ GLint result { 0 };
2767+ glGetIntegervRobustANGLE (GL_UNPACK_SKIP_ROWS, 1 , nullptr , &result);
2768+ return JS::Value (result);
2769+ }
27152770 case GL_VENDOR: {
27162771 auto result = reinterpret_cast <char const *>(glGetString (GL_VENDOR));
27172772 return JS::PrimitiveString::create (m_realm->vm (), ByteString { result });
0 commit comments