Chromium Code Reviews| Index: android_webview/browser/render_thread_manager.h |
| diff --git a/android_webview/browser/render_thread_manager.h b/android_webview/browser/render_thread_manager.h |
| index b758526d03ad6cd939278437837cd0ac6f039344..f2c32a9119cdba2cbb5fad1156998b38dcf87dd9 100644 |
| --- a/android_webview/browser/render_thread_manager.h |
| +++ b/android_webview/browser/render_thread_manager.h |
| @@ -47,7 +47,10 @@ class RenderThreadManager : public CompositorFrameConsumer { |
| void SetCompositorFrameProducer( |
| CompositorFrameProducer* compositor_frame_producer) override; |
| void SetScrollOffsetOnUI(gfx::Vector2d scroll_offset) override; |
| - void SetFrameOnUI(std::unique_ptr<ChildFrame> frame) override; |
| + void SetFrameOnUI( |
| + std::unique_ptr<ChildFrame> frame, |
| + const scoped_refptr<content::SynchronousCompositor::FrameFuture>& |
| + frame_future) override; |
| void InitializeHardwareDrawIfNeededOnUI() override; |
| ParentCompositorDrawConstraints GetParentDrawConstraintsOnUI() const override; |
| void SwapReturnedResourcesOnUI( |
| @@ -78,6 +81,9 @@ class RenderThreadManager : public CompositorFrameConsumer { |
| private: |
| RenderThreadManager* render_thread_manager_; |
| }; |
| + static std::unique_ptr<ChildFrame> GetSynchronousCompositorFrame( |
| + scoped_refptr<content::SynchronousCompositor::FrameFuture> frame_future, |
| + std::unique_ptr<ChildFrame> child_frame); |
| // RT thread method. |
| void DidInvokeGLProcess(); |
| @@ -96,6 +102,7 @@ class RenderThreadManager : public CompositorFrameConsumer { |
| CompositorFrameProducer* compositor_frame_producer_; |
| base::WeakPtr<RenderThreadManager> ui_thread_weak_ptr_; |
| base::CancelableClosure request_draw_gl_cancelable_closure_; |
| + void GetSynchronousCompositorFrame(); |
|
boliu
2016/09/28 22:49:30
remove
|
| // Accessed by RT thread. |
| std::unique_ptr<HardwareRenderer> hardware_renderer_; |
| @@ -108,6 +115,8 @@ class RenderThreadManager : public CompositorFrameConsumer { |
| bool hardware_renderer_has_frame_; |
| gfx::Vector2d scroll_offset_; |
| std::unique_ptr<ChildFrame> child_frame_; |
| + const bool async_on_draw_hardware_; |
| + scoped_refptr<content::SynchronousCompositor::FrameFuture> frame_future_; |
| bool inside_hardware_release_; |
| ParentCompositorDrawConstraints parent_draw_constraints_; |
| ReturnedResourcesMap returned_resources_map_; |