| Index: android_webview/browser/render_thread_manager.cc
|
| diff --git a/android_webview/browser/render_thread_manager.cc b/android_webview/browser/render_thread_manager.cc
|
| index 08e115fee88c953172eb0aa6115065372ee06043..cf8fdf82c410ef0b18ccafeb46e4fc4968257684 100644
|
| --- a/android_webview/browser/render_thread_manager.cc
|
| +++ b/android_webview/browser/render_thread_manager.cc
|
| @@ -206,6 +206,12 @@ std::unique_ptr<ChildFrame> RenderThreadManager::GetSynchronousCompositorFrame(
|
| child_frame->offscreen_pre_raster, child_frame->is_layer);
|
| }
|
|
|
| +void RenderThreadManager::SetFrameFutureOnUI(
|
| + const scoped_refptr<content::SynchronousCompositor::FrameFuture>&
|
| + frame_future) {
|
| + frame_future_ = std::move(frame_future);
|
| +}
|
| +
|
| std::unique_ptr<ChildFrame> RenderThreadManager::PassFrameOnRT() {
|
| base::AutoLock lock(lock_);
|
| hardware_renderer_has_frame_ =
|
| @@ -217,6 +223,12 @@ std::unique_ptr<ChildFrame> RenderThreadManager::PassFrameOnRT() {
|
| return std::move(child_frame_);
|
| }
|
|
|
| +scoped_refptr<content::SynchronousCompositor::FrameFuture>
|
| +RenderThreadManager::PassFrameFutureOnRT() {
|
| + base::AutoLock lock(lock_);
|
| + return std::move(frame_future_);
|
| +}
|
| +
|
| std::unique_ptr<ChildFrame> RenderThreadManager::PassUncommittedFrameOnUI() {
|
| base::AutoLock lock(lock_);
|
| if (async_on_draw_hardware_ && child_frame_.get()) {
|
|
|