Index: third_party/WebKit/Source/platform/graphics/gpu/DrawingBuffer.h |
diff --git a/third_party/WebKit/Source/platform/graphics/gpu/DrawingBuffer.h b/third_party/WebKit/Source/platform/graphics/gpu/DrawingBuffer.h |
index b99c5e7b642828a0bb305ffe29e5fbf20c79099d..56f1eea05f3abd78eada2f5db471b6905ff3b8e9 100644 |
--- a/third_party/WebKit/Source/platform/graphics/gpu/DrawingBuffer.h |
+++ b/third_party/WebKit/Source/platform/graphics/gpu/DrawingBuffer.h |
@@ -232,19 +232,6 @@ class PLATFORM_EXPORT DrawingBuffer |
new_mailbox_callback_ = std::move(closure); |
} |
- // This class helps implement correct semantics for BlitFramebuffer |
- // when the DrawingBuffer is using a CHROMIUM image for its backing |
- // store and RGB emulation is in use (basically, macOS only). |
- class PLATFORM_EXPORT ScopedRGBEmulationForBlitFramebuffer { |
- public: |
- ScopedRGBEmulationForBlitFramebuffer(DrawingBuffer*); |
- ~ScopedRGBEmulationForBlitFramebuffer(); |
- |
- private: |
- RefPtr<DrawingBuffer> drawing_buffer_; |
- bool doing_work_ = false; |
- }; |
- |
protected: // For unittests |
DrawingBuffer(std::unique_ptr<WebGraphicsContext3DProvider>, |
std::unique_ptr<Extensions3DUtil>, |
@@ -270,7 +257,6 @@ class PLATFORM_EXPORT DrawingBuffer |
Vector<RecycledBitmap> recycled_bitmaps_; |
private: |
- friend class ScopedRGBEmulationForBlitFramebuffer; |
friend class ScopedStateRestorer; |
friend class ColorBuffer; |
@@ -331,16 +317,6 @@ class PLATFORM_EXPORT DrawingBuffer |
const GLuint image_id = 0; |
std::unique_ptr<gfx::GpuMemoryBuffer> gpu_memory_buffer; |
- // If we're emulating an RGB back buffer using an RGBA Chromium |
- // image (essentially macOS only), then when performing |
- // BlitFramebuffer calls, we have to swap in an RGB texture in |
- // place of the RGBA texture bound to the image. The reason is |
- // that BlitFramebuffer requires the internal formats of the |
- // source and destination to match (e.g. RGB8 on both sides). |
- // There are bugs in the semantics of RGB8 textures in this |
- // situation (the alpha channel is zeroed), requiring more fixups. |
- GLuint rgb_workaround_texture_id = 0; |
- |
// The mailbox used to send this buffer to the compositor. |
gpu::Mailbox mailbox; |
@@ -452,11 +428,6 @@ class PLATFORM_EXPORT DrawingBuffer |
// The format to use when creating a multisampled renderbuffer. |
GLenum GetMultisampledRenderbufferFormat(); |
- // Helpers to ensure correct behavior of BlitFramebuffer when using |
- // an emulated RGB CHROMIUM_image back buffer. |
- bool SetupRGBEmulationForBlitFramebuffer(); |
- void CleanupRGBEmulationForBlitFramebuffer(); |
- |
// Weak, reset by beginDestruction. |
Client* client_ = nullptr; |
@@ -477,9 +448,9 @@ class PLATFORM_EXPORT DrawingBuffer |
std::unique_ptr<WTF::Closure> new_mailbox_callback_; |
- // The current state restorer, which is used to track state dirtying. It is an |
+ // The current state restorer, which is used to track state dirtying. It is in |
// error to dirty state shared with WebGL while there is no existing state |
- // restorer. |
+ // restorer. It is also in error to instantiate two state restorers at once. |
ScopedStateRestorer* state_restorer_ = nullptr; |
// This is used when the user requests either a depth or stencil buffer. |