Index: content/browser/android/in_process/synchronous_compositor_output_surface.h |
diff --git a/content/browser/android/in_process/synchronous_compositor_output_surface.h b/content/browser/android/in_process/synchronous_compositor_output_surface.h |
index 61f546f01b775715429122f5e23a968f138d5fba..c816376dd8dcc2e947cb1f06c73626a3f03e656b 100644 |
--- a/content/browser/android/in_process/synchronous_compositor_output_surface.h |
+++ b/content/browser/android/in_process/synchronous_compositor_output_surface.h |
@@ -9,6 +9,7 @@ |
#include "base/compiler_specific.h" |
#include "base/memory/ref_counted.h" |
#include "base/memory/scoped_ptr.h" |
+#include "cc/output/compositor_frame.h" |
#include "cc/output/managed_memory_policy.h" |
#include "cc/output/output_surface.h" |
#include "content/public/browser/android/synchronous_compositor.h" |
@@ -32,8 +33,6 @@ class SynchronousCompositorOutputSurfaceDelegate { |
virtual void DidDestroySynchronousOutputSurface( |
SynchronousCompositorOutputSurface* output_surface) = 0; |
virtual void SetContinuousInvalidate(bool enable) = 0; |
- virtual void UpdateFrameMetaData( |
- const cc::CompositorFrameMetadata& frame_metadata) = 0; |
virtual void DidActivatePendingTree() = 0; |
protected: |
@@ -68,10 +67,19 @@ class SynchronousCompositorOutputSurface |
void ReleaseHwDraw(); |
bool DemandDrawHw(gfx::Size surface_size, |
const gfx::Transform& transform, |
+ // View size maybe, not suitable for tile priority. |
gfx::Rect viewport, |
+ // Subset of view size. Use for tiling. |
+ // Bad name since might need to draw outside of this. |
gfx::Rect clip, |
- bool stencil_enabled); |
- bool DemandDrawSw(SkCanvas* canvas); |
+ bool stencil_enabled, |
+ cc::CompositorFrame* frame); |
+ bool DemandDrawDelegated(const gfx::Transform& transform, |
+ gfx::Rect viewport, |
+ gfx::Rect clip, |
+ cc::CompositorFrame* frame); |
+ bool DemandDrawSw(SkCanvas* canvas, cc::CompositorFrame* frame); |
+ void ReturnResources(const cc::CompositorFrameAck* frame_ack); |
void SetMemoryPolicy(const SynchronousCompositorMemoryPolicy& policy); |
private: |
@@ -84,7 +92,6 @@ class SynchronousCompositorOutputSurface |
bool valid_for_tile_management); |
bool CalledOnValidThread() const; |
SynchronousCompositorOutputSurfaceDelegate* GetDelegate(); |
- void UpdateFrameMetaData(const cc::CompositorFrameMetadata& frame_info); |
int routing_id_; |
bool needs_begin_frame_; |
@@ -101,8 +108,7 @@ class SynchronousCompositorOutputSurface |
cc::ManagedMemoryPolicy memory_policy_; |
cc::OutputSurfaceClient* output_surface_client_; |
- |
- base::WeakPtrFactory<SynchronousCompositorOutputSurface> weak_ptr_factory_; |
+ cc::CompositorFrame* frame_; |
DISALLOW_COPY_AND_ASSIGN(SynchronousCompositorOutputSurface); |
}; |