| Index: android_webview/browser/browser_view_renderer.cc
|
| diff --git a/android_webview/browser/browser_view_renderer.cc b/android_webview/browser/browser_view_renderer.cc
|
| index f897b0ce0642732e3a7549b2d5924830ab153523..771c772b69687977c2c96edac9ea7edaf47ed0a1 100644
|
| --- a/android_webview/browser/browser_view_renderer.cc
|
| +++ b/android_webview/browser/browser_view_renderer.cc
|
| @@ -331,6 +331,10 @@ void BrowserViewRenderer::DidSkipCommitFrame() {
|
| DidSkipCompositeInDraw();
|
| }
|
|
|
| +void BrowserViewRenderer::InvalidateOnFunctorDestroy() {
|
| + client_->InvalidateOnFunctorDestroy();
|
| +}
|
| +
|
| bool BrowserViewRenderer::OnDrawSoftware(jobject java_canvas) {
|
| if (!compositor_) {
|
| TRACE_EVENT_INSTANT0(
|
| @@ -453,11 +457,9 @@ void BrowserViewRenderer::OnDetachedFromWindow() {
|
|
|
| void BrowserViewRenderer::ReleaseHardware() {
|
| DCHECK(hardware_enabled_);
|
| - // TODO(hush): do this in somewhere else. Either in hardware render or in
|
| - // shared renderer state.
|
| - ReturnUnusedResource(shared_renderer_state_.PassCompositorFrame());
|
| + ReturnUnusedResource(shared_renderer_state_.PassUncommittedFrameOnUI());
|
| ReturnResourceFromParent();
|
| - DCHECK(shared_renderer_state_.ReturnedResourcesEmpty());
|
| + DCHECK(shared_renderer_state_.ReturnedResourcesEmptyOnUI());
|
|
|
| if (compositor_) {
|
| compositor_->ReleaseHwDraw();
|
| @@ -754,7 +756,7 @@ void BrowserViewRenderer::FallbackTickFired() {
|
| if (compositor_needs_continuous_invalidate_ && compositor_) {
|
| if (hardware_enabled_) {
|
| ReturnResourceFromParent();
|
| - ReturnUnusedResource(shared_renderer_state_.PassCompositorFrame());
|
| + ReturnUnusedResource(shared_renderer_state_.PassUncommittedFrameOnUI());
|
| scoped_ptr<cc::CompositorFrame> frame = CompositeHw();
|
| if (frame.get()) {
|
| shared_renderer_state_.SetCompositorFrameOnUI(frame.Pass(), true);
|
|
|