#include "components/viz/service/display_embedder/skia_output_device_webview.h"
#include <utility>
#include "gpu/command_buffer/common/swap_buffers_complete_params.h"
#include "gpu/command_buffer/service/gl_utils.h"
#include "gpu/command_buffer/service/shared_context_state.h"
#include "skia/ext/legacy_display_globals.h"
#include "third_party/skia/include/core/SkSurface.h"
#include "third_party/skia/include/gpu/ganesh/SkSurfaceGanesh.h"
#include "third_party/skia/include/gpu/ganesh/gl/GrGLBackendSurface.h"
#include "third_party/skia/include/gpu/gl/GrGLTypes.h"
#include "ui/gfx/buffer_format_util.h"
#include "ui/gl/gl_bindings.h"
#include "ui/gl/gl_surface.h"
namespace viz {
namespace {
constexpr auto kSurfaceColorType = …;
}
SkiaOutputDeviceWebView::SkiaOutputDeviceWebView(
gpu::SharedContextState* context_state,
scoped_refptr<gl::GLSurface> gl_surface,
gpu::MemoryTracker* memory_tracker,
DidSwapBufferCompleteCallback did_swap_buffer_complete_callback)
: … { … }
SkiaOutputDeviceWebView::~SkiaOutputDeviceWebView() = default;
bool SkiaOutputDeviceWebView::Reshape(const ReshapeParams& params) { … }
void SkiaOutputDeviceWebView::Present(
const std::optional<gfx::Rect>& update_rect,
BufferPresentedCallback feedback,
OutputSurfaceFrame frame) { … }
SkSurface* SkiaOutputDeviceWebView::BeginPaint(
std::vector<GrBackendSemaphore>* end_semaphores) { … }
void SkiaOutputDeviceWebView::EndPaint() { … }
void SkiaOutputDeviceWebView::InitSkiaSurface(unsigned int fbo) { … }
}