Index: ppapi/shared_impl/ppb_graphics_3d_shared.h |
diff --git a/ppapi/shared_impl/ppb_graphics_3d_shared.h b/ppapi/shared_impl/ppb_graphics_3d_shared.h |
index 7e11f6cd526390085fa470f15f35260654834ce4..4c8a1ab6c7443c3c7aaeb0dccd41346a570e0abe 100644 |
--- a/ppapi/shared_impl/ppb_graphics_3d_shared.h |
+++ b/ppapi/shared_impl/ppb_graphics_3d_shared.h |
@@ -43,7 +43,9 @@ class PPAPI_SHARED_EXPORT PPB_Graphics3D_Shared |
int32_t ResizeBuffers(int32_t width, int32_t height) override; |
int32_t SwapBuffers(scoped_refptr<TrackedCallback> callback) override; |
int32_t SwapBuffersWithSyncToken(scoped_refptr<TrackedCallback> callback, |
- const gpu::SyncToken& sync_token) override; |
+ const gpu::SyncToken& sync_token, |
+ int32_t width, |
+ int32_t height) override; |
int32_t GetAttribMaxValue(int32_t attribute, int32_t* value) override; |
void* MapTexSubImage2DCHROMIUM(GLenum target, |
@@ -70,7 +72,9 @@ class PPAPI_SHARED_EXPORT PPB_Graphics3D_Shared |
virtual gpu::CommandBuffer* GetCommandBuffer() = 0; |
virtual gpu::GpuControl* GetGpuControl() = 0; |
- virtual int32_t DoSwapBuffers(const gpu::SyncToken& sync_token) = 0; |
+ virtual int32_t DoSwapBuffers(const gpu::SyncToken& sync_token, |
+ int32_t width, |
+ int32_t height) = 0; |
bool HasPendingSwap() const; |
bool CreateGLES2Impl(int32_t command_buffer_size, |
@@ -83,6 +87,10 @@ class PPAPI_SHARED_EXPORT PPB_Graphics3D_Shared |
std::unique_ptr<gpu::TransferBuffer> transfer_buffer_; |
std::unique_ptr<gpu::gles2::GLES2Implementation> gles2_impl_; |
+ // A local cache of the size of the viewport. |
+ int32_t width_ = -1; |
+ int32_t height_ = -1; |
+ |
// Callback that needs to be executed when swap-buffers is completed. |
scoped_refptr<TrackedCallback> swap_callback_; |