Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: cfd20438976858a9fac390266da08f6b480d60f5
      
https://github.com/WebKit/WebKit/commit/cfd20438976858a9fac390266da08f6b480d60f5
  Author: Kimmo Kinnunen <[email protected]>
  Date:   2026-06-26 (Fri, 26 Jun 2026)

  Changed paths:
    M Source/WebCore/html/canvas/WebGLDefaultFramebuffer.cpp
    M Source/WebCore/html/canvas/WebGLDefaultFramebuffer.h
    M Source/WebCore/html/canvas/WebGLRenderingContextBase.cpp
    M Source/WebCore/html/canvas/WebGLRenderingContextBase.h
    M Source/WebKit/GPUProcess/graphics/RemoteGraphicsContextGL.cpp
    M 
Source/WebKit/GPUProcess/graphics/RemoteGraphicsContextGLInitializationState.h
    M 
Source/WebKit/GPUProcess/graphics/RemoteGraphicsContextGLInitializationState.serialization.in
    M Source/WebKit/WebProcess/GPU/graphics/RemoteGraphicsContextGLProxy.cpp

  Log Message:
  -----------
  WebGL: Use default frame buffer properties from WebGLDefaultFramebuffer
https://bugs.webkit.org/show_bug.cgi?id=317748
rdar://180505090

Reviewed by Dan Glastonbury.

Access context attributes through WebGLDefaultFramebuffer instead
of GraphicsContextGL.

This is work to reduce bugs due to state management in
GraphicsContextGL, preparing to move the context default framebuffer
implementation (MSAA management, etc.) from GraphicsContextGL into the
WebGL layer.

Fixes following theoretical bugs:
 - Theoretically adjusted contextAttributes were not communicated
   back from GPUP.
 - The theoretically adjusted stencil attribute wasn't adjusted
   in WCP side due to copy-paste error:
   `if (m_attributes.stencil) m_attributes.depth = glAttributes.depth;`

* Source/WebCore/html/canvas/WebGLDefaultFramebuffer.cpp:
(WebCore::WebGLDefaultFramebuffer::WebGLDefaultFramebuffer):
(WebCore::WebGLDefaultFramebuffer::size const):
(WebCore::WebGLDefaultFramebuffer::reshape):
* Source/WebCore/html/canvas/WebGLDefaultFramebuffer.h:
* Source/WebCore/html/canvas/WebGLRenderingContextBase.cpp:
(WebCore::WebGLRenderingContextBase::initializeContextState):
* Source/WebCore/html/canvas/WebGLRenderingContextBase.h:
(WebCore::WebGLRenderingContextBase::attributes const):
* Source/WebKit/GPUProcess/graphics/RemoteGraphicsContextGL.cpp:
(WebKit::RemoteGraphicsContextGL::workQueueInitialize):
* 
Source/WebKit/GPUProcess/graphics/RemoteGraphicsContextGLInitializationState.h:
* 
Source/WebKit/GPUProcess/graphics/RemoteGraphicsContextGLInitializationState.serialization.in:
* Source/WebKit/WebProcess/GPU/graphics/RemoteGraphicsContextGLProxy.cpp:
(WebKit::RemoteGraphicsContextGLProxy::initialize):

Canonical link: https://commits.webkit.org/315882@main



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications

Reply via email to