New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 606056 link

Starred by 5 users

Issue metadata

Status: Fixed
Owner:
Closed: Oct 2016
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 2
Type: Bug
mus

Blocked on:
issue 311404
issue 606053
issue 632544

Blocking:
issue 487471



Sign in to add a comment

OutputSurface => CompositorFrameSink + ContextProvider

Project Member Reported by fsam...@chromium.org, Apr 22 2016

Issue description

Currently OutputSurface captures two concepts: a thing that accepts CompositorFrames ("CompositorFrameSink") and one or more context providers (things that do GL and I guess now also Vulkan). This makes the fallback paths in RenderWidget::CreateOutputSurface and GpuProcessTransportFactory::CreateOutputSurface pretty hard to grok. Let's split OutputSurface into a CompositorFrameSink and ContextProvider(s).

 

Comment 1 by danakj@chromium.org, Apr 22 2016

It also is an interface for drawing/swapping frames to the display, which we will keep as an OutputSurface for cc::Display.
There will likely be at least three kinds of CompositorFrameSinks:

InProcessCompositorFrameSink
OutofProcessCompositorFrameSink
MojoCompositorFrameSink

Comment 3 by danakj@chromium.org, Apr 22 2016

and WebViewCompositorFrameSink or something

Comment 4 by danakj@chromium.org, Apr 22 2016

Does the word "Mojo" imply OOP?
Labels: -Pri-3 Pri-2
Mojo implies could be either in process or out of process. Mojo simply means we send the CompositorFrame to its destination via Mojo IPC, but where the other end lives is abstracted away by Mojo. Is
Cc: sadrul@chromium.org
+sadrul@ 

This is likely going to be a ginormous change so we need to think about staging.

I was thinking of introducing a RenderWidget::CreateContextProvider, and GpuProcessTransportFactory::CreateContextProvider and using those in RenderWidget::CreateOutputSurface, and GpuProcessTransportFactory::CreateOutputSurface respectively.

Does that seem like a reasonable first step? I think in parallel anther person can think about what a CompositorFrameSink is...

I was thinking OutputSurface would continue to exist and HAS a CompositorFrameSink. That way we can build it up incrementally. Once we've stablized what a CompositorFrameSink is, we can replace OutputSurface. WDYT?
Note that Mus currently has a thing called a WindowSurface. This simply becomes a CompositorFrameSink once we're done.

Comment 8 by danakj@chromium.org, Apr 28 2016

I don't know if it makes sense to do anything here until we have direct renderer not appearing in LayerTreeHostImpl.

Comment 9 by danakj@chromium.org, Apr 28 2016

(Cuz it will make more work there that is useless work)
Blockedon: 311404
sgtm, set blocking tasks accordingly
Thanks. Did you file a bug about WebView? Should block that too.
Blockedon: 606053
Done. Thanks!
Blocking: 487471
Project Member

Comment 14 by bugdroid1@chromium.org, May 25 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/0de0c95afd3ddeca195dc6b374aa75b5ee24d776

commit 0de0c95afd3ddeca195dc6b374aa75b5ee24d776
Author: danakj <danakj@chromium.org>
Date: Wed May 25 01:42:49 2016

Remove the concept of OutputSurface from ResourceProvider.

Pass around the compositor and worker context providers as needed
instead of grabbing them from ResourceProvider.

ResourceProvider is used by both the collator and the compositor
but only one of those will use OutputSurface eventually. This
allows easier use of ResourceProvider in test harnesses for now
also.

R=piman@chromium.org, reveman@chromium.org
BUG=311404, 606056
CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel

Review-Url: https://codereview.chromium.org/2007593005
Cr-Commit-Position: refs/heads/master@{#395769}

[modify] https://crrev.com/0de0c95afd3ddeca195dc6b374aa75b5ee24d776/cc/raster/gpu_raster_buffer_provider.cc
[modify] https://crrev.com/0de0c95afd3ddeca195dc6b374aa75b5ee24d776/cc/raster/gpu_raster_buffer_provider.h
[modify] https://crrev.com/0de0c95afd3ddeca195dc6b374aa75b5ee24d776/cc/raster/gpu_rasterizer.cc
[modify] https://crrev.com/0de0c95afd3ddeca195dc6b374aa75b5ee24d776/cc/raster/gpu_rasterizer.h
[modify] https://crrev.com/0de0c95afd3ddeca195dc6b374aa75b5ee24d776/cc/raster/one_copy_raster_buffer_provider.cc
[modify] https://crrev.com/0de0c95afd3ddeca195dc6b374aa75b5ee24d776/cc/raster/one_copy_raster_buffer_provider.h
[modify] https://crrev.com/0de0c95afd3ddeca195dc6b374aa75b5ee24d776/cc/raster/raster_buffer_provider_perftest.cc
[modify] https://crrev.com/0de0c95afd3ddeca195dc6b374aa75b5ee24d776/cc/raster/raster_buffer_provider_unittest.cc
[modify] https://crrev.com/0de0c95afd3ddeca195dc6b374aa75b5ee24d776/cc/raster/staging_buffer_pool.cc
[modify] https://crrev.com/0de0c95afd3ddeca195dc6b374aa75b5ee24d776/cc/raster/staging_buffer_pool.h
[modify] https://crrev.com/0de0c95afd3ddeca195dc6b374aa75b5ee24d776/cc/resources/resource.h
[modify] https://crrev.com/0de0c95afd3ddeca195dc6b374aa75b5ee24d776/cc/resources/resource_provider.cc
[modify] https://crrev.com/0de0c95afd3ddeca195dc6b374aa75b5ee24d776/cc/resources/resource_provider.h
[modify] https://crrev.com/0de0c95afd3ddeca195dc6b374aa75b5ee24d776/cc/resources/resource_provider_unittest.cc
[modify] https://crrev.com/0de0c95afd3ddeca195dc6b374aa75b5ee24d776/cc/surfaces/display.cc
[modify] https://crrev.com/0de0c95afd3ddeca195dc6b374aa75b5ee24d776/cc/test/fake_resource_provider.h
[modify] https://crrev.com/0de0c95afd3ddeca195dc6b374aa75b5ee24d776/cc/test/layer_tree_pixel_resource_test.cc
[modify] https://crrev.com/0de0c95afd3ddeca195dc6b374aa75b5ee24d776/cc/test/pixel_test.cc
[modify] https://crrev.com/0de0c95afd3ddeca195dc6b374aa75b5ee24d776/cc/trees/layer_tree_host_impl.cc

Owner: danakj@chromium.org
Status: Assigned (was: Untriaged)
Project Member

Comment 16 by bugdroid1@chromium.org, Jul 13 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/4600da1be6cc2719af18c4cbdc07101e1ba77127

commit 4600da1be6cc2719af18c4cbdc07101e1ba77127
Author: danakj <danakj@chromium.org>
Date: Wed Jul 13 21:40:10 2016

cc: Remove OutputSurfaceClient::DidSwapBuffers().

If we call swap, we know that we swapped, so we don't need a callback
to tell us about that. Instead, just have places that call
Renderer::SwapBuffers() do what they would have in the DidSwapBuffers
callback.

It is the DidSwapBuffersComplete() callback that is used
for throttling/unblocking frame production. This one has no
purpose on OutputSurfaceClient.

R=enne, jbauman
TBR=sky,boliu,sievers
BUG=606056
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_blink_rel

Review-Url: https://codereview.chromium.org/2143263002
Cr-Commit-Position: refs/heads/master@{#405300}

[modify] https://crrev.com/4600da1be6cc2719af18c4cbdc07101e1ba77127/android_webview/browser/parent_output_surface.cc
[modify] https://crrev.com/4600da1be6cc2719af18c4cbdc07101e1ba77127/blimp/client/feature/compositor/blimp_output_surface.cc
[modify] https://crrev.com/4600da1be6cc2719af18c4cbdc07101e1ba77127/cc/output/output_surface.h
[modify] https://crrev.com/4600da1be6cc2719af18c4cbdc07101e1ba77127/cc/output/output_surface_client.h
[modify] https://crrev.com/4600da1be6cc2719af18c4cbdc07101e1ba77127/cc/output/output_surface_unittest.cc
[modify] https://crrev.com/4600da1be6cc2719af18c4cbdc07101e1ba77127/cc/output/overlay_unittest.cc
[modify] https://crrev.com/4600da1be6cc2719af18c4cbdc07101e1ba77127/cc/output/renderer_unittest.cc
[modify] https://crrev.com/4600da1be6cc2719af18c4cbdc07101e1ba77127/cc/surfaces/display.cc
[modify] https://crrev.com/4600da1be6cc2719af18c4cbdc07101e1ba77127/cc/surfaces/display.h
[modify] https://crrev.com/4600da1be6cc2719af18c4cbdc07101e1ba77127/cc/surfaces/surface_display_output_surface.cc
[modify] https://crrev.com/4600da1be6cc2719af18c4cbdc07101e1ba77127/cc/test/fake_layer_tree_host_impl_client.h
[modify] https://crrev.com/4600da1be6cc2719af18c4cbdc07101e1ba77127/cc/test/fake_output_surface.cc
[modify] https://crrev.com/4600da1be6cc2719af18c4cbdc07101e1ba77127/cc/test/fake_output_surface_client.cc
[modify] https://crrev.com/4600da1be6cc2719af18c4cbdc07101e1ba77127/cc/test/fake_output_surface_client.h
[modify] https://crrev.com/4600da1be6cc2719af18c4cbdc07101e1ba77127/cc/test/pixel_test_delegating_output_surface.cc
[modify] https://crrev.com/4600da1be6cc2719af18c4cbdc07101e1ba77127/cc/test/pixel_test_output_surface.cc
[modify] https://crrev.com/4600da1be6cc2719af18c4cbdc07101e1ba77127/cc/trees/layer_tree_host_impl.cc
[modify] https://crrev.com/4600da1be6cc2719af18c4cbdc07101e1ba77127/cc/trees/layer_tree_host_impl.h
[modify] https://crrev.com/4600da1be6cc2719af18c4cbdc07101e1ba77127/cc/trees/layer_tree_host_impl_unittest.cc
[modify] https://crrev.com/4600da1be6cc2719af18c4cbdc07101e1ba77127/cc/trees/proxy_impl.cc
[modify] https://crrev.com/4600da1be6cc2719af18c4cbdc07101e1ba77127/cc/trees/proxy_impl.h
[modify] https://crrev.com/4600da1be6cc2719af18c4cbdc07101e1ba77127/cc/trees/single_thread_proxy.cc
[modify] https://crrev.com/4600da1be6cc2719af18c4cbdc07101e1ba77127/cc/trees/single_thread_proxy.h
[modify] https://crrev.com/4600da1be6cc2719af18c4cbdc07101e1ba77127/content/browser/compositor/gpu_browser_compositor_output_surface.cc
[modify] https://crrev.com/4600da1be6cc2719af18c4cbdc07101e1ba77127/content/browser/compositor/offscreen_browser_compositor_output_surface.cc
[modify] https://crrev.com/4600da1be6cc2719af18c4cbdc07101e1ba77127/content/browser/compositor/software_browser_compositor_output_surface.cc
[modify] https://crrev.com/4600da1be6cc2719af18c4cbdc07101e1ba77127/content/browser/compositor/software_browser_compositor_output_surface_unittest.cc
[modify] https://crrev.com/4600da1be6cc2719af18c4cbdc07101e1ba77127/content/browser/compositor/vulkan_browser_compositor_output_surface.cc
[modify] https://crrev.com/4600da1be6cc2719af18c4cbdc07101e1ba77127/content/browser/renderer_host/compositor_impl_android.cc
[modify] https://crrev.com/4600da1be6cc2719af18c4cbdc07101e1ba77127/content/renderer/android/synchronous_compositor_output_surface.cc
[modify] https://crrev.com/4600da1be6cc2719af18c4cbdc07101e1ba77127/content/renderer/gpu/compositor_output_surface.cc
[modify] https://crrev.com/4600da1be6cc2719af18c4cbdc07101e1ba77127/services/ui/public/cpp/lib/output_surface.cc
[modify] https://crrev.com/4600da1be6cc2719af18c4cbdc07101e1ba77127/services/ui/surfaces/direct_output_surface.cc
[modify] https://crrev.com/4600da1be6cc2719af18c4cbdc07101e1ba77127/services/ui/surfaces/direct_output_surface_ozone.cc
[modify] https://crrev.com/4600da1be6cc2719af18c4cbdc07101e1ba77127/ui/compositor/test/in_process_context_factory.cc

Project Member

Comment 17 by bugdroid1@chromium.org, Jul 14 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/9c14156250323f5f994239a4597022cdd6ba9020

commit 9c14156250323f5f994239a4597022cdd6ba9020
Author: danakj <danakj@chromium.org>
Date: Thu Jul 14 00:28:49 2016

cc: Make LayerTreeHostImpl::SwapBuffers not virtual.

This makes it no longer exposed to unit tests, which helps because
Draw&Swap will be joining into a single action in LayerTreeHostImpl
since it doesn't actually "draw" anything, it just IPCs things.

Tests now have a SwapBuffersCompleteOnThread() instead, which is called
asynchronously from anything LayerTreeHostImpl is doing, so I removed
the LayerTreeHostImpl* passed to it, and changed tests to use
DrawLayersOnThread() when they need to run things at the time of
LayerTreeHostImpl doing things, and handle SwapBuffersCompleteOnThread()
being asynchronous.

This would be a bit simpler if there was no SwapBuffers after
DrawLayersOnThread() happening at all, but I work with it in the tests
anyhow.

R=enne
BUG=606056
CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel

Review-Url: https://codereview.chromium.org/2151433004
Cr-Commit-Position: refs/heads/master@{#405362}

[modify] https://crrev.com/9c14156250323f5f994239a4597022cdd6ba9020/cc/layers/surface_layer_unittest.cc
[modify] https://crrev.com/9c14156250323f5f994239a4597022cdd6ba9020/cc/layers/texture_layer_unittest.cc
[modify] https://crrev.com/9c14156250323f5f994239a4597022cdd6ba9020/cc/output/delegating_renderer_unittest.cc
[modify] https://crrev.com/9c14156250323f5f994239a4597022cdd6ba9020/cc/output/output_surface_client.h
[modify] https://crrev.com/9c14156250323f5f994239a4597022cdd6ba9020/cc/test/fake_output_surface.cc
[modify] https://crrev.com/9c14156250323f5f994239a4597022cdd6ba9020/cc/test/fake_output_surface.h
[modify] https://crrev.com/9c14156250323f5f994239a4597022cdd6ba9020/cc/test/layer_tree_test.cc
[modify] https://crrev.com/9c14156250323f5f994239a4597022cdd6ba9020/cc/test/test_hooks.h
[modify] https://crrev.com/9c14156250323f5f994239a4597022cdd6ba9020/cc/trees/layer_tree_host_impl.h
[modify] https://crrev.com/9c14156250323f5f994239a4597022cdd6ba9020/cc/trees/layer_tree_host_unittest.cc
[modify] https://crrev.com/9c14156250323f5f994239a4597022cdd6ba9020/cc/trees/layer_tree_host_unittest_animation.cc
[modify] https://crrev.com/9c14156250323f5f994239a4597022cdd6ba9020/cc/trees/layer_tree_host_unittest_copyrequest.cc
[modify] https://crrev.com/9c14156250323f5f994239a4597022cdd6ba9020/cc/trees/layer_tree_host_unittest_damage.cc

Project Member

Comment 18 by bugdroid1@chromium.org, Jul 14 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/b175e4c8fef543c6297d7c9112f50b44d3e1e513

commit b175e4c8fef543c6297d7c9112f50b44d3e1e513
Author: danakj <danakj@chromium.org>
Date: Thu Jul 14 19:49:55 2016

cc: Decouple LayerTreeTests from FakeOutputSurface expectations.

LayerTreeTests expect the output surface on the LayerTreeHostImpl to
be a FakeOutputSurface, but we will be changing it to be a
TestDelegatingOutputSurface in the future, with a Display, and a
FakeOutputSurface in the Display instead.

This removes the LayerTreeTest::CreateFakeOutputSurface() method, and
has tests override the LayerTreeTest::CreateOutputSurface() instead,
storing the FakeOutputSurface* themselves as needed. This also means
we don't have a null FakeOutputSurface* in pixel tests, yay.

In the future, this method will become CreateDisplayOutputSurface
or something, so that tests can control the surface in the Display (and
all the contexts), without changing the TestDelegatingOutputSurface in
the LayerTreeHostImpl.

R=enne
BUG=606056
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_blink_rel

Review-Url: https://codereview.chromium.org/2140383005
Cr-Commit-Position: refs/heads/master@{#405548}

[modify] https://crrev.com/b175e4c8fef543c6297d7c9112f50b44d3e1e513/cc/layers/surface_layer_unittest.cc
[modify] https://crrev.com/b175e4c8fef543c6297d7c9112f50b44d3e1e513/cc/test/layer_tree_test.cc
[modify] https://crrev.com/b175e4c8fef543c6297d7c9112f50b44d3e1e513/cc/test/layer_tree_test.h
[modify] https://crrev.com/b175e4c8fef543c6297d7c9112f50b44d3e1e513/cc/trees/layer_tree_host_unittest.cc
[modify] https://crrev.com/b175e4c8fef543c6297d7c9112f50b44d3e1e513/cc/trees/layer_tree_host_unittest_context.cc
[modify] https://crrev.com/b175e4c8fef543c6297d7c9112f50b44d3e1e513/cc/trees/layer_tree_host_unittest_copyrequest.cc

Project Member

Comment 19 by bugdroid1@chromium.org, Jul 14 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/516efc062a05c933e7ec957684235bdd6b9f3b87

commit 516efc062a05c933e7ec957684235bdd6b9f3b87
Author: danakj <danakj@chromium.org>
Date: Thu Jul 14 23:24:05 2016

cc: Allow TestDelegatingOutputSurface to be used for non-pixel tests.

This renames the PixelTestDelegatingOutputSurface to drop the "Pixel",
it's cleaner.

And the caller creates the Display and its OutputSurface, etc. So it
has control over the types and can use a PixelTestOutputSurface or a
FakeOutputSurface for non-pixel unit tests.

R=enne
BUG=606056
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_blink_rel

Review-Url: https://codereview.chromium.org/2144393003
Cr-Commit-Position: refs/heads/master@{#405623}

[modify] https://crrev.com/516efc062a05c933e7ec957684235bdd6b9f3b87/android_webview/browser/surfaces_instance.cc
[modify] https://crrev.com/516efc062a05c933e7ec957684235bdd6b9f3b87/cc/BUILD.gn
[modify] https://crrev.com/516efc062a05c933e7ec957684235bdd6b9f3b87/cc/cc_tests.gyp
[modify] https://crrev.com/516efc062a05c933e7ec957684235bdd6b9f3b87/cc/surfaces/display.cc
[modify] https://crrev.com/516efc062a05c933e7ec957684235bdd6b9f3b87/cc/surfaces/display.h
[modify] https://crrev.com/516efc062a05c933e7ec957684235bdd6b9f3b87/cc/surfaces/display_unittest.cc
[modify] https://crrev.com/516efc062a05c933e7ec957684235bdd6b9f3b87/cc/surfaces/surface_display_output_surface.cc
[modify] https://crrev.com/516efc062a05c933e7ec957684235bdd6b9f3b87/cc/surfaces/surface_display_output_surface_unittest.cc
[modify] https://crrev.com/516efc062a05c933e7ec957684235bdd6b9f3b87/cc/test/layer_tree_pixel_test.cc
[modify] https://crrev.com/516efc062a05c933e7ec957684235bdd6b9f3b87/cc/test/layer_tree_pixel_test.h
[delete] https://crrev.com/20989491201825820c93697de6d92d3b148b10b5/cc/test/pixel_test_delegating_output_surface.cc
[delete] https://crrev.com/20989491201825820c93697de6d92d3b148b10b5/cc/test/pixel_test_delegating_output_surface.h
[add] https://crrev.com/516efc062a05c933e7ec957684235bdd6b9f3b87/cc/test/test_delegating_output_surface.cc
[add] https://crrev.com/516efc062a05c933e7ec957684235bdd6b9f3b87/cc/test/test_delegating_output_surface.h
[modify] https://crrev.com/516efc062a05c933e7ec957684235bdd6b9f3b87/content/browser/compositor/gpu_process_transport_factory.cc
[modify] https://crrev.com/516efc062a05c933e7ec957684235bdd6b9f3b87/content/browser/renderer_host/compositor_impl_android.cc
[modify] https://crrev.com/516efc062a05c933e7ec957684235bdd6b9f3b87/content/renderer/android/synchronous_compositor_output_surface.cc
[modify] https://crrev.com/516efc062a05c933e7ec957684235bdd6b9f3b87/content/test/layouttest_support.cc
[modify] https://crrev.com/516efc062a05c933e7ec957684235bdd6b9f3b87/services/ui/surfaces/display_compositor.cc
[modify] https://crrev.com/516efc062a05c933e7ec957684235bdd6b9f3b87/ui/compositor/test/in_process_context_factory.cc

Project Member

Comment 20 by bugdroid1@chromium.org, Jul 20 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/94b7e4fcc1fb51a468d3df292c622905c67405c5

commit 94b7e4fcc1fb51a468d3df292c622905c67405c5
Author: danakj <danakj@chromium.org>
Date: Wed Jul 20 01:49:38 2016

cc: Clean up LayerTreeTest and TestHooks in cc_unittests.

While working on new SwapBuffers test hooks for OutputSurface vs
CompositorFrameSink, it became apparent that these two APIs have grown
much bigger than they need to be. So I spent some time cleaning them
up.

1) All TestHooks are steps on LayerTreeHost/LayerTreeHostImpl. No steps
on the proxy exist anymore. I changed tests to use LTHI hooks instead
where needed, and had to add one method on LTHI for TestHooks to
override.

2) All TestHooks on the compositor thread are (mostly) named __OnThread()
and they all take a LayerTreeHostImpl* as a parameter.

3) I deleted the Proxy{Main,Impl}ForTests and friends classes. I had to
rewrite the activation-blocked tests to not need to get access to the
ProxyImpl* directly, and the rest mostly fell out of point 1 above.

4) I deleted remote_channel_unittest.cc and threaded_channel_unittest.cc
as these were not testing logic, just checking that posttask works more
or less. I believe the correct way to test the proxies is to test that
the LayerTreeHost API behaves as you'd expect, which is what our other
tests do.

R=enne
BUG=606056
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_blink_rel

Review-Url: https://codereview.chromium.org/2158973002
Cr-Commit-Position: refs/heads/master@{#406450}

[modify] https://crrev.com/94b7e4fcc1fb51a468d3df292c622905c67405c5/cc/BUILD.gn
[modify] https://crrev.com/94b7e4fcc1fb51a468d3df292c622905c67405c5/cc/cc_tests.gyp
[modify] https://crrev.com/94b7e4fcc1fb51a468d3df292c622905c67405c5/cc/test/layer_tree_test.cc
[modify] https://crrev.com/94b7e4fcc1fb51a468d3df292c622905c67405c5/cc/test/layer_tree_test.h
[delete] https://crrev.com/c98161ae7570e4a0e4035840f2534d05a573b9a3/cc/test/proxy_impl_for_test.cc
[delete] https://crrev.com/c98161ae7570e4a0e4035840f2534d05a573b9a3/cc/test/proxy_impl_for_test.h
[delete] https://crrev.com/c98161ae7570e4a0e4035840f2534d05a573b9a3/cc/test/proxy_main_for_test.cc
[delete] https://crrev.com/c98161ae7570e4a0e4035840f2534d05a573b9a3/cc/test/proxy_main_for_test.h
[delete] https://crrev.com/c98161ae7570e4a0e4035840f2534d05a573b9a3/cc/test/remote_channel_impl_for_test.cc
[delete] https://crrev.com/c98161ae7570e4a0e4035840f2534d05a573b9a3/cc/test/remote_channel_impl_for_test.h
[modify] https://crrev.com/94b7e4fcc1fb51a468d3df292c622905c67405c5/cc/test/test_hooks.h
[delete] https://crrev.com/c98161ae7570e4a0e4035840f2534d05a573b9a3/cc/test/threaded_channel_for_test.cc
[delete] https://crrev.com/c98161ae7570e4a0e4035840f2534d05a573b9a3/cc/test/threaded_channel_for_test.h
[modify] https://crrev.com/94b7e4fcc1fb51a468d3df292c622905c67405c5/cc/trees/channel_main.h
[modify] https://crrev.com/94b7e4fcc1fb51a468d3df292c622905c67405c5/cc/trees/layer_tree_host.cc
[modify] https://crrev.com/94b7e4fcc1fb51a468d3df292c622905c67405c5/cc/trees/layer_tree_host_impl.h
[modify] https://crrev.com/94b7e4fcc1fb51a468d3df292c622905c67405c5/cc/trees/layer_tree_host_impl_unittest.cc
[modify] https://crrev.com/94b7e4fcc1fb51a468d3df292c622905c67405c5/cc/trees/layer_tree_host_unittest.cc
[modify] https://crrev.com/94b7e4fcc1fb51a468d3df292c622905c67405c5/cc/trees/layer_tree_host_unittest_animation.cc
[modify] https://crrev.com/94b7e4fcc1fb51a468d3df292c622905c67405c5/cc/trees/layer_tree_host_unittest_context.cc
[modify] https://crrev.com/94b7e4fcc1fb51a468d3df292c622905c67405c5/cc/trees/layer_tree_host_unittest_proxy.cc
[modify] https://crrev.com/94b7e4fcc1fb51a468d3df292c622905c67405c5/cc/trees/layer_tree_host_unittest_scroll.cc
[modify] https://crrev.com/94b7e4fcc1fb51a468d3df292c622905c67405c5/cc/trees/layer_tree_host_unittest_serialization.cc
[modify] https://crrev.com/94b7e4fcc1fb51a468d3df292c622905c67405c5/cc/trees/proxy_impl.cc
[modify] https://crrev.com/94b7e4fcc1fb51a468d3df292c622905c67405c5/cc/trees/proxy_impl.h
[delete] https://crrev.com/c98161ae7570e4a0e4035840f2534d05a573b9a3/cc/trees/proxy_impl_unittest.cc
[modify] https://crrev.com/94b7e4fcc1fb51a468d3df292c622905c67405c5/cc/trees/proxy_main.cc
[modify] https://crrev.com/94b7e4fcc1fb51a468d3df292c622905c67405c5/cc/trees/proxy_main.h
[modify] https://crrev.com/94b7e4fcc1fb51a468d3df292c622905c67405c5/cc/trees/remote_channel_impl.cc
[modify] https://crrev.com/94b7e4fcc1fb51a468d3df292c622905c67405c5/cc/trees/remote_channel_impl.h
[modify] https://crrev.com/94b7e4fcc1fb51a468d3df292c622905c67405c5/cc/trees/remote_channel_main.cc
[modify] https://crrev.com/94b7e4fcc1fb51a468d3df292c622905c67405c5/cc/trees/remote_channel_main.h
[delete] https://crrev.com/c98161ae7570e4a0e4035840f2534d05a573b9a3/cc/trees/remote_channel_unittest.cc
[modify] https://crrev.com/94b7e4fcc1fb51a468d3df292c622905c67405c5/cc/trees/single_thread_proxy.cc
[modify] https://crrev.com/94b7e4fcc1fb51a468d3df292c622905c67405c5/cc/trees/threaded_channel.cc
[modify] https://crrev.com/94b7e4fcc1fb51a468d3df292c622905c67405c5/cc/trees/threaded_channel.h
[delete] https://crrev.com/c98161ae7570e4a0e4035840f2534d05a573b9a3/cc/trees/threaded_channel_unittest.cc

Project Member

Comment 21 by bugdroid1@chromium.org, Jul 20 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/f33ceec40004dec326b09ad2f631310aa0c5a594

commit f33ceec40004dec326b09ad2f631310aa0c5a594
Author: danakj <danakj@chromium.org>
Date: Wed Jul 20 20:04:45 2016

cc: Make LayerTreeHostImpl unittests use a delegating output surface.

We are removing all cases of a direct output surface in
LayerTreeHostImpl and the only remaining cases are in unit tests. This
coveres the LayerTreeHostImpl test suite.

TBR=piman
R=enne, vmpstr
BUG=606056
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_blink_rel

Review-Url: https://codereview.chromium.org/2161323002
Cr-Commit-Position: refs/heads/master@{#406647}

[modify] https://crrev.com/f33ceec40004dec326b09ad2f631310aa0c5a594/cc/output/gl_renderer_unittest.cc
[modify] https://crrev.com/f33ceec40004dec326b09ad2f631310aa0c5a594/cc/output/renderer_unittest.cc
[modify] https://crrev.com/f33ceec40004dec326b09ad2f631310aa0c5a594/cc/output/shader_unittest.cc
[modify] https://crrev.com/f33ceec40004dec326b09ad2f631310aa0c5a594/cc/output/software_renderer_unittest.cc
[modify] https://crrev.com/f33ceec40004dec326b09ad2f631310aa0c5a594/cc/test/fake_output_surface.cc
[modify] https://crrev.com/f33ceec40004dec326b09ad2f631310aa0c5a594/cc/test/fake_output_surface.h
[modify] https://crrev.com/f33ceec40004dec326b09ad2f631310aa0c5a594/cc/test/layer_tree_pixel_test.cc
[modify] https://crrev.com/f33ceec40004dec326b09ad2f631310aa0c5a594/cc/test/test_context_provider.cc
[modify] https://crrev.com/f33ceec40004dec326b09ad2f631310aa0c5a594/cc/test/test_context_provider.h
[modify] https://crrev.com/f33ceec40004dec326b09ad2f631310aa0c5a594/cc/test/test_delegating_output_surface.cc
[modify] https://crrev.com/f33ceec40004dec326b09ad2f631310aa0c5a594/cc/test/test_delegating_output_surface.h
[modify] https://crrev.com/f33ceec40004dec326b09ad2f631310aa0c5a594/cc/test/test_gles2_interface.cc
[modify] https://crrev.com/f33ceec40004dec326b09ad2f631310aa0c5a594/cc/test/test_gles2_interface.h
[modify] https://crrev.com/f33ceec40004dec326b09ad2f631310aa0c5a594/cc/trees/layer_tree_host_impl_unittest.cc
[modify] https://crrev.com/f33ceec40004dec326b09ad2f631310aa0c5a594/content/test/layouttest_support.cc

Project Member

Comment 22 by bugdroid1@chromium.org, Jul 22 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/f3c49e3f36246b07f13eed92072dd7361ee0325f

commit f3c49e3f36246b07f13eed92072dd7361ee0325f
Author: danakj <danakj@chromium.org>
Date: Fri Jul 22 03:41:45 2016

Don't run DirectRenderer versions of LayerTreeTest unless explicit.

Remove the direct variants from the SINGLE_AND_MULTI_THREAD_TEST_F
macros and friends, so you will only get a DirectRenderer if you
request it via SINGLE_AND_MULTI_THREAD_DIRECT_RENDERER_TEST_F and
similar macros.

Before, cc_unittests has 3366 tests. After, it has 3075.

R=enne
BUG=606056
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_blink_rel

Review-Url: https://codereview.chromium.org/2170183002
Cr-Commit-Position: refs/heads/master@{#407037}

[modify] https://crrev.com/f3c49e3f36246b07f13eed92072dd7361ee0325f/cc/output/delegating_renderer_unittest.cc
[modify] https://crrev.com/f3c49e3f36246b07f13eed92072dd7361ee0325f/cc/test/layer_tree_test.h

Project Member

Comment 23 by bugdroid1@chromium.org, Jul 22 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/6021ec347e80a5e45a25db16bafc307eae6bb643

commit 6021ec347e80a5e45a25db16bafc307eae6bb643
Author: danakj <danakj@chromium.org>
Date: Fri Jul 22 22:16:08 2016

cc: Get rid of non-delegated rendering in most cc unit tests.

For tests other than a few LayerTreeTests, this changes all tests that
used a DirectRenderer to use a DelegatingRenderer instead.

FakeLayerTreeHostClient took options for allowing fake software
compositing, but it was unused. The REMOTE_DIRECT_RENDERER_TEST_F macro
was also unused now.

(Also enables SurfaceLayerSwapPromiseWithDraw which was disabled but
the bug is fixed.)

R=enne
TBR=miguelg
BUG=421923,606056
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_blink_rel

Review-Url: https://codereview.chromium.org/2171143002
Cr-Commit-Position: refs/heads/master@{#407280}

[modify] https://crrev.com/6021ec347e80a5e45a25db16bafc307eae6bb643/cc/animation/animation_host_perftest.cc
[modify] https://crrev.com/6021ec347e80a5e45a25db16bafc307eae6bb643/cc/blink/web_layer_impl_fixed_bounds_unittest.cc
[modify] https://crrev.com/6021ec347e80a5e45a25db16bafc307eae6bb643/cc/debug/micro_benchmark_controller_unittest.cc
[modify] https://crrev.com/6021ec347e80a5e45a25db16bafc307eae6bb643/cc/layers/heads_up_display_layer_impl_unittest.cc
[modify] https://crrev.com/6021ec347e80a5e45a25db16bafc307eae6bb643/cc/layers/layer_impl_unittest.cc
[modify] https://crrev.com/6021ec347e80a5e45a25db16bafc307eae6bb643/cc/layers/layer_list_iterator_unittest.cc
[modify] https://crrev.com/6021ec347e80a5e45a25db16bafc307eae6bb643/cc/layers/layer_perftest.cc
[modify] https://crrev.com/6021ec347e80a5e45a25db16bafc307eae6bb643/cc/layers/layer_position_constraint_unittest.cc
[modify] https://crrev.com/6021ec347e80a5e45a25db16bafc307eae6bb643/cc/layers/layer_proto_converter_unittest.cc
[modify] https://crrev.com/6021ec347e80a5e45a25db16bafc307eae6bb643/cc/layers/layer_unittest.cc
[modify] https://crrev.com/6021ec347e80a5e45a25db16bafc307eae6bb643/cc/layers/nine_patch_layer_impl_unittest.cc
[modify] https://crrev.com/6021ec347e80a5e45a25db16bafc307eae6bb643/cc/layers/nine_patch_layer_unittest.cc
[modify] https://crrev.com/6021ec347e80a5e45a25db16bafc307eae6bb643/cc/layers/painted_scrollbar_layer_unittest.cc
[modify] https://crrev.com/6021ec347e80a5e45a25db16bafc307eae6bb643/cc/layers/picture_image_layer_unittest.cc
[modify] https://crrev.com/6021ec347e80a5e45a25db16bafc307eae6bb643/cc/layers/picture_layer_impl_perftest.cc
[modify] https://crrev.com/6021ec347e80a5e45a25db16bafc307eae6bb643/cc/layers/picture_layer_impl_unittest.cc
[modify] https://crrev.com/6021ec347e80a5e45a25db16bafc307eae6bb643/cc/layers/picture_layer_unittest.cc
[modify] https://crrev.com/6021ec347e80a5e45a25db16bafc307eae6bb643/cc/layers/render_surface_unittest.cc
[modify] https://crrev.com/6021ec347e80a5e45a25db16bafc307eae6bb643/cc/layers/scrollbar_layer_unittest.cc
[modify] https://crrev.com/6021ec347e80a5e45a25db16bafc307eae6bb643/cc/layers/solid_color_layer_impl_unittest.cc
[modify] https://crrev.com/6021ec347e80a5e45a25db16bafc307eae6bb643/cc/layers/surface_layer_unittest.cc
[modify] https://crrev.com/6021ec347e80a5e45a25db16bafc307eae6bb643/cc/layers/texture_layer_unittest.cc
[modify] https://crrev.com/6021ec347e80a5e45a25db16bafc307eae6bb643/cc/layers/ui_resource_layer_impl_unittest.cc
[modify] https://crrev.com/6021ec347e80a5e45a25db16bafc307eae6bb643/cc/layers/ui_resource_layer_unittest.cc
[modify] https://crrev.com/6021ec347e80a5e45a25db16bafc307eae6bb643/cc/resources/resource_pool_unittest.cc
[modify] https://crrev.com/6021ec347e80a5e45a25db16bafc307eae6bb643/cc/resources/scoped_resource_unittest.cc
[modify] https://crrev.com/6021ec347e80a5e45a25db16bafc307eae6bb643/cc/test/fake_layer_tree_host_client.cc
[modify] https://crrev.com/6021ec347e80a5e45a25db16bafc307eae6bb643/cc/test/fake_layer_tree_host_client.h
[modify] https://crrev.com/6021ec347e80a5e45a25db16bafc307eae6bb643/cc/test/fake_output_surface.cc
[modify] https://crrev.com/6021ec347e80a5e45a25db16bafc307eae6bb643/cc/test/fake_output_surface.h
[modify] https://crrev.com/6021ec347e80a5e45a25db16bafc307eae6bb643/cc/test/layer_test_common.cc
[modify] https://crrev.com/6021ec347e80a5e45a25db16bafc307eae6bb643/cc/test/layer_tree_host_common_test.h
[modify] https://crrev.com/6021ec347e80a5e45a25db16bafc307eae6bb643/cc/test/layer_tree_test.cc
[modify] https://crrev.com/6021ec347e80a5e45a25db16bafc307eae6bb643/cc/test/layer_tree_test.h
[modify] https://crrev.com/6021ec347e80a5e45a25db16bafc307eae6bb643/cc/test/test_layer_tree_host_base.cc
[modify] https://crrev.com/6021ec347e80a5e45a25db16bafc307eae6bb643/cc/tiles/picture_layer_tiling_set_unittest.cc
[modify] https://crrev.com/6021ec347e80a5e45a25db16bafc307eae6bb643/cc/tiles/tile_manager_unittest.cc
[modify] https://crrev.com/6021ec347e80a5e45a25db16bafc307eae6bb643/cc/trees/layer_tree_host_common_unittest.cc
[modify] https://crrev.com/6021ec347e80a5e45a25db16bafc307eae6bb643/cc/trees/layer_tree_host_impl_unittest.cc
[modify] https://crrev.com/6021ec347e80a5e45a25db16bafc307eae6bb643/cc/trees/layer_tree_host_unittest.cc
[modify] https://crrev.com/6021ec347e80a5e45a25db16bafc307eae6bb643/cc/trees/layer_tree_host_unittest_context.cc
[modify] https://crrev.com/6021ec347e80a5e45a25db16bafc307eae6bb643/cc/trees/layer_tree_host_unittest_copyrequest.cc
[modify] https://crrev.com/6021ec347e80a5e45a25db16bafc307eae6bb643/cc/trees/layer_tree_host_unittest_record_gpu_histogram.cc
[modify] https://crrev.com/6021ec347e80a5e45a25db16bafc307eae6bb643/cc/trees/layer_tree_host_unittest_scroll.cc
[modify] https://crrev.com/6021ec347e80a5e45a25db16bafc307eae6bb643/cc/trees/layer_tree_host_unittest_serialization.cc
[modify] https://crrev.com/6021ec347e80a5e45a25db16bafc307eae6bb643/cc/trees/layer_tree_impl_unittest.cc
[modify] https://crrev.com/6021ec347e80a5e45a25db16bafc307eae6bb643/cc/trees/occlusion_tracker_unittest.cc
[modify] https://crrev.com/6021ec347e80a5e45a25db16bafc307eae6bb643/cc/trees/tree_synchronizer_unittest.cc
[modify] https://crrev.com/6021ec347e80a5e45a25db16bafc307eae6bb643/ui/android/resources/resource_manager_impl_unittest.cc

Project Member

Comment 24 by bugdroid1@chromium.org, Jul 22 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/ffc181a212a047aaaa8e653c759d51d25eb3c71c

commit ffc181a212a047aaaa8e653c759d51d25eb3c71c
Author: danakj <danakj@chromium.org>
Date: Fri Jul 22 22:48:43 2016

cc: Break up with FakeLayerTreeHostClient.

This class is mostly a stub but not quite. And it's also a stub of
LayerTreeHostSingleThreadClient. Break it up into two real stubs
of those interfaces. And it inherits from StubLayerTreeHostClient
and implements just what it needs to be the client for FakeLayerTreeHost.

Now stuff that isn't using FakeLayerTreeHost doesn't need to use
FakeLayerTreeHostClient, they can use the StubLayerTreeHostClient.

R=enne,dtrainor
TBR=miguelg
BUG=606056
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_blink_rel

Review-Url: https://codereview.chromium.org/2174653002
Cr-Commit-Position: refs/heads/master@{#407288}

[modify] https://crrev.com/ffc181a212a047aaaa8e653c759d51d25eb3c71c/cc/BUILD.gn
[modify] https://crrev.com/ffc181a212a047aaaa8e653c759d51d25eb3c71c/cc/animation/animation_host_perftest.cc
[modify] https://crrev.com/ffc181a212a047aaaa8e653c759d51d25eb3c71c/cc/cc_tests.gyp
[modify] https://crrev.com/ffc181a212a047aaaa8e653c759d51d25eb3c71c/cc/layers/layer_perftest.cc
[modify] https://crrev.com/ffc181a212a047aaaa8e653c759d51d25eb3c71c/cc/layers/layer_unittest.cc
[modify] https://crrev.com/ffc181a212a047aaaa8e653c759d51d25eb3c71c/cc/layers/picture_layer_impl_unittest.cc
[modify] https://crrev.com/ffc181a212a047aaaa8e653c759d51d25eb3c71c/cc/layers/picture_layer_unittest.cc
[modify] https://crrev.com/ffc181a212a047aaaa8e653c759d51d25eb3c71c/cc/layers/scrollbar_layer_unittest.cc
[modify] https://crrev.com/ffc181a212a047aaaa8e653c759d51d25eb3c71c/cc/layers/texture_layer_impl_unittest.cc
[modify] https://crrev.com/ffc181a212a047aaaa8e653c759d51d25eb3c71c/cc/layers/texture_layer_unittest.cc
[modify] https://crrev.com/ffc181a212a047aaaa8e653c759d51d25eb3c71c/cc/layers/ui_resource_layer_unittest.cc
[modify] https://crrev.com/ffc181a212a047aaaa8e653c759d51d25eb3c71c/cc/test/fake_layer_tree_host_client.cc
[modify] https://crrev.com/ffc181a212a047aaaa8e653c759d51d25eb3c71c/cc/test/fake_layer_tree_host_client.h
[modify] https://crrev.com/ffc181a212a047aaaa8e653c759d51d25eb3c71c/cc/test/layer_test_common.h
[add] https://crrev.com/ffc181a212a047aaaa8e653c759d51d25eb3c71c/cc/test/stub_layer_tree_host_client.cc
[add] https://crrev.com/ffc181a212a047aaaa8e653c759d51d25eb3c71c/cc/test/stub_layer_tree_host_client.h
[add] https://crrev.com/ffc181a212a047aaaa8e653c759d51d25eb3c71c/cc/test/stub_layer_tree_host_single_thread_client.cc
[add] https://crrev.com/ffc181a212a047aaaa8e653c759d51d25eb3c71c/cc/test/stub_layer_tree_host_single_thread_client.h
[modify] https://crrev.com/ffc181a212a047aaaa8e653c759d51d25eb3c71c/cc/trees/layer_tree_host_unittest_scroll.cc
[modify] https://crrev.com/ffc181a212a047aaaa8e653c759d51d25eb3c71c/cc/trees/tree_synchronizer_unittest.cc
[modify] https://crrev.com/ffc181a212a047aaaa8e653c759d51d25eb3c71c/ui/android/DEPS
[modify] https://crrev.com/ffc181a212a047aaaa8e653c759d51d25eb3c71c/ui/android/resources/resource_manager_impl_unittest.cc

Blockedon: 632544
Project Member

Comment 26 by bugdroid1@chromium.org, Aug 2 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/cae1058e62b7960796709512c4e1e650b6389c0f

commit cae1058e62b7960796709512c4e1e650b6389c0f
Author: danakj <danakj@chromium.org>
Date: Tue Aug 02 19:26:49 2016

cc: Make LayerTreeTests use a DelegatingRenderer and Display.

Wherein we rewrite a few thousand cc unit_tests to not use a
DirectRenderer in LayerTreeHostImpl so that we can remove that
possibility from the codebase.

Currently some LayerTreeTests use a DirectRenderer in the
LayerTreeHostImpl, which is the last case of this occuring. Instead
give all LayerTreeTests a TestDelegatingOutputSurface (which means
a DelegatingRenderer in LayerTreeHostImpl). TestDelegatingOutputSurface
delegates drawing to a DirectRenderer via Display, which matches how
things "really work" now.

This means SwapBuffers hooks become async from operations on
LayerTreeHostImpl, so we introduce 3 new hooks for tests:
- DisplayReceivedCompositorFrameOnThread.
- DisplayWillDrawAndSwapOnThread.
- DisplayDidDrawAndSwapOnThread.
None of these receive a LayerTreeHostImpl* since they are async
from it and so using its state from the hook would be racey. These
hooks come from the TestDelegatingOutputSurface instead of from the
LayerTreeHostImpl.

LayerTreeTest gets two methods that can be overridden to control the
output surface:
- CreateDelegatingOutputSurface makes a TestDelegatingOutputSurface
so tests can control the arguments passed to its constructor, or the
ContextProviders given to it.
- CreateDisplayOutputSurface makes an OutputSurface subclass that
will be owned by the Display and used by the DirectRenderer. This
allows tests to control which ContextProvider it uses, and what
subclass of OutputSurface to use, to allow mocking out things as
desired.

R=enne
BUG=606056
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel

Review-Url: https://codereview.chromium.org/2193293004
Cr-Commit-Position: refs/heads/master@{#409270}

[modify] https://crrev.com/cae1058e62b7960796709512c4e1e650b6389c0f/android_webview/browser/surfaces_instance.h
[modify] https://crrev.com/cae1058e62b7960796709512c4e1e650b6389c0f/cc/BUILD.gn
[modify] https://crrev.com/cae1058e62b7960796709512c4e1e650b6389c0f/cc/cc_tests.gyp
[modify] https://crrev.com/cae1058e62b7960796709512c4e1e650b6389c0f/cc/layers/surface_layer_unittest.cc
[modify] https://crrev.com/cae1058e62b7960796709512c4e1e650b6389c0f/cc/layers/texture_layer_unittest.cc
[modify] https://crrev.com/cae1058e62b7960796709512c4e1e650b6389c0f/cc/output/delegating_renderer_unittest.cc
[modify] https://crrev.com/cae1058e62b7960796709512c4e1e650b6389c0f/cc/output/renderer_unittest.cc
[modify] https://crrev.com/cae1058e62b7960796709512c4e1e650b6389c0f/cc/surfaces/display.cc
[modify] https://crrev.com/cae1058e62b7960796709512c4e1e650b6389c0f/cc/surfaces/display.h
[modify] https://crrev.com/cae1058e62b7960796709512c4e1e650b6389c0f/cc/surfaces/display_client.h
[modify] https://crrev.com/cae1058e62b7960796709512c4e1e650b6389c0f/cc/surfaces/display_unittest.cc
[modify] https://crrev.com/cae1058e62b7960796709512c4e1e650b6389c0f/cc/surfaces/surface_display_output_surface.cc
[modify] https://crrev.com/cae1058e62b7960796709512c4e1e650b6389c0f/cc/surfaces/surface_display_output_surface.h
[delete] https://crrev.com/c0990f09479436ba9bfbf4329b059ab7bb179e7d/cc/test/failure_output_surface.cc
[delete] https://crrev.com/c0990f09479436ba9bfbf4329b059ab7bb179e7d/cc/test/failure_output_surface.h
[modify] https://crrev.com/cae1058e62b7960796709512c4e1e650b6389c0f/cc/test/fake_output_surface.h
[modify] https://crrev.com/cae1058e62b7960796709512c4e1e650b6389c0f/cc/test/layer_tree_pixel_test.cc
[modify] https://crrev.com/cae1058e62b7960796709512c4e1e650b6389c0f/cc/test/layer_tree_pixel_test.h
[modify] https://crrev.com/cae1058e62b7960796709512c4e1e650b6389c0f/cc/test/layer_tree_test.cc
[modify] https://crrev.com/cae1058e62b7960796709512c4e1e650b6389c0f/cc/test/layer_tree_test.h
[modify] https://crrev.com/cae1058e62b7960796709512c4e1e650b6389c0f/cc/test/test_context_provider.cc
[modify] https://crrev.com/cae1058e62b7960796709512c4e1e650b6389c0f/cc/test/test_context_provider.h
[modify] https://crrev.com/cae1058e62b7960796709512c4e1e650b6389c0f/cc/test/test_delegating_output_surface.cc
[modify] https://crrev.com/cae1058e62b7960796709512c4e1e650b6389c0f/cc/test/test_delegating_output_surface.h
[modify] https://crrev.com/cae1058e62b7960796709512c4e1e650b6389c0f/cc/test/test_hooks.h
[modify] https://crrev.com/cae1058e62b7960796709512c4e1e650b6389c0f/cc/test/test_web_graphics_context_3d.cc
[modify] https://crrev.com/cae1058e62b7960796709512c4e1e650b6389c0f/cc/trees/layer_tree_host_impl.cc
[modify] https://crrev.com/cae1058e62b7960796709512c4e1e650b6389c0f/cc/trees/layer_tree_host_impl_unittest.cc
[modify] https://crrev.com/cae1058e62b7960796709512c4e1e650b6389c0f/cc/trees/layer_tree_host_unittest.cc
[modify] https://crrev.com/cae1058e62b7960796709512c4e1e650b6389c0f/cc/trees/layer_tree_host_unittest_context.cc
[modify] https://crrev.com/cae1058e62b7960796709512c4e1e650b6389c0f/cc/trees/layer_tree_host_unittest_copyrequest.cc
[modify] https://crrev.com/cae1058e62b7960796709512c4e1e650b6389c0f/cc/trees/layer_tree_host_unittest_damage.cc
[modify] https://crrev.com/cae1058e62b7960796709512c4e1e650b6389c0f/content/renderer/android/synchronous_compositor_output_surface.h
[modify] https://crrev.com/cae1058e62b7960796709512c4e1e650b6389c0f/content/renderer/gpu/render_widget_compositor_unittest.cc
[modify] https://crrev.com/cae1058e62b7960796709512c4e1e650b6389c0f/content/test/layouttest_support.cc
[modify] https://crrev.com/cae1058e62b7960796709512c4e1e650b6389c0f/services/ui/surfaces/display_compositor.cc
[modify] https://crrev.com/cae1058e62b7960796709512c4e1e650b6389c0f/services/ui/surfaces/display_compositor.h

Project Member

Comment 27 by bugdroid1@chromium.org, Aug 4 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/8ee20259fc28430498df2b22cb4a506d215d26dd

commit 8ee20259fc28430498df2b22cb4a506d215d26dd
Author: petrcermak <petrcermak@chromium.org>
Date: Thu Aug 04 10:36:20 2016

Revert of cc: Make LayerTreeTests use a DelegatingRenderer and Display. (patchset #6 id:120001 of https://codereview.chromium.org/2193293004/ )

Reason for revert:
Bisect identified that this patch broke cc_perftests on Linux and Android perf bots (crbug.com/634013).

Original issue's description:
> cc: Make LayerTreeTests use a DelegatingRenderer and Display.
>
> Wherein we rewrite a few thousand cc unit_tests to not use a
> DirectRenderer in LayerTreeHostImpl so that we can remove that
> possibility from the codebase.
>
> Currently some LayerTreeTests use a DirectRenderer in the
> LayerTreeHostImpl, which is the last case of this occuring. Instead
> give all LayerTreeTests a TestDelegatingOutputSurface (which means
> a DelegatingRenderer in LayerTreeHostImpl). TestDelegatingOutputSurface
> delegates drawing to a DirectRenderer via Display, which matches how
> things "really work" now.
>
> This means SwapBuffers hooks become async from operations on
> LayerTreeHostImpl, so we introduce 3 new hooks for tests:
> - DisplayReceivedCompositorFrameOnThread.
> - DisplayWillDrawAndSwapOnThread.
> - DisplayDidDrawAndSwapOnThread.
> None of these receive a LayerTreeHostImpl* since they are async
> from it and so using its state from the hook would be racey. These
> hooks come from the TestDelegatingOutputSurface instead of from the
> LayerTreeHostImpl.
>
> LayerTreeTest gets two methods that can be overridden to control the
> output surface:
> - CreateDelegatingOutputSurface makes a TestDelegatingOutputSurface
> so tests can control the arguments passed to its constructor, or the
> ContextProviders given to it.
> - CreateDisplayOutputSurface makes an OutputSurface subclass that
> will be owned by the Display and used by the DirectRenderer. This
> allows tests to control which ContextProvider it uses, and what
> subclass of OutputSurface to use, to allow mocking out things as
> desired.
>
> R=enne
> BUG=606056
> CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel
>
> Committed: https://crrev.com/cae1058e62b7960796709512c4e1e650b6389c0f
> Cr-Commit-Position: refs/heads/master@{#409270}

TBR=enne@chromium.org,boliu@chromium.org,fsamuel@chromium.org,piman@chromium.org,danakj@chromium.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=606056

Review-Url: https://codereview.chromium.org/2208693003
Cr-Commit-Position: refs/heads/master@{#409757}

[modify] https://crrev.com/8ee20259fc28430498df2b22cb4a506d215d26dd/android_webview/browser/surfaces_instance.h
[modify] https://crrev.com/8ee20259fc28430498df2b22cb4a506d215d26dd/cc/BUILD.gn
[modify] https://crrev.com/8ee20259fc28430498df2b22cb4a506d215d26dd/cc/cc_tests.gyp
[modify] https://crrev.com/8ee20259fc28430498df2b22cb4a506d215d26dd/cc/layers/surface_layer_unittest.cc
[modify] https://crrev.com/8ee20259fc28430498df2b22cb4a506d215d26dd/cc/layers/texture_layer_unittest.cc
[modify] https://crrev.com/8ee20259fc28430498df2b22cb4a506d215d26dd/cc/output/delegating_renderer_unittest.cc
[modify] https://crrev.com/8ee20259fc28430498df2b22cb4a506d215d26dd/cc/output/renderer_unittest.cc
[modify] https://crrev.com/8ee20259fc28430498df2b22cb4a506d215d26dd/cc/surfaces/display.cc
[modify] https://crrev.com/8ee20259fc28430498df2b22cb4a506d215d26dd/cc/surfaces/display.h
[modify] https://crrev.com/8ee20259fc28430498df2b22cb4a506d215d26dd/cc/surfaces/display_client.h
[modify] https://crrev.com/8ee20259fc28430498df2b22cb4a506d215d26dd/cc/surfaces/display_unittest.cc
[modify] https://crrev.com/8ee20259fc28430498df2b22cb4a506d215d26dd/cc/surfaces/surface_display_output_surface.cc
[modify] https://crrev.com/8ee20259fc28430498df2b22cb4a506d215d26dd/cc/surfaces/surface_display_output_surface.h
[add] https://crrev.com/8ee20259fc28430498df2b22cb4a506d215d26dd/cc/test/failure_output_surface.cc
[add] https://crrev.com/8ee20259fc28430498df2b22cb4a506d215d26dd/cc/test/failure_output_surface.h
[modify] https://crrev.com/8ee20259fc28430498df2b22cb4a506d215d26dd/cc/test/fake_output_surface.h
[modify] https://crrev.com/8ee20259fc28430498df2b22cb4a506d215d26dd/cc/test/layer_tree_pixel_test.cc
[modify] https://crrev.com/8ee20259fc28430498df2b22cb4a506d215d26dd/cc/test/layer_tree_pixel_test.h
[modify] https://crrev.com/8ee20259fc28430498df2b22cb4a506d215d26dd/cc/test/layer_tree_test.cc
[modify] https://crrev.com/8ee20259fc28430498df2b22cb4a506d215d26dd/cc/test/layer_tree_test.h
[modify] https://crrev.com/8ee20259fc28430498df2b22cb4a506d215d26dd/cc/test/test_context_provider.cc
[modify] https://crrev.com/8ee20259fc28430498df2b22cb4a506d215d26dd/cc/test/test_context_provider.h
[modify] https://crrev.com/8ee20259fc28430498df2b22cb4a506d215d26dd/cc/test/test_delegating_output_surface.cc
[modify] https://crrev.com/8ee20259fc28430498df2b22cb4a506d215d26dd/cc/test/test_delegating_output_surface.h
[modify] https://crrev.com/8ee20259fc28430498df2b22cb4a506d215d26dd/cc/test/test_hooks.h
[modify] https://crrev.com/8ee20259fc28430498df2b22cb4a506d215d26dd/cc/test/test_web_graphics_context_3d.cc
[modify] https://crrev.com/8ee20259fc28430498df2b22cb4a506d215d26dd/cc/trees/layer_tree_host_impl.cc
[modify] https://crrev.com/8ee20259fc28430498df2b22cb4a506d215d26dd/cc/trees/layer_tree_host_impl_unittest.cc
[modify] https://crrev.com/8ee20259fc28430498df2b22cb4a506d215d26dd/cc/trees/layer_tree_host_unittest.cc
[modify] https://crrev.com/8ee20259fc28430498df2b22cb4a506d215d26dd/cc/trees/layer_tree_host_unittest_context.cc
[modify] https://crrev.com/8ee20259fc28430498df2b22cb4a506d215d26dd/cc/trees/layer_tree_host_unittest_copyrequest.cc
[modify] https://crrev.com/8ee20259fc28430498df2b22cb4a506d215d26dd/cc/trees/layer_tree_host_unittest_damage.cc
[modify] https://crrev.com/8ee20259fc28430498df2b22cb4a506d215d26dd/content/renderer/android/synchronous_compositor_output_surface.h
[modify] https://crrev.com/8ee20259fc28430498df2b22cb4a506d215d26dd/content/renderer/gpu/render_widget_compositor_unittest.cc
[modify] https://crrev.com/8ee20259fc28430498df2b22cb4a506d215d26dd/content/test/layouttest_support.cc
[modify] https://crrev.com/8ee20259fc28430498df2b22cb4a506d215d26dd/services/ui/surfaces/display_compositor.cc
[modify] https://crrev.com/8ee20259fc28430498df2b22cb4a506d215d26dd/services/ui/surfaces/display_compositor.h

Project Member

Comment 28 by bugdroid1@chromium.org, Aug 4 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/014316e35eb9a90a024302daa3a6c3ca3983a8bd

commit 014316e35eb9a90a024302daa3a6c3ca3983a8bd
Author: danakj <danakj@chromium.org>
Date: Thu Aug 04 18:40:26 2016

cc: Make LayerTreeTests use a DelegatingRenderer and Display.

Wherein we rewrite a few thousand cc unit_tests to not use a
DirectRenderer in LayerTreeHostImpl so that we can remove that
possibility from the codebase.

Currently some LayerTreeTests use a DirectRenderer in the
LayerTreeHostImpl, which is the last case of this occuring. Instead
give all LayerTreeTests a TestDelegatingOutputSurface (which means
a DelegatingRenderer in LayerTreeHostImpl). TestDelegatingOutputSurface
delegates drawing to a DirectRenderer via Display, which matches how
things "really work" now.

This means SwapBuffers hooks become async from operations on
LayerTreeHostImpl, so we introduce 3 new hooks for tests:
- DisplayReceivedCompositorFrameOnThread.
- DisplayWillDrawAndSwapOnThread.
- DisplayDidDrawAndSwapOnThread.
None of these receive a LayerTreeHostImpl* since they are async
from it and so using its state from the hook would be racey. These
hooks come from the TestDelegatingOutputSurface instead of from the
LayerTreeHostImpl.

LayerTreeTest gets two methods that can be overridden to control the
output surface:
- CreateDelegatingOutputSurface makes a TestDelegatingOutputSurface
so tests can control the arguments passed to its constructor, or the
ContextProviders given to it.
- CreateDisplayOutputSurface makes an OutputSurface subclass that
will be owned by the Display and used by the DirectRenderer. This
allows tests to control which ContextProvider it uses, and what
subclass of OutputSurface to use, to allow mocking out things as
desired.

Now also with fixes for cc_perftests:

The TestDelegatingOutputSurface was not honoring disable_display_vsync
so they were not saturating the thread, making them take much longer
than 5s to do 5s of thread work, and they'd time out.

Also the TetureMailbox doesn't get released to the main thread
immediately after commit anymore, as you need to wait for the
mailbox to be given to the Display (DisplayReceivedCompositorFrame
is the hook for that fwiw). So we wait for the mailbox to actually
return before ending the test to avoid a crash.

R=enne
BUG=606056
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel

Committed: https://crrev.com/cae1058e62b7960796709512c4e1e650b6389c0f
Review-Url: https://codereview.chromium.org/2193293004
Cr-Original-Commit-Position: refs/heads/master@{#409270}
Cr-Commit-Position: refs/heads/master@{#409845}

[modify] https://crrev.com/014316e35eb9a90a024302daa3a6c3ca3983a8bd/android_webview/browser/surfaces_instance.h
[modify] https://crrev.com/014316e35eb9a90a024302daa3a6c3ca3983a8bd/cc/BUILD.gn
[modify] https://crrev.com/014316e35eb9a90a024302daa3a6c3ca3983a8bd/cc/cc_tests.gyp
[modify] https://crrev.com/014316e35eb9a90a024302daa3a6c3ca3983a8bd/cc/layers/surface_layer_unittest.cc
[modify] https://crrev.com/014316e35eb9a90a024302daa3a6c3ca3983a8bd/cc/layers/texture_layer_unittest.cc
[modify] https://crrev.com/014316e35eb9a90a024302daa3a6c3ca3983a8bd/cc/output/delegating_renderer_unittest.cc
[modify] https://crrev.com/014316e35eb9a90a024302daa3a6c3ca3983a8bd/cc/output/renderer_unittest.cc
[modify] https://crrev.com/014316e35eb9a90a024302daa3a6c3ca3983a8bd/cc/surfaces/display.cc
[modify] https://crrev.com/014316e35eb9a90a024302daa3a6c3ca3983a8bd/cc/surfaces/display.h
[modify] https://crrev.com/014316e35eb9a90a024302daa3a6c3ca3983a8bd/cc/surfaces/display_client.h
[modify] https://crrev.com/014316e35eb9a90a024302daa3a6c3ca3983a8bd/cc/surfaces/display_unittest.cc
[modify] https://crrev.com/014316e35eb9a90a024302daa3a6c3ca3983a8bd/cc/surfaces/surface_display_output_surface.cc
[modify] https://crrev.com/014316e35eb9a90a024302daa3a6c3ca3983a8bd/cc/surfaces/surface_display_output_surface.h
[delete] https://crrev.com/605ab1c3447ebe4749d80c20a7d38c01a59c0887/cc/test/failure_output_surface.cc
[delete] https://crrev.com/605ab1c3447ebe4749d80c20a7d38c01a59c0887/cc/test/failure_output_surface.h
[modify] https://crrev.com/014316e35eb9a90a024302daa3a6c3ca3983a8bd/cc/test/fake_output_surface.h
[modify] https://crrev.com/014316e35eb9a90a024302daa3a6c3ca3983a8bd/cc/test/layer_tree_pixel_test.cc
[modify] https://crrev.com/014316e35eb9a90a024302daa3a6c3ca3983a8bd/cc/test/layer_tree_pixel_test.h
[modify] https://crrev.com/014316e35eb9a90a024302daa3a6c3ca3983a8bd/cc/test/layer_tree_test.cc
[modify] https://crrev.com/014316e35eb9a90a024302daa3a6c3ca3983a8bd/cc/test/layer_tree_test.h
[modify] https://crrev.com/014316e35eb9a90a024302daa3a6c3ca3983a8bd/cc/test/test_context_provider.cc
[modify] https://crrev.com/014316e35eb9a90a024302daa3a6c3ca3983a8bd/cc/test/test_context_provider.h
[modify] https://crrev.com/014316e35eb9a90a024302daa3a6c3ca3983a8bd/cc/test/test_delegating_output_surface.cc
[modify] https://crrev.com/014316e35eb9a90a024302daa3a6c3ca3983a8bd/cc/test/test_delegating_output_surface.h
[modify] https://crrev.com/014316e35eb9a90a024302daa3a6c3ca3983a8bd/cc/test/test_hooks.h
[modify] https://crrev.com/014316e35eb9a90a024302daa3a6c3ca3983a8bd/cc/test/test_web_graphics_context_3d.cc
[modify] https://crrev.com/014316e35eb9a90a024302daa3a6c3ca3983a8bd/cc/trees/layer_tree_host_impl.cc
[modify] https://crrev.com/014316e35eb9a90a024302daa3a6c3ca3983a8bd/cc/trees/layer_tree_host_impl_unittest.cc
[modify] https://crrev.com/014316e35eb9a90a024302daa3a6c3ca3983a8bd/cc/trees/layer_tree_host_perftest.cc
[modify] https://crrev.com/014316e35eb9a90a024302daa3a6c3ca3983a8bd/cc/trees/layer_tree_host_unittest.cc
[modify] https://crrev.com/014316e35eb9a90a024302daa3a6c3ca3983a8bd/cc/trees/layer_tree_host_unittest_context.cc
[modify] https://crrev.com/014316e35eb9a90a024302daa3a6c3ca3983a8bd/cc/trees/layer_tree_host_unittest_copyrequest.cc
[modify] https://crrev.com/014316e35eb9a90a024302daa3a6c3ca3983a8bd/cc/trees/layer_tree_host_unittest_damage.cc
[modify] https://crrev.com/014316e35eb9a90a024302daa3a6c3ca3983a8bd/content/renderer/android/synchronous_compositor_output_surface.h
[modify] https://crrev.com/014316e35eb9a90a024302daa3a6c3ca3983a8bd/content/renderer/gpu/render_widget_compositor_unittest.cc
[modify] https://crrev.com/014316e35eb9a90a024302daa3a6c3ca3983a8bd/content/test/layouttest_support.cc
[modify] https://crrev.com/014316e35eb9a90a024302daa3a6c3ca3983a8bd/services/ui/surfaces/display_compositor.cc
[modify] https://crrev.com/014316e35eb9a90a024302daa3a6c3ca3983a8bd/services/ui/surfaces/display_compositor.h

Project Member

Comment 29 by bugdroid1@chromium.org, Aug 10 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/c070bf556fae8811df77edbd2a7b3a3594de660e

commit c070bf556fae8811df77edbd2a7b3a3594de660e
Author: danakj <danakj@chromium.org>
Date: Wed Aug 10 22:41:55 2016

cc: Never make a DirectRenderer in LayerTreeHostImpl.

This DCHECKs that the OutputSurface says delegated_rendering. And fixes
a few unit test stragglers that were passing a non-delegated flag. And
then we delete code to create GLRenderer and SoftwareRenderer from
LayerTreeHostImpl.

R=enne
BUG=606056
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel

Review-Url: https://codereview.chromium.org/2196023002
Cr-Commit-Position: refs/heads/master@{#411167}

[modify] https://crrev.com/c070bf556fae8811df77edbd2a7b3a3594de660e/cc/layers/nine_patch_layer_impl_unittest.cc
[modify] https://crrev.com/c070bf556fae8811df77edbd2a7b3a3594de660e/cc/layers/picture_layer_unittest.cc
[modify] https://crrev.com/c070bf556fae8811df77edbd2a7b3a3594de660e/cc/tiles/tile_manager_unittest.cc
[modify] https://crrev.com/c070bf556fae8811df77edbd2a7b3a3594de660e/cc/trees/layer_tree_host_impl.cc
[modify] https://crrev.com/c070bf556fae8811df77edbd2a7b3a3594de660e/cc/trees/layer_tree_host_impl_unittest.cc
[modify] https://crrev.com/c070bf556fae8811df77edbd2a7b3a3594de660e/third_party/WebKit/Source/platform/graphics/CompositorMutableStateTest.cpp

Project Member

Comment 30 by bugdroid1@chromium.org, Aug 11 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/0943a11e58828e6f94286431b1cd7bdd968f152f

commit 0943a11e58828e6f94286431b1cd7bdd968f152f
Author: danakj <danakj@chromium.org>
Date: Thu Aug 11 00:33:46 2016

cc: Remove the lie of "DirectRenderer" in LayerTreeTests.

The bool for "delegating_renderer" was still there but unusued. Remove
it along with the DIRECT_RENDERER macros, and any test variants that
were explicitly setting delegating_renderer to false when there was
another variant setting it to true.

R=enne, vmpstr
BUG=606056
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel

Review-Url: https://codereview.chromium.org/2231233002
Cr-Commit-Position: refs/heads/master@{#411205}

[modify] https://crrev.com/0943a11e58828e6f94286431b1cd7bdd968f152f/cc/layers/scrollbar_layer_unittest.cc
[modify] https://crrev.com/0943a11e58828e6f94286431b1cd7bdd968f152f/cc/layers/texture_layer_unittest.cc
[modify] https://crrev.com/0943a11e58828e6f94286431b1cd7bdd968f152f/cc/test/layer_tree_pixel_test.cc
[modify] https://crrev.com/0943a11e58828e6f94286431b1cd7bdd968f152f/cc/test/layer_tree_test.cc
[modify] https://crrev.com/0943a11e58828e6f94286431b1cd7bdd968f152f/cc/test/layer_tree_test.h
[modify] https://crrev.com/0943a11e58828e6f94286431b1cd7bdd968f152f/cc/trees/layer_tree_host_common_perftest.cc
[modify] https://crrev.com/0943a11e58828e6f94286431b1cd7bdd968f152f/cc/trees/layer_tree_host_perftest.cc
[modify] https://crrev.com/0943a11e58828e6f94286431b1cd7bdd968f152f/cc/trees/layer_tree_host_unittest.cc
[modify] https://crrev.com/0943a11e58828e6f94286431b1cd7bdd968f152f/cc/trees/layer_tree_host_unittest_context.cc
[modify] https://crrev.com/0943a11e58828e6f94286431b1cd7bdd968f152f/cc/trees/layer_tree_host_unittest_copyrequest.cc
[modify] https://crrev.com/0943a11e58828e6f94286431b1cd7bdd968f152f/cc/trees/layer_tree_host_unittest_scroll.cc

Project Member

Comment 31 by bugdroid1@chromium.org, Aug 12 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/ea91819a259ff1ca9ededf03fb8c3fc6c47b5dd5

commit ea91819a259ff1ca9ededf03fb8c3fc6c47b5dd5
Author: danakj <danakj@chromium.org>
Date: Fri Aug 12 00:25:52 2016

cc: Remove FinishAllRendering, as it doesn't do anything anymore.

DelegatingRenderer's Finish() is an empty function.

R=piman@chromium.org
TBR=jennyz
BUG=606056
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel

Review-Url: https://codereview.chromium.org/2231093003
Cr-Commit-Position: refs/heads/master@{#411474}

[modify] https://crrev.com/ea91819a259ff1ca9ededf03fb8c3fc6c47b5dd5/ash/system/chromeos/power/power_event_observer.cc
[modify] https://crrev.com/ea91819a259ff1ca9ededf03fb8c3fc6c47b5dd5/cc/output/delegating_renderer.h
[modify] https://crrev.com/ea91819a259ff1ca9ededf03fb8c3fc6c47b5dd5/cc/output/gl_renderer.cc
[modify] https://crrev.com/ea91819a259ff1ca9ededf03fb8c3fc6c47b5dd5/cc/output/gl_renderer.h
[modify] https://crrev.com/ea91819a259ff1ca9ededf03fb8c3fc6c47b5dd5/cc/output/renderer.h
[modify] https://crrev.com/ea91819a259ff1ca9ededf03fb8c3fc6c47b5dd5/cc/output/software_renderer.cc
[modify] https://crrev.com/ea91819a259ff1ca9ededf03fb8c3fc6c47b5dd5/cc/output/software_renderer.h
[modify] https://crrev.com/ea91819a259ff1ca9ededf03fb8c3fc6c47b5dd5/cc/test/fake_proxy.h
[modify] https://crrev.com/ea91819a259ff1ca9ededf03fb8c3fc6c47b5dd5/cc/trees/channel_main.h
[modify] https://crrev.com/ea91819a259ff1ca9ededf03fb8c3fc6c47b5dd5/cc/trees/layer_tree_host.cc
[modify] https://crrev.com/ea91819a259ff1ca9ededf03fb8c3fc6c47b5dd5/cc/trees/layer_tree_host.h
[modify] https://crrev.com/ea91819a259ff1ca9ededf03fb8c3fc6c47b5dd5/cc/trees/layer_tree_host_impl.cc
[modify] https://crrev.com/ea91819a259ff1ca9ededf03fb8c3fc6c47b5dd5/cc/trees/layer_tree_host_impl.h
[modify] https://crrev.com/ea91819a259ff1ca9ededf03fb8c3fc6c47b5dd5/cc/trees/proxy.h
[modify] https://crrev.com/ea91819a259ff1ca9ededf03fb8c3fc6c47b5dd5/cc/trees/proxy_impl.cc
[modify] https://crrev.com/ea91819a259ff1ca9ededf03fb8c3fc6c47b5dd5/cc/trees/proxy_impl.h
[modify] https://crrev.com/ea91819a259ff1ca9ededf03fb8c3fc6c47b5dd5/cc/trees/proxy_main.cc
[modify] https://crrev.com/ea91819a259ff1ca9ededf03fb8c3fc6c47b5dd5/cc/trees/proxy_main.h
[modify] https://crrev.com/ea91819a259ff1ca9ededf03fb8c3fc6c47b5dd5/cc/trees/remote_channel_impl.cc
[modify] https://crrev.com/ea91819a259ff1ca9ededf03fb8c3fc6c47b5dd5/cc/trees/remote_channel_impl.h
[modify] https://crrev.com/ea91819a259ff1ca9ededf03fb8c3fc6c47b5dd5/cc/trees/remote_channel_main.cc
[modify] https://crrev.com/ea91819a259ff1ca9ededf03fb8c3fc6c47b5dd5/cc/trees/remote_channel_main.h
[modify] https://crrev.com/ea91819a259ff1ca9ededf03fb8c3fc6c47b5dd5/cc/trees/single_thread_proxy.cc
[modify] https://crrev.com/ea91819a259ff1ca9ededf03fb8c3fc6c47b5dd5/cc/trees/single_thread_proxy.h
[modify] https://crrev.com/ea91819a259ff1ca9ededf03fb8c3fc6c47b5dd5/cc/trees/threaded_channel.cc
[modify] https://crrev.com/ea91819a259ff1ca9ededf03fb8c3fc6c47b5dd5/cc/trees/threaded_channel.h
[modify] https://crrev.com/ea91819a259ff1ca9ededf03fb8c3fc6c47b5dd5/ui/compositor/compositor.cc
[modify] https://crrev.com/ea91819a259ff1ca9ededf03fb8c3fc6c47b5dd5/ui/compositor/compositor.h

Project Member

Comment 32 by bugdroid1@chromium.org, Aug 12 2016

Project Member

Comment 33 by bugdroid1@chromium.org, Aug 13 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/63bba35428fa2c43e8790bc1dce619dee81df7ef

commit 63bba35428fa2c43e8790bc1dce619dee81df7ef
Author: danakj <danakj@chromium.org>
Date: Sat Aug 13 02:39:18 2016

Add/fix some comments for BlimpDelegatingOutputSurface

(and for its origin class TestDelegatingOutputSurface).

R=enne, wez
BUG=606056
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel

Review-Url: https://codereview.chromium.org/2237223004
Cr-Commit-Position: refs/heads/master@{#411863}

[modify] https://crrev.com/63bba35428fa2c43e8790bc1dce619dee81df7ef/blimp/client/feature/compositor/blimp_delegating_output_surface.h
[modify] https://crrev.com/63bba35428fa2c43e8790bc1dce619dee81df7ef/cc/test/test_delegating_output_surface.h

Project Member

Comment 34 by bugdroid1@chromium.org, Aug 17 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/6f2861b9c957c7374a2a2c084c6cafba01b5e5d6

commit 6f2861b9c957c7374a2a2c084c6cafba01b5e5d6
Author: danakj <danakj@chromium.org>
Date: Wed Aug 17 02:10:17 2016

Plumb SetVisible from ui::Compositor to the DirectRenderer.

This connection got lost when ui::Compositor was switched to using
Display and Surfaces. Restore the connection so that when the root
compositor becomes invisible we drop the backbuffer memory in the
DirectRenderer.

R=piman@chromium.org
TBR=sky
BUG=606056
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel

Review-Url: https://codereview.chromium.org/2238693002
Cr-Commit-Position: refs/heads/master@{#412421}

[modify] https://crrev.com/6f2861b9c957c7374a2a2c084c6cafba01b5e5d6/android_webview/browser/surfaces_instance.cc
[modify] https://crrev.com/6f2861b9c957c7374a2a2c084c6cafba01b5e5d6/cc/output/direct_renderer.cc
[modify] https://crrev.com/6f2861b9c957c7374a2a2c084c6cafba01b5e5d6/cc/output/gl_renderer_unittest.cc
[modify] https://crrev.com/6f2861b9c957c7374a2a2c084c6cafba01b5e5d6/cc/output/overlay_unittest.cc
[modify] https://crrev.com/6f2861b9c957c7374a2a2c084c6cafba01b5e5d6/cc/output/renderer.h
[modify] https://crrev.com/6f2861b9c957c7374a2a2c084c6cafba01b5e5d6/cc/output/software_renderer_unittest.cc
[modify] https://crrev.com/6f2861b9c957c7374a2a2c084c6cafba01b5e5d6/cc/surfaces/display.cc
[modify] https://crrev.com/6f2861b9c957c7374a2a2c084c6cafba01b5e5d6/cc/surfaces/display.h
[modify] https://crrev.com/6f2861b9c957c7374a2a2c084c6cafba01b5e5d6/cc/surfaces/display_scheduler.cc
[modify] https://crrev.com/6f2861b9c957c7374a2a2c084c6cafba01b5e5d6/cc/surfaces/display_scheduler.h
[modify] https://crrev.com/6f2861b9c957c7374a2a2c084c6cafba01b5e5d6/cc/surfaces/display_scheduler_unittest.cc
[modify] https://crrev.com/6f2861b9c957c7374a2a2c084c6cafba01b5e5d6/cc/surfaces/display_unittest.cc
[modify] https://crrev.com/6f2861b9c957c7374a2a2c084c6cafba01b5e5d6/cc/surfaces/surface_display_output_surface_unittest.cc
[modify] https://crrev.com/6f2861b9c957c7374a2a2c084c6cafba01b5e5d6/cc/test/fake_external_begin_frame_source.h
[modify] https://crrev.com/6f2861b9c957c7374a2a2c084c6cafba01b5e5d6/cc/test/pixel_test.cc
[modify] https://crrev.com/6f2861b9c957c7374a2a2c084c6cafba01b5e5d6/cc/test/test_delegating_output_surface.cc
[modify] https://crrev.com/6f2861b9c957c7374a2a2c084c6cafba01b5e5d6/content/browser/compositor/gpu_process_transport_factory.cc
[modify] https://crrev.com/6f2861b9c957c7374a2a2c084c6cafba01b5e5d6/content/browser/compositor/gpu_process_transport_factory.h
[modify] https://crrev.com/6f2861b9c957c7374a2a2c084c6cafba01b5e5d6/content/browser/renderer_host/compositor_impl_android.cc
[modify] https://crrev.com/6f2861b9c957c7374a2a2c084c6cafba01b5e5d6/content/renderer/android/synchronous_compositor_output_surface.cc
[modify] https://crrev.com/6f2861b9c957c7374a2a2c084c6cafba01b5e5d6/ui/compositor/DEPS
[modify] https://crrev.com/6f2861b9c957c7374a2a2c084c6cafba01b5e5d6/ui/compositor/compositor.cc
[modify] https://crrev.com/6f2861b9c957c7374a2a2c084c6cafba01b5e5d6/ui/compositor/compositor.h
[modify] https://crrev.com/6f2861b9c957c7374a2a2c084c6cafba01b5e5d6/ui/compositor/layer_unittest.cc
[modify] https://crrev.com/6f2861b9c957c7374a2a2c084c6cafba01b5e5d6/ui/compositor/test/in_process_context_factory.cc
[modify] https://crrev.com/6f2861b9c957c7374a2a2c084c6cafba01b5e5d6/ui/compositor/test/in_process_context_factory.h
[modify] https://crrev.com/6f2861b9c957c7374a2a2c084c6cafba01b5e5d6/ui/compositor/test/test_compositor_host_android.cc
[modify] https://crrev.com/6f2861b9c957c7374a2a2c084c6cafba01b5e5d6/ui/compositor/test/test_compositor_host_ozone.cc
[modify] https://crrev.com/6f2861b9c957c7374a2a2c084c6cafba01b5e5d6/ui/compositor/test/test_compositor_host_win.cc
[modify] https://crrev.com/6f2861b9c957c7374a2a2c084c6cafba01b5e5d6/ui/compositor/test/test_compositor_host_x11.cc
[modify] https://crrev.com/6f2861b9c957c7374a2a2c084c6cafba01b5e5d6/ui/views/mus/surface_context_factory.cc
[modify] https://crrev.com/6f2861b9c957c7374a2a2c084c6cafba01b5e5d6/ui/views/mus/surface_context_factory.h

Project Member

Comment 35 by bugdroid1@chromium.org, Aug 17 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/b902c676708c16da0e94f454a29cc6e84a21e659

commit b902c676708c16da0e94f454a29cc6e84a21e659
Author: danakj <danakj@chromium.org>
Date: Wed Aug 17 02:33:54 2016

cc: Delete the RendererClient class.

Just call SetFullViewportDamage from Display::SetVisible(false).

The drops the Ensure/DiscardBackbuffer methods from the DirectRenderer
API also, and just does EnsureBackbuffer when SetVisible(true) in
GLRenderer which matches the SoftwareRenderer.

R=enne
BUG=606056
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel

Review-Url: https://codereview.chromium.org/2254543003
Cr-Commit-Position: refs/heads/master@{#412430}

[modify] https://crrev.com/b902c676708c16da0e94f454a29cc6e84a21e659/cc/BUILD.gn
[modify] https://crrev.com/b902c676708c16da0e94f454a29cc6e84a21e659/cc/input/scroll_elasticity_helper.cc
[modify] https://crrev.com/b902c676708c16da0e94f454a29cc6e84a21e659/cc/output/delegating_renderer.cc
[modify] https://crrev.com/b902c676708c16da0e94f454a29cc6e84a21e659/cc/output/delegating_renderer.h
[modify] https://crrev.com/b902c676708c16da0e94f454a29cc6e84a21e659/cc/output/direct_renderer.cc
[modify] https://crrev.com/b902c676708c16da0e94f454a29cc6e84a21e659/cc/output/direct_renderer.h
[modify] https://crrev.com/b902c676708c16da0e94f454a29cc6e84a21e659/cc/output/gl_renderer.cc
[modify] https://crrev.com/b902c676708c16da0e94f454a29cc6e84a21e659/cc/output/gl_renderer.h
[modify] https://crrev.com/b902c676708c16da0e94f454a29cc6e84a21e659/cc/output/gl_renderer_unittest.cc
[modify] https://crrev.com/b902c676708c16da0e94f454a29cc6e84a21e659/cc/output/overlay_unittest.cc
[modify] https://crrev.com/b902c676708c16da0e94f454a29cc6e84a21e659/cc/output/renderer.h
[modify] https://crrev.com/b902c676708c16da0e94f454a29cc6e84a21e659/cc/output/software_renderer.cc
[modify] https://crrev.com/b902c676708c16da0e94f454a29cc6e84a21e659/cc/output/software_renderer.h
[modify] https://crrev.com/b902c676708c16da0e94f454a29cc6e84a21e659/cc/output/software_renderer_unittest.cc
[modify] https://crrev.com/b902c676708c16da0e94f454a29cc6e84a21e659/cc/surfaces/display.cc
[modify] https://crrev.com/b902c676708c16da0e94f454a29cc6e84a21e659/cc/surfaces/display.h
[delete] https://crrev.com/9e40ea52847b6303c81c6e2e64566791a2c960c8/cc/test/fake_renderer_client.h
[modify] https://crrev.com/b902c676708c16da0e94f454a29cc6e84a21e659/cc/test/pixel_test.cc
[modify] https://crrev.com/b902c676708c16da0e94f454a29cc6e84a21e659/cc/test/pixel_test.h
[modify] https://crrev.com/b902c676708c16da0e94f454a29cc6e84a21e659/cc/trees/layer_tree_host_impl.cc
[modify] https://crrev.com/b902c676708c16da0e94f454a29cc6e84a21e659/cc/trees/layer_tree_host_impl.h
[modify] https://crrev.com/b902c676708c16da0e94f454a29cc6e84a21e659/cc/trees/layer_tree_host_impl_unittest.cc
[modify] https://crrev.com/b902c676708c16da0e94f454a29cc6e84a21e659/cc/trees/layer_tree_host_perftest.cc
[modify] https://crrev.com/b902c676708c16da0e94f454a29cc6e84a21e659/cc/trees/layer_tree_host_unittest_damage.cc
[modify] https://crrev.com/b902c676708c16da0e94f454a29cc6e84a21e659/cc/trees/layer_tree_impl.cc

Project Member

Comment 36 by bugdroid1@chromium.org, Aug 17 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/db49547c7bbadfaa155607339856944a7eb5fa92

commit db49547c7bbadfaa155607339856944a7eb5fa92
Author: danakj <danakj@chromium.org>
Date: Wed Aug 17 19:57:23 2016

cc: Delete the Renderer base class.

Makes DirectRenderer and DelegatingRenderer into concrete
independent classes.

R=enne
BUG=606056
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel

Review-Url: https://codereview.chromium.org/2194013002
Cr-Commit-Position: refs/heads/master@{#412617}

[modify] https://crrev.com/db49547c7bbadfaa155607339856944a7eb5fa92/cc/BUILD.gn
[modify] https://crrev.com/db49547c7bbadfaa155607339856944a7eb5fa92/cc/layers/heads_up_display_layer_impl.cc
[modify] https://crrev.com/db49547c7bbadfaa155607339856944a7eb5fa92/cc/layers/texture_layer_impl.cc
[modify] https://crrev.com/db49547c7bbadfaa155607339856944a7eb5fa92/cc/output/delegating_renderer.cc
[modify] https://crrev.com/db49547c7bbadfaa155607339856944a7eb5fa92/cc/output/delegating_renderer.h
[modify] https://crrev.com/db49547c7bbadfaa155607339856944a7eb5fa92/cc/output/direct_renderer.cc
[modify] https://crrev.com/db49547c7bbadfaa155607339856944a7eb5fa92/cc/output/direct_renderer.h
[modify] https://crrev.com/db49547c7bbadfaa155607339856944a7eb5fa92/cc/output/gl_renderer.cc
[modify] https://crrev.com/db49547c7bbadfaa155607339856944a7eb5fa92/cc/output/gl_renderer.h
[modify] https://crrev.com/db49547c7bbadfaa155607339856944a7eb5fa92/cc/output/gl_renderer_unittest.cc
[delete] https://crrev.com/66b4142cfaf0acc038f220b6288089f8a60b923d/cc/output/renderer.cc
[delete] https://crrev.com/66b4142cfaf0acc038f220b6288089f8a60b923d/cc/output/renderer.h
[add] https://crrev.com/db49547c7bbadfaa155607339856944a7eb5fa92/cc/output/renderer_capabilities_impl.cc
[add] https://crrev.com/db49547c7bbadfaa155607339856944a7eb5fa92/cc/output/renderer_capabilities_impl.h
[modify] https://crrev.com/db49547c7bbadfaa155607339856944a7eb5fa92/cc/output/renderer_pixeltest.cc
[modify] https://crrev.com/db49547c7bbadfaa155607339856944a7eb5fa92/cc/output/software_renderer.cc
[modify] https://crrev.com/db49547c7bbadfaa155607339856944a7eb5fa92/cc/output/software_renderer.h
[modify] https://crrev.com/db49547c7bbadfaa155607339856944a7eb5fa92/cc/output/vulkan_renderer.cc
[modify] https://crrev.com/db49547c7bbadfaa155607339856944a7eb5fa92/cc/output/vulkan_renderer.h
[modify] https://crrev.com/db49547c7bbadfaa155607339856944a7eb5fa92/cc/resources/resource_pool.h
[modify] https://crrev.com/db49547c7bbadfaa155607339856944a7eb5fa92/cc/resources/scoped_resource_unittest.cc
[modify] https://crrev.com/db49547c7bbadfaa155607339856944a7eb5fa92/cc/resources/video_resource_updater.cc
[modify] https://crrev.com/db49547c7bbadfaa155607339856944a7eb5fa92/cc/surfaces/display.cc
[modify] https://crrev.com/db49547c7bbadfaa155607339856944a7eb5fa92/cc/surfaces/display.h
[modify] https://crrev.com/db49547c7bbadfaa155607339856944a7eb5fa92/cc/test/layer_tree_pixel_test.cc
[modify] https://crrev.com/db49547c7bbadfaa155607339856944a7eb5fa92/cc/test/test_delegating_output_surface.cc
[modify] https://crrev.com/db49547c7bbadfaa155607339856944a7eb5fa92/cc/test/test_delegating_output_surface.h
[modify] https://crrev.com/db49547c7bbadfaa155607339856944a7eb5fa92/cc/trees/layer_tree_host_impl.cc
[modify] https://crrev.com/db49547c7bbadfaa155607339856944a7eb5fa92/cc/trees/layer_tree_host_impl.h
[modify] https://crrev.com/db49547c7bbadfaa155607339856944a7eb5fa92/cc/trees/layer_tree_impl.h

Project Member

Comment 37 by bugdroid1@chromium.org, Aug 17 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/1a86f6d6a4b658c88cb293430326614c8165ec00

commit 1a86f6d6a4b658c88cb293430326614c8165ec00
Author: danakj <danakj@chromium.org>
Date: Wed Aug 17 20:10:40 2016

cc: Remove all impl-side caps from RendererCapabilitiesImpl.

Next up is destroy the struct itself, but need to see which main thread
ones can be removed, and generate them outside of the Renderer (and so
probably rename it all).

R=enne
BUG=606056
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel

Review-Url: https://codereview.chromium.org/2253823002
Cr-Commit-Position: refs/heads/master@{#412626}

[modify] https://crrev.com/1a86f6d6a4b658c88cb293430326614c8165ec00/cc/layers/picture_layer_impl_unittest.cc
[modify] https://crrev.com/1a86f6d6a4b658c88cb293430326614c8165ec00/cc/output/delegating_renderer.cc
[modify] https://crrev.com/1a86f6d6a4b658c88cb293430326614c8165ec00/cc/output/direct_renderer.cc
[modify] https://crrev.com/1a86f6d6a4b658c88cb293430326614c8165ec00/cc/output/direct_renderer.h
[modify] https://crrev.com/1a86f6d6a4b658c88cb293430326614c8165ec00/cc/output/gl_renderer.cc
[modify] https://crrev.com/1a86f6d6a4b658c88cb293430326614c8165ec00/cc/output/gl_renderer.h
[modify] https://crrev.com/1a86f6d6a4b658c88cb293430326614c8165ec00/cc/output/gl_renderer_unittest.cc
[modify] https://crrev.com/1a86f6d6a4b658c88cb293430326614c8165ec00/cc/output/overlay_unittest.cc
[modify] https://crrev.com/1a86f6d6a4b658c88cb293430326614c8165ec00/cc/output/renderer_capabilities.cc
[modify] https://crrev.com/1a86f6d6a4b658c88cb293430326614c8165ec00/cc/output/renderer_capabilities.h
[modify] https://crrev.com/1a86f6d6a4b658c88cb293430326614c8165ec00/cc/output/renderer_capabilities_impl.cc
[modify] https://crrev.com/1a86f6d6a4b658c88cb293430326614c8165ec00/cc/output/renderer_capabilities_impl.h
[modify] https://crrev.com/1a86f6d6a4b658c88cb293430326614c8165ec00/cc/output/software_renderer.cc
[modify] https://crrev.com/1a86f6d6a4b658c88cb293430326614c8165ec00/cc/output/software_renderer.h
[modify] https://crrev.com/1a86f6d6a4b658c88cb293430326614c8165ec00/cc/output/software_renderer_unittest.cc
[modify] https://crrev.com/1a86f6d6a4b658c88cb293430326614c8165ec00/cc/surfaces/display.cc
[modify] https://crrev.com/1a86f6d6a4b658c88cb293430326614c8165ec00/cc/test/layer_tree_pixel_resource_test.cc
[modify] https://crrev.com/1a86f6d6a4b658c88cb293430326614c8165ec00/cc/test/pixel_test.cc
[modify] https://crrev.com/1a86f6d6a4b658c88cb293430326614c8165ec00/cc/test/pixel_test.h
[modify] https://crrev.com/1a86f6d6a4b658c88cb293430326614c8165ec00/cc/trees/layer_tree_host_impl.cc
[modify] https://crrev.com/1a86f6d6a4b658c88cb293430326614c8165ec00/cc/trees/layer_tree_host_impl.h
[modify] https://crrev.com/1a86f6d6a4b658c88cb293430326614c8165ec00/cc/trees/layer_tree_host_impl_unittest.cc

Project Member

Comment 38 by bugdroid1@chromium.org, Aug 22 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/b164441d329b1260970621adbe9046ee79917aea

commit b164441d329b1260970621adbe9046ee79917aea
Author: danakj <danakj@chromium.org>
Date: Mon Aug 22 22:30:25 2016

Make DrawingBuffer and Canvas2DLayerBridge be cc::TextureLayerClients.

This eliminates the following classes:
- WebExternalTextureMailbox (use cc::TextureMailbox and
  cc::SingleReleaseCallback directly now)
- WebExternalTextureLayerClient (use cc::TextureLayerClient directly)
- WebExternalBitmapImpl (use cc::SharedBitmap and friends directly)

While using SingleReleaseCallback, it became clear that some calls to
prepareMailbox were never calling releaseMailbox, causing the texture
to be kept alive forever (and the DrawingBuffer with it), leaking memory.
Fixing this lead to a large rewrite of the "transferToImageBitmap()"
implementation, which hopefully is simpler about its intentions and does
less work switching between mailboxes and SkImages.

R=kbr, piman, xidachen, junov, pdr, tkent
BUG=606056
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel

Review-Url: https://codereview.chromium.org/2261623002
Cr-Commit-Position: refs/heads/master@{#413555}

[modify] https://crrev.com/b164441d329b1260970621adbe9046ee79917aea/cc/blink/BUILD.gn
[modify] https://crrev.com/b164441d329b1260970621adbe9046ee79917aea/cc/blink/web_compositor_support_impl.cc
[modify] https://crrev.com/b164441d329b1260970621adbe9046ee79917aea/cc/blink/web_compositor_support_impl.h
[delete] https://crrev.com/51b72e205d8f3a1ccad76986e8ae3af258b94454/cc/blink/web_external_bitmap_impl.cc
[delete] https://crrev.com/51b72e205d8f3a1ccad76986e8ae3af258b94454/cc/blink/web_external_bitmap_impl.h
[modify] https://crrev.com/b164441d329b1260970621adbe9046ee79917aea/cc/blink/web_external_texture_layer_impl.cc
[modify] https://crrev.com/b164441d329b1260970621adbe9046ee79917aea/cc/blink/web_external_texture_layer_impl.h
[modify] https://crrev.com/b164441d329b1260970621adbe9046ee79917aea/components/test_runner/test_plugin.h
[modify] https://crrev.com/b164441d329b1260970621adbe9046ee79917aea/content/renderer/render_thread_impl.cc
[modify] https://crrev.com/b164441d329b1260970621adbe9046ee79917aea/content/renderer/renderer_blink_platform_impl.cc
[modify] https://crrev.com/b164441d329b1260970621adbe9046ee79917aea/content/renderer/renderer_blink_platform_impl.h
[modify] https://crrev.com/b164441d329b1260970621adbe9046ee79917aea/third_party/WebKit/Source/core/frame/ImageBitmap.cpp
[modify] https://crrev.com/b164441d329b1260970621adbe9046ee79917aea/third_party/WebKit/Source/core/frame/ImageBitmap.h
[modify] https://crrev.com/b164441d329b1260970621adbe9046ee79917aea/third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.cpp
[modify] https://crrev.com/b164441d329b1260970621adbe9046ee79917aea/third_party/WebKit/Source/platform/graphics/AcceleratedStaticBitmapImage.cpp
[modify] https://crrev.com/b164441d329b1260970621adbe9046ee79917aea/third_party/WebKit/Source/platform/graphics/AcceleratedStaticBitmapImage.h
[modify] https://crrev.com/b164441d329b1260970621adbe9046ee79917aea/third_party/WebKit/Source/platform/graphics/Canvas2DLayerBridge.cpp
[modify] https://crrev.com/b164441d329b1260970621adbe9046ee79917aea/third_party/WebKit/Source/platform/graphics/Canvas2DLayerBridge.h
[modify] https://crrev.com/b164441d329b1260970621adbe9046ee79917aea/third_party/WebKit/Source/platform/graphics/Canvas2DLayerBridgeTest.cpp
[modify] https://crrev.com/b164441d329b1260970621adbe9046ee79917aea/third_party/WebKit/Source/platform/graphics/DEPS
[modify] https://crrev.com/b164441d329b1260970621adbe9046ee79917aea/third_party/WebKit/Source/platform/graphics/ImageBuffer.cpp
[modify] https://crrev.com/b164441d329b1260970621adbe9046ee79917aea/third_party/WebKit/Source/platform/graphics/gpu/DrawingBuffer.cpp
[modify] https://crrev.com/b164441d329b1260970621adbe9046ee79917aea/third_party/WebKit/Source/platform/graphics/gpu/DrawingBuffer.h
[modify] https://crrev.com/b164441d329b1260970621adbe9046ee79917aea/third_party/WebKit/Source/platform/graphics/gpu/DrawingBufferTest.cpp
[modify] https://crrev.com/b164441d329b1260970621adbe9046ee79917aea/third_party/WebKit/Source/wtf/DequeTest.cpp
[modify] https://crrev.com/b164441d329b1260970621adbe9046ee79917aea/third_party/WebKit/public/blink_headers.gypi
[modify] https://crrev.com/b164441d329b1260970621adbe9046ee79917aea/third_party/WebKit/public/platform/Platform.h
[modify] https://crrev.com/b164441d329b1260970621adbe9046ee79917aea/third_party/WebKit/public/platform/WebCompositorSupport.h
[delete] https://crrev.com/51b72e205d8f3a1ccad76986e8ae3af258b94454/third_party/WebKit/public/platform/WebExternalTextureLayerClient.h
[delete] https://crrev.com/51b72e205d8f3a1ccad76986e8ae3af258b94454/third_party/WebKit/public/platform/WebExternalTextureMailbox.h

Project Member

Comment 39 by bugdroid1@chromium.org, Aug 22 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/a08ad3d17ca44b954c1f2437451f4bbe834d89a2

commit a08ad3d17ca44b954c1f2437451f4bbe834d89a2
Author: danakj <danakj@chromium.org>
Date: Mon Aug 22 23:04:04 2016

Remove GpuInfo::can_lose_context.

This was a legacy flag for WinXP which would lose context often during
regular activities (like locking the screen).

R=piman@chromium.org
TBR=kenrb@chromium.org
BUG=606056
CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel

Review-Url: https://codereview.chromium.org/2261893003
Cr-Commit-Position: refs/heads/master@{#413566}

[modify] https://crrev.com/a08ad3d17ca44b954c1f2437451f4bbe834d89a2/chrome/browser/gpu/gpu_driver_info_manager_android.cc
[modify] https://crrev.com/a08ad3d17ca44b954c1f2437451f4bbe834d89a2/content/browser/gpu/compositor_util.cc
[modify] https://crrev.com/a08ad3d17ca44b954c1f2437451f4bbe834d89a2/content/renderer/renderer_blink_platform_impl.cc
[modify] https://crrev.com/a08ad3d17ca44b954c1f2437451f4bbe834d89a2/content/test/gpu/gpu_tests/fake_win_amd_gpu_info.py
[modify] https://crrev.com/a08ad3d17ca44b954c1f2437451f4bbe834d89a2/gpu/config/gpu_info.cc
[modify] https://crrev.com/a08ad3d17ca44b954c1f2437451f4bbe834d89a2/gpu/config/gpu_info.h
[modify] https://crrev.com/a08ad3d17ca44b954c1f2437451f4bbe834d89a2/gpu/config/gpu_info_collector.cc
[modify] https://crrev.com/a08ad3d17ca44b954c1f2437451f4bbe834d89a2/gpu/config/gpu_info_collector_android.cc
[modify] https://crrev.com/a08ad3d17ca44b954c1f2437451f4bbe834d89a2/gpu/config/gpu_info_collector_linux.cc
[modify] https://crrev.com/a08ad3d17ca44b954c1f2437451f4bbe834d89a2/gpu/config/gpu_info_collector_mac.mm
[modify] https://crrev.com/a08ad3d17ca44b954c1f2437451f4bbe834d89a2/gpu/config/gpu_info_collector_unittest.cc
[modify] https://crrev.com/a08ad3d17ca44b954c1f2437451f4bbe834d89a2/gpu/config/gpu_info_collector_win.cc
[modify] https://crrev.com/a08ad3d17ca44b954c1f2437451f4bbe834d89a2/gpu/config/gpu_info_unittest.cc
[modify] https://crrev.com/a08ad3d17ca44b954c1f2437451f4bbe834d89a2/gpu/ipc/common/gpu_info.mojom
[modify] https://crrev.com/a08ad3d17ca44b954c1f2437451f4bbe834d89a2/gpu/ipc/common/gpu_info_struct_traits.cc
[modify] https://crrev.com/a08ad3d17ca44b954c1f2437451f4bbe834d89a2/gpu/ipc/common/gpu_info_struct_traits.h
[modify] https://crrev.com/a08ad3d17ca44b954c1f2437451f4bbe834d89a2/gpu/ipc/common/gpu_param_traits_macros.h
[modify] https://crrev.com/a08ad3d17ca44b954c1f2437451f4bbe834d89a2/gpu/ipc/common/struct_traits_unittest.cc

Project Member

Comment 40 by bugdroid1@chromium.org, Aug 23 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/4dd43951b9efedb9473e65e8132ee5d8976bc860

commit 4dd43951b9efedb9473e65e8132ee5d8976bc860
Author: danakj <danakj@chromium.org>
Date: Tue Aug 23 21:18:39 2016

Expose if we are using swiftshader via WebGraphicsContext3DProvider.

When we are using swiftshader, we are able to make contexts but the
compositor will not use GPU compositing, and WebGL/Canvas should not
be producing GL outputs for it. This is visible via the GPUInfo's
software_rendering flag. Currently WebGL and Canvas get this info
via two different paths, and the compositor makes its decision via
a third. They all end up being the same thing (mostly not racey) but
we can make this more common by just having them all check
|software_rendering|.

This has the additional benefits that:
1) We don't need to do a round trip thru the compositor thread to
determine if we're doing GPU compositing (no more RendererCapability
needed).
2) We don't need a separate method on the Platform API.
3) Canvas2D doesn't have a semi-racey thing where it can check
|software_rendering| on one GpuChannelHost, lose it, then make a
context on a different GpuChannelHost. Now the capability is explicitly
tied to the lifetime of the context, which is what the comment in
Platform tried to warn about.
4) Additionally, have DrawingBuffer check lost context and not try
to produce frames in this scenario since it may end up producing the
wrong mode for the compositor which is already using a new context
with a different mode. (Canvas already does this.)

This helps us eliminate races between cc/webgl/canvas on
making this decision. When the GpuChannelHost is lost, all contexts
become lost when the next code tries to create a context. Since we
now tie the decisions around which mode to use to the context, and
the context is lost when any other part of the system would change
its opinion about what mode to use, they should all agree.

R=junov@chromium.org, kbr@chromium.org, piman@chromium.org
BUG=606056
CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.win:win_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel

Review-Url: https://codereview.chromium.org/2267993002
Cr-Commit-Position: refs/heads/master@{#413837}

[modify] https://crrev.com/4dd43951b9efedb9473e65e8132ee5d8976bc860/content/renderer/renderer_blink_platform_impl.cc
[modify] https://crrev.com/4dd43951b9efedb9473e65e8132ee5d8976bc860/content/renderer/renderer_blink_platform_impl.h
[modify] https://crrev.com/4dd43951b9efedb9473e65e8132ee5d8976bc860/content/renderer/webgraphicscontext3d_provider_impl.cc
[modify] https://crrev.com/4dd43951b9efedb9473e65e8132ee5d8976bc860/content/renderer/webgraphicscontext3d_provider_impl.h
[modify] https://crrev.com/4dd43951b9efedb9473e65e8132ee5d8976bc860/third_party/WebKit/Source/core/html/HTMLCanvasElement.cpp
[modify] https://crrev.com/4dd43951b9efedb9473e65e8132ee5d8976bc860/third_party/WebKit/Source/core/html/HTMLCanvasElement.h
[modify] https://crrev.com/4dd43951b9efedb9473e65e8132ee5d8976bc860/third_party/WebKit/Source/platform/graphics/Canvas2DImageBufferSurface.h
[modify] https://crrev.com/4dd43951b9efedb9473e65e8132ee5d8976bc860/third_party/WebKit/Source/platform/graphics/Canvas2DLayerBridge.cpp
[modify] https://crrev.com/4dd43951b9efedb9473e65e8132ee5d8976bc860/third_party/WebKit/Source/platform/graphics/Canvas2DLayerBridge.h
[modify] https://crrev.com/4dd43951b9efedb9473e65e8132ee5d8976bc860/third_party/WebKit/Source/platform/graphics/gpu/DrawingBuffer.cpp
[modify] https://crrev.com/4dd43951b9efedb9473e65e8132ee5d8976bc860/third_party/WebKit/Source/platform/graphics/gpu/DrawingBuffer.h
[modify] https://crrev.com/4dd43951b9efedb9473e65e8132ee5d8976bc860/third_party/WebKit/Source/platform/graphics/gpu/DrawingBufferTest.cpp
[modify] https://crrev.com/4dd43951b9efedb9473e65e8132ee5d8976bc860/third_party/WebKit/Source/platform/graphics/test/FakeWebGraphicsContext3DProvider.h
[modify] https://crrev.com/4dd43951b9efedb9473e65e8132ee5d8976bc860/third_party/WebKit/public/platform/Platform.h
[modify] https://crrev.com/4dd43951b9efedb9473e65e8132ee5d8976bc860/third_party/WebKit/public/platform/WebGraphicsContext3DProvider.h

Project Member

Comment 41 by bugdroid1@chromium.org, Aug 23 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/4d0dd80db68c7aa1a43d6463d828db77ae4b0229

commit 4d0dd80db68c7aa1a43d6463d828db77ae4b0229
Author: danakj <danakj@chromium.org>
Date: Tue Aug 23 22:10:06 2016

cc: Remove the software compositing bool from PrepareTextureMailbox

A quick followup after https://codereview.chromium.org/2267993002/ that
deletes the now-unused parameter.

Since clients determine if they should give cc a GPU or software
mailbox based on the GL context, we no longer need this bool parameter
in PrepareTextureMailbox. Also we don't need the RendererCapabilities
field anymore.

In changing one Canvas2DLayerBridge test to lose the GL context then
call PrepareTextureMailbox, I uncovered that this would cause DCHECKs
in the method to fail since isAccelerated() returns false on the first
call when the context is lost (but does not return false if
PrepareTextureMailbox happens with a non-lost context at least once
beforehand). So I left a call to prepareSurfaceForPaintingIfNeeded() to
work around the issue with a TODO. It seems like isAccelerated() should
just go away or something but I'm not sure.

R=junov@chromium.org, kbr@chromium.org, piman@chromium.org
TBR=pfeldman
BUG=606056
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel

Review-Url: https://codereview.chromium.org/2270533002
Cr-Commit-Position: refs/heads/master@{#413854}

[modify] https://crrev.com/4d0dd80db68c7aa1a43d6463d828db77ae4b0229/cc/layers/texture_layer.cc
[modify] https://crrev.com/4d0dd80db68c7aa1a43d6463d828db77ae4b0229/cc/layers/texture_layer_client.h
[modify] https://crrev.com/4d0dd80db68c7aa1a43d6463d828db77ae4b0229/cc/layers/texture_layer_unittest.cc
[modify] https://crrev.com/4d0dd80db68c7aa1a43d6463d828db77ae4b0229/cc/output/delegating_renderer.cc
[modify] https://crrev.com/4d0dd80db68c7aa1a43d6463d828db77ae4b0229/cc/output/renderer_capabilities.cc
[modify] https://crrev.com/4d0dd80db68c7aa1a43d6463d828db77ae4b0229/cc/output/renderer_capabilities.h
[modify] https://crrev.com/4d0dd80db68c7aa1a43d6463d828db77ae4b0229/cc/output/renderer_capabilities_impl.cc
[modify] https://crrev.com/4d0dd80db68c7aa1a43d6463d828db77ae4b0229/cc/output/renderer_capabilities_impl.h
[modify] https://crrev.com/4d0dd80db68c7aa1a43d6463d828db77ae4b0229/cc/output/software_renderer.cc
[modify] https://crrev.com/4d0dd80db68c7aa1a43d6463d828db77ae4b0229/cc/trees/layer_tree_host.cc
[modify] https://crrev.com/4d0dd80db68c7aa1a43d6463d828db77ae4b0229/cc/trees/layer_tree_host.h
[modify] https://crrev.com/4d0dd80db68c7aa1a43d6463d828db77ae4b0229/components/test_runner/test_plugin.cc
[modify] https://crrev.com/4d0dd80db68c7aa1a43d6463d828db77ae4b0229/components/test_runner/test_plugin.h
[modify] https://crrev.com/4d0dd80db68c7aa1a43d6463d828db77ae4b0229/content/browser/compositor/reflector_impl_unittest.cc
[modify] https://crrev.com/4d0dd80db68c7aa1a43d6463d828db77ae4b0229/content/renderer/pepper/pepper_plugin_instance_impl.cc
[modify] https://crrev.com/4d0dd80db68c7aa1a43d6463d828db77ae4b0229/content/renderer/pepper/pepper_plugin_instance_impl.h
[modify] https://crrev.com/4d0dd80db68c7aa1a43d6463d828db77ae4b0229/third_party/WebKit/Source/platform/graphics/Canvas2DLayerBridge.cpp
[modify] https://crrev.com/4d0dd80db68c7aa1a43d6463d828db77ae4b0229/third_party/WebKit/Source/platform/graphics/Canvas2DLayerBridge.h
[modify] https://crrev.com/4d0dd80db68c7aa1a43d6463d828db77ae4b0229/third_party/WebKit/Source/platform/graphics/Canvas2DLayerBridgeTest.cpp
[modify] https://crrev.com/4d0dd80db68c7aa1a43d6463d828db77ae4b0229/third_party/WebKit/Source/platform/graphics/gpu/DrawingBuffer.cpp
[modify] https://crrev.com/4d0dd80db68c7aa1a43d6463d828db77ae4b0229/third_party/WebKit/Source/platform/graphics/gpu/DrawingBuffer.h
[modify] https://crrev.com/4d0dd80db68c7aa1a43d6463d828db77ae4b0229/third_party/WebKit/Source/platform/graphics/gpu/DrawingBufferTest.cpp
[modify] https://crrev.com/4d0dd80db68c7aa1a43d6463d828db77ae4b0229/ui/compositor/layer.cc
[modify] https://crrev.com/4d0dd80db68c7aa1a43d6463d828db77ae4b0229/ui/compositor/layer.h

Project Member

Comment 43 by bugdroid1@chromium.org, Aug 24 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/941e52edd1522f7c3935aa4f4d763c43578b4944

commit 941e52edd1522f7c3935aa4f4d763c43578b4944
Author: danakj <danakj@chromium.org>
Date: Wed Aug 24 23:50:23 2016

Move scaling of ui resources for scrollbars to the time of upload

Instead of trying to figure out what the max texture size is on the
main thread, and scale raster to meet that, just raster freely. Then
when uploading the UIResource to a texture, we can easily tell what
the max texture size is, and if the UIResource is too large, scale it
down to fit in a texture.

R=enne
BUG=606056
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel
NOTRY=true

Review-Url: https://codereview.chromium.org/2276633003
Cr-Commit-Position: refs/heads/master@{#414202}

[modify] https://crrev.com/941e52edd1522f7c3935aa4f4d763c43578b4944/cc/layers/painted_scrollbar_layer.cc
[modify] https://crrev.com/941e52edd1522f7c3935aa4f4d763c43578b4944/cc/layers/painted_scrollbar_layer.h
[modify] https://crrev.com/941e52edd1522f7c3935aa4f4d763c43578b4944/cc/layers/scrollbar_layer_unittest.cc
[modify] https://crrev.com/941e52edd1522f7c3935aa4f4d763c43578b4944/cc/resources/ui_resource_client.h
[modify] https://crrev.com/941e52edd1522f7c3935aa4f4d763c43578b4944/cc/test/data/spiral_64_scale.png
[modify] https://crrev.com/941e52edd1522f7c3935aa4f4d763c43578b4944/cc/test/fake_ui_resource_layer_tree_host_impl.cc
[modify] https://crrev.com/941e52edd1522f7c3935aa4f4d763c43578b4944/cc/trees/layer_tree_host_impl.cc
[modify] https://crrev.com/941e52edd1522f7c3935aa4f4d763c43578b4944/cc/trees/layer_tree_host_impl.h

Project Member

Comment 44 by bugdroid1@chromium.org, Aug 25 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/6484c37f7b2cfcaed90cc8a37677c670a75be023

commit 6484c37f7b2cfcaed90cc8a37677c670a75be023
Author: danakj <danakj@chromium.org>
Date: Thu Aug 25 00:14:47 2016

cc: Delete all the RendererCapabilities.

The one left that gets used is max_texture_size, for scrollbars. Since
painted scrollbars only happen on desktop, and we just make them blurry
if they exceed the max size, we just hardcode a limit of 2048 which
should be supported on any desktop device (it's guaranteed by DirectX9)
and we're fine with scrollbars becoming less than pixel-perfect if you
pinch zoom in and they become larger than max-texture-size anyhow.

Everything else is unused or already deleted, so kill the structures
and the thread/ipc messages related to them.

R=enne
BUG=606056
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel

Review-Url: https://codereview.chromium.org/2267263002
Cr-Commit-Position: refs/heads/master@{#414212}

[modify] https://crrev.com/6484c37f7b2cfcaed90cc8a37677c670a75be023/cc/BUILD.gn
[modify] https://crrev.com/6484c37f7b2cfcaed90cc8a37677c670a75be023/cc/layers/heads_up_display_layer.cc
[modify] https://crrev.com/6484c37f7b2cfcaed90cc8a37677c670a75be023/cc/layers/heads_up_display_layer_impl.cc
[modify] https://crrev.com/6484c37f7b2cfcaed90cc8a37677c670a75be023/cc/layers/painted_scrollbar_layer_unittest.cc
[modify] https://crrev.com/6484c37f7b2cfcaed90cc8a37677c670a75be023/cc/layers/picture_layer_impl_unittest.cc
[modify] https://crrev.com/6484c37f7b2cfcaed90cc8a37677c670a75be023/cc/output/delegating_renderer.cc
[modify] https://crrev.com/6484c37f7b2cfcaed90cc8a37677c670a75be023/cc/output/delegating_renderer.h
[modify] https://crrev.com/6484c37f7b2cfcaed90cc8a37677c670a75be023/cc/output/direct_renderer.h
[modify] https://crrev.com/6484c37f7b2cfcaed90cc8a37677c670a75be023/cc/output/gl_renderer.cc
[modify] https://crrev.com/6484c37f7b2cfcaed90cc8a37677c670a75be023/cc/output/gl_renderer.h
[delete] https://crrev.com/3b3379eceba787068c53d37c0f1466f2c271d336/cc/output/renderer_capabilities.cc
[delete] https://crrev.com/3b3379eceba787068c53d37c0f1466f2c271d336/cc/output/renderer_capabilities.h
[delete] https://crrev.com/3b3379eceba787068c53d37c0f1466f2c271d336/cc/output/renderer_capabilities_impl.cc
[delete] https://crrev.com/3b3379eceba787068c53d37c0f1466f2c271d336/cc/output/renderer_capabilities_impl.h
[modify] https://crrev.com/6484c37f7b2cfcaed90cc8a37677c670a75be023/cc/output/software_renderer.cc
[modify] https://crrev.com/6484c37f7b2cfcaed90cc8a37677c670a75be023/cc/output/software_renderer.h
[modify] https://crrev.com/6484c37f7b2cfcaed90cc8a37677c670a75be023/cc/output/vulkan_renderer.cc
[modify] https://crrev.com/6484c37f7b2cfcaed90cc8a37677c670a75be023/cc/output/vulkan_renderer.h
[modify] https://crrev.com/6484c37f7b2cfcaed90cc8a37677c670a75be023/cc/test/fake_channel_impl.h
[modify] https://crrev.com/6484c37f7b2cfcaed90cc8a37677c670a75be023/cc/test/fake_layer_tree_host.cc
[modify] https://crrev.com/6484c37f7b2cfcaed90cc8a37677c670a75be023/cc/test/fake_layer_tree_host.h
[modify] https://crrev.com/6484c37f7b2cfcaed90cc8a37677c670a75be023/cc/test/fake_layer_tree_host_impl_client.h
[modify] https://crrev.com/6484c37f7b2cfcaed90cc8a37677c670a75be023/cc/test/fake_proxy.cc
[modify] https://crrev.com/6484c37f7b2cfcaed90cc8a37677c670a75be023/cc/test/fake_proxy.h
[modify] https://crrev.com/6484c37f7b2cfcaed90cc8a37677c670a75be023/cc/trees/channel_impl.h
[modify] https://crrev.com/6484c37f7b2cfcaed90cc8a37677c670a75be023/cc/trees/layer_tree_host.cc
[modify] https://crrev.com/6484c37f7b2cfcaed90cc8a37677c670a75be023/cc/trees/layer_tree_host.h
[modify] https://crrev.com/6484c37f7b2cfcaed90cc8a37677c670a75be023/cc/trees/layer_tree_host_impl.cc
[modify] https://crrev.com/6484c37f7b2cfcaed90cc8a37677c670a75be023/cc/trees/layer_tree_host_impl.h
[modify] https://crrev.com/6484c37f7b2cfcaed90cc8a37677c670a75be023/cc/trees/layer_tree_host_impl_unittest.cc
[modify] https://crrev.com/6484c37f7b2cfcaed90cc8a37677c670a75be023/cc/trees/layer_tree_impl.cc
[modify] https://crrev.com/6484c37f7b2cfcaed90cc8a37677c670a75be023/cc/trees/layer_tree_impl.h
[modify] https://crrev.com/6484c37f7b2cfcaed90cc8a37677c670a75be023/cc/trees/proxy.h
[modify] https://crrev.com/6484c37f7b2cfcaed90cc8a37677c670a75be023/cc/trees/proxy_impl.cc
[modify] https://crrev.com/6484c37f7b2cfcaed90cc8a37677c670a75be023/cc/trees/proxy_impl.h
[modify] https://crrev.com/6484c37f7b2cfcaed90cc8a37677c670a75be023/cc/trees/proxy_main.cc
[modify] https://crrev.com/6484c37f7b2cfcaed90cc8a37677c670a75be023/cc/trees/proxy_main.h
[modify] https://crrev.com/6484c37f7b2cfcaed90cc8a37677c670a75be023/cc/trees/remote_channel_impl.cc
[modify] https://crrev.com/6484c37f7b2cfcaed90cc8a37677c670a75be023/cc/trees/remote_channel_impl.h
[modify] https://crrev.com/6484c37f7b2cfcaed90cc8a37677c670a75be023/cc/trees/single_thread_proxy.cc
[modify] https://crrev.com/6484c37f7b2cfcaed90cc8a37677c670a75be023/cc/trees/single_thread_proxy.h
[modify] https://crrev.com/6484c37f7b2cfcaed90cc8a37677c670a75be023/cc/trees/threaded_channel.cc
[modify] https://crrev.com/6484c37f7b2cfcaed90cc8a37677c670a75be023/cc/trees/threaded_channel.h

Project Member

Comment 45 by bugdroid1@chromium.org, Aug 25 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/706757873f077fcf245c8e4054a5dfd8424d5ed2

commit 706757873f077fcf245c8e4054a5dfd8424d5ed2
Author: johnme <johnme@chromium.org>
Date: Thu Aug 25 11:08:17 2016

Revert of Move scaling of ui resources for scrollbars to the time of upload (patchset #6 id:100001 of https://codereview.chromium.org/2276633003/ )

Reason for revert:
Sorry, seems to have caused LayerTreeHostScrollbarsPixelTest.HugeTransformScale to fail on Mac10.10 Tests,  Mac10.11 Tests, Win 7 Tests x64 (1), Win10 Tests x64, Mac10.9 Tests and Linux Tests, with failures like:

[8034:1287:0825/033725:3059591139598:ERROR:pixel_comparator.cc(50)] Number of pixel with an error: 672
[8034:1287:0825/033725:3059591187709:ERROR:pixel_comparator.cc(51)] Error Bounding Box : 0,304 368x66
[8034:1287:0825/033725:3059610880597:ERROR:pixel_test_utils.cc(79)] Pixels do not match!
[8034:1287:0825/033725:3059610905829:ERROR:pixel_test_utils.cc(80)] Actual: data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAZAAAAGQCAYAAACAvzbMAAAF4ElEQVR4nO3ZQY1CQRRFwccEUWhhgQEMYAED7FGDKtJsxsCcTYdMVQt4d3eS/w9rrTUAX+g+97nNbfeMbS5zmec8t93/2XYZgK8mIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAcnzMY/cGgOQ1r90T/rXjda67NwDwhXzCAiAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREACS43nOuzcAEJzmtPX+4b3ea+sCAJLD79t2f60lIAD8mX8gACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJB9NHxfMgTV5VwAAAABJRU5ErkJggg==
[8034:1287:0825/033725:3059610929427:ERROR:pixel_test_utils.cc(81)] Expected: data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAZAAAAGQCAYAAACAvzbMAAAF4klEQVR4nO3ZQY1CQRRFwfcJotDCYhQgAAsIQABqMEXSo2HOpkOmysC7u5N0H2utNQBf6DGPuc9994xtfuZnXvPadv+07TIAX01AAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIDk/Jzn7g0AyXveuyf8a+fb3HZvAOALecICIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQAJLzda67NwAQXOay9f7xWZ+1dQEAyWlOc8yx7f6x1hIQAP7MHwgAiYAAkAgIAImAAJAICACJgACQCAgAiYAAkAgIAImAAJAICACJgACQCAgAiYAAkAgIAImAAJAICACJgACQCAgAiYAAkAgIAImAAJAICACJgACQCAgAiYAAkAgIAImAAJAICADJLzUdF8xyVTjQAAAAAElFTkSuQmCC
../../cc/test/layer_tree_pixel_test.cc:124: Failure
Value of: MatchesPNGFile(*result_bitmap_, ref_file_path, *pixel_comparator_)
  Actual: false
Expected: true

Original issue's description:
> Move scaling of ui resources for scrollbars to the time of upload
>
> Instead of trying to figure out what the max texture size is on the
> main thread, and scale raster to meet that, just raster freely. Then
> when uploading the UIResource to a texture, we can easily tell what
> the max texture size is, and if the UIResource is too large, scale it
> down to fit in a texture.
>
> R=enne
> BUG=606056
> CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel
> NOTRY=true
>
> Committed: https://crrev.com/941e52edd1522f7c3935aa4f4d763c43578b4944
> Cr-Commit-Position: refs/heads/master@{#414202}

TBR=enne@chromium.org,danakj@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=606056

Review-Url: https://codereview.chromium.org/2278083002
Cr-Commit-Position: refs/heads/master@{#414391}

[modify] https://crrev.com/706757873f077fcf245c8e4054a5dfd8424d5ed2/cc/layers/painted_scrollbar_layer.cc
[modify] https://crrev.com/706757873f077fcf245c8e4054a5dfd8424d5ed2/cc/layers/painted_scrollbar_layer.h
[modify] https://crrev.com/706757873f077fcf245c8e4054a5dfd8424d5ed2/cc/layers/scrollbar_layer_unittest.cc
[modify] https://crrev.com/706757873f077fcf245c8e4054a5dfd8424d5ed2/cc/resources/ui_resource_client.h
[modify] https://crrev.com/706757873f077fcf245c8e4054a5dfd8424d5ed2/cc/test/data/spiral_64_scale.png
[modify] https://crrev.com/706757873f077fcf245c8e4054a5dfd8424d5ed2/cc/test/fake_ui_resource_layer_tree_host_impl.cc
[modify] https://crrev.com/706757873f077fcf245c8e4054a5dfd8424d5ed2/cc/trees/layer_tree_host_impl.cc
[modify] https://crrev.com/706757873f077fcf245c8e4054a5dfd8424d5ed2/cc/trees/layer_tree_host_impl.h

Project Member

Comment 46 by bugdroid1@chromium.org, Aug 25 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/f56ab5d893d9c1ff735136d8df7d738b16634a7a

commit f56ab5d893d9c1ff735136d8df7d738b16634a7a
Author: johnme <johnme@chromium.org>
Date: Thu Aug 25 11:27:30 2016

Reland of Move scaling of ui resources for scrollbars to the time of upload (patchset #1 id:1 of https://codereview.chromium.org/2278083002/ )

Reason for revert:
Reverting this broke compile:

cc/layers/painted_scrollbar_layer.cc:83:29: error: no member named 'GetRendererCapabilities' in 'cc::LayerTreeHost'
  return layer_tree_host()->GetRendererCapabilities().max_texture_size;
         ~~~~~~~~~~~~~~~~~  ^

Original issue's description:
> Revert of Move scaling of ui resources for scrollbars to the time of upload (patchset #6 id:100001 of https://codereview.chromium.org/2276633003/ )
>
> Reason for revert:
> Sorry, seems to have caused LayerTreeHostScrollbarsPixelTest.HugeTransformScale to fail on Mac10.10 Tests,  Mac10.11 Tests, Win 7 Tests x64 (1), Win10 Tests x64, Mac10.9 Tests and Linux Tests, with failures like:
>
> [8034:1287:0825/033725:3059591139598:ERROR:pixel_comparator.cc(50)] Number of pixel with an error: 672
> [8034:1287:0825/033725:3059591187709:ERROR:pixel_comparator.cc(51)] Error Bounding Box : 0,304 368x66
> [8034:1287:0825/033725:3059610880597:ERROR:pixel_test_utils.cc(79)] Pixels do not match!
> [8034:1287:0825/033725:3059610905829:ERROR:pixel_test_utils.cc(80)] Actual: data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAZAAAAGQCAYAAACAvzbMAAAF4ElEQVR4nO3ZQY1CQRRFwccEUWhhgQEMYAED7FGDKtJsxsCcTYdMVQt4d3eS/w9rrTUAX+g+97nNbfeMbS5zmec8t93/2XYZgK8mIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAcnzMY/cGgOQ1r90T/rXjda67NwDwhXzCAiAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREACS43nOuzcAEJzmtPX+4b3ea+sCAJLD79t2f60lIAD8mX8gACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJB9NHxfMgTV5VwAAAABJRU5ErkJggg==
> [8034:1287:0825/033725:3059610929427:ERROR:pixel_test_utils.cc(81)] Expected: data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAZAAAAGQCAYAAACAvzbMAAAF4klEQVR4nO3ZQY1CQRRFwfcJotDCYhQgAAsIQABqMEXSo2HOpkOmysC7u5N0H2utNQBf6DGPuc9994xtfuZnXvPadv+07TIAX01AAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIDk/Jzn7g0AyXveuyf8a+fb3HZvAOALecICIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQAJLzda67NwAQXOay9f7xWZ+1dQEAyWlOc8yx7f6x1hIQAP7MHwgAiYAAkAgIAImAAJAICACJgACQCAgAiYAAkAgIAImAAJAICACJgACQCAgAiYAAkAgIAImAAJAICACJgACQCAgAiYAAkAgIAImAAJAICACJgACQCAgAiYAAkAgIAImAAJAICADJLzUdF8xyVTjQAAAAAElFTkSuQmCC
> ../../cc/test/layer_tree_pixel_test.cc:124: Failure
> Value of: MatchesPNGFile(*result_bitmap_, ref_file_path, *pixel_comparator_)
>   Actual: false
> Expected: true
>
> Original issue's description:
> > Move scaling of ui resources for scrollbars to the time of upload
> >
> > Instead of trying to figure out what the max texture size is on the
> > main thread, and scale raster to meet that, just raster freely. Then
> > when uploading the UIResource to a texture, we can easily tell what
> > the max texture size is, and if the UIResource is too large, scale it
> > down to fit in a texture.
> >
> > R=enne
> > BUG=606056
> > CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel
> > NOTRY=true
> >
> > Committed: https://crrev.com/941e52edd1522f7c3935aa4f4d763c43578b4944
> > Cr-Commit-Position: refs/heads/master@{#414202}
>
> TBR=enne@chromium.org,danakj@chromium.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=606056
>
> Committed: https://crrev.com/706757873f077fcf245c8e4054a5dfd8424d5ed2
> Cr-Commit-Position: refs/heads/master@{#414391}

TBR=enne@chromium.org,danakj@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=606056

Review-Url: https://codereview.chromium.org/2280663002
Cr-Commit-Position: refs/heads/master@{#414394}

[modify] https://crrev.com/f56ab5d893d9c1ff735136d8df7d738b16634a7a/cc/layers/painted_scrollbar_layer.cc
[modify] https://crrev.com/f56ab5d893d9c1ff735136d8df7d738b16634a7a/cc/layers/painted_scrollbar_layer.h
[modify] https://crrev.com/f56ab5d893d9c1ff735136d8df7d738b16634a7a/cc/layers/scrollbar_layer_unittest.cc
[modify] https://crrev.com/f56ab5d893d9c1ff735136d8df7d738b16634a7a/cc/resources/ui_resource_client.h
[modify] https://crrev.com/f56ab5d893d9c1ff735136d8df7d738b16634a7a/cc/test/data/spiral_64_scale.png
[modify] https://crrev.com/f56ab5d893d9c1ff735136d8df7d738b16634a7a/cc/test/fake_ui_resource_layer_tree_host_impl.cc
[modify] https://crrev.com/f56ab5d893d9c1ff735136d8df7d738b16634a7a/cc/trees/layer_tree_host_impl.cc
[modify] https://crrev.com/f56ab5d893d9c1ff735136d8df7d738b16634a7a/cc/trees/layer_tree_host_impl.h

Project Member

Comment 47 by bugdroid1@chromium.org, Aug 25 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/c2673922e67bcc2f32cc3ead89338672d62d952b

commit c2673922e67bcc2f32cc3ead89338672d62d952b
Author: johnme <johnme@chromium.org>
Date: Thu Aug 25 12:37:45 2016

Revert of cc: Delete all the RendererCapabilities. (patchset #2 id:20001 of https://codereview.chromium.org/2267263002/ )

Reason for revert:
This patch prevents reverting https://codereview.chromium.org/2280663002

Original issue's description:
> cc: Delete all the RendererCapabilities.
>
> The one left that gets used is max_texture_size, for scrollbars. Since
> painted scrollbars only happen on desktop, and we just make them blurry
> if they exceed the max size, we just hardcode a limit of 2048 which
> should be supported on any desktop device (it's guaranteed by DirectX9)
> and we're fine with scrollbars becoming less than pixel-perfect if you
> pinch zoom in and they become larger than max-texture-size anyhow.
>
> Everything else is unused or already deleted, so kill the structures
> and the thread/ipc messages related to them.
>
> R=enne
> BUG=606056
> CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel
>
> Committed: https://crrev.com/6484c37f7b2cfcaed90cc8a37677c670a75be023
> Cr-Commit-Position: refs/heads/master@{#414212}

TBR=enne@chromium.org,danakj@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=606056

Review-Url: https://codereview.chromium.org/2282433002
Cr-Commit-Position: refs/heads/master@{#414408}

[modify] https://crrev.com/c2673922e67bcc2f32cc3ead89338672d62d952b/cc/BUILD.gn
[modify] https://crrev.com/c2673922e67bcc2f32cc3ead89338672d62d952b/cc/layers/heads_up_display_layer.cc
[modify] https://crrev.com/c2673922e67bcc2f32cc3ead89338672d62d952b/cc/layers/heads_up_display_layer_impl.cc
[modify] https://crrev.com/c2673922e67bcc2f32cc3ead89338672d62d952b/cc/layers/painted_scrollbar_layer_unittest.cc
[modify] https://crrev.com/c2673922e67bcc2f32cc3ead89338672d62d952b/cc/layers/picture_layer_impl_unittest.cc
[modify] https://crrev.com/c2673922e67bcc2f32cc3ead89338672d62d952b/cc/output/delegating_renderer.cc
[modify] https://crrev.com/c2673922e67bcc2f32cc3ead89338672d62d952b/cc/output/delegating_renderer.h
[modify] https://crrev.com/c2673922e67bcc2f32cc3ead89338672d62d952b/cc/output/direct_renderer.h
[modify] https://crrev.com/c2673922e67bcc2f32cc3ead89338672d62d952b/cc/output/gl_renderer.cc
[modify] https://crrev.com/c2673922e67bcc2f32cc3ead89338672d62d952b/cc/output/gl_renderer.h
[add] https://crrev.com/c2673922e67bcc2f32cc3ead89338672d62d952b/cc/output/renderer_capabilities.cc
[add] https://crrev.com/c2673922e67bcc2f32cc3ead89338672d62d952b/cc/output/renderer_capabilities.h
[add] https://crrev.com/c2673922e67bcc2f32cc3ead89338672d62d952b/cc/output/renderer_capabilities_impl.cc
[add] https://crrev.com/c2673922e67bcc2f32cc3ead89338672d62d952b/cc/output/renderer_capabilities_impl.h
[modify] https://crrev.com/c2673922e67bcc2f32cc3ead89338672d62d952b/cc/output/software_renderer.cc
[modify] https://crrev.com/c2673922e67bcc2f32cc3ead89338672d62d952b/cc/output/software_renderer.h
[modify] https://crrev.com/c2673922e67bcc2f32cc3ead89338672d62d952b/cc/output/vulkan_renderer.cc
[modify] https://crrev.com/c2673922e67bcc2f32cc3ead89338672d62d952b/cc/output/vulkan_renderer.h
[modify] https://crrev.com/c2673922e67bcc2f32cc3ead89338672d62d952b/cc/test/fake_channel_impl.h
[modify] https://crrev.com/c2673922e67bcc2f32cc3ead89338672d62d952b/cc/test/fake_layer_tree_host.cc
[modify] https://crrev.com/c2673922e67bcc2f32cc3ead89338672d62d952b/cc/test/fake_layer_tree_host.h
[modify] https://crrev.com/c2673922e67bcc2f32cc3ead89338672d62d952b/cc/test/fake_layer_tree_host_impl_client.h
[modify] https://crrev.com/c2673922e67bcc2f32cc3ead89338672d62d952b/cc/test/fake_proxy.cc
[modify] https://crrev.com/c2673922e67bcc2f32cc3ead89338672d62d952b/cc/test/fake_proxy.h
[modify] https://crrev.com/c2673922e67bcc2f32cc3ead89338672d62d952b/cc/trees/channel_impl.h
[modify] https://crrev.com/c2673922e67bcc2f32cc3ead89338672d62d952b/cc/trees/layer_tree_host.cc
[modify] https://crrev.com/c2673922e67bcc2f32cc3ead89338672d62d952b/cc/trees/layer_tree_host.h
[modify] https://crrev.com/c2673922e67bcc2f32cc3ead89338672d62d952b/cc/trees/layer_tree_host_impl.cc
[modify] https://crrev.com/c2673922e67bcc2f32cc3ead89338672d62d952b/cc/trees/layer_tree_host_impl.h
[modify] https://crrev.com/c2673922e67bcc2f32cc3ead89338672d62d952b/cc/trees/layer_tree_host_impl_unittest.cc
[modify] https://crrev.com/c2673922e67bcc2f32cc3ead89338672d62d952b/cc/trees/layer_tree_impl.cc
[modify] https://crrev.com/c2673922e67bcc2f32cc3ead89338672d62d952b/cc/trees/layer_tree_impl.h
[modify] https://crrev.com/c2673922e67bcc2f32cc3ead89338672d62d952b/cc/trees/proxy.h
[modify] https://crrev.com/c2673922e67bcc2f32cc3ead89338672d62d952b/cc/trees/proxy_impl.cc
[modify] https://crrev.com/c2673922e67bcc2f32cc3ead89338672d62d952b/cc/trees/proxy_impl.h
[modify] https://crrev.com/c2673922e67bcc2f32cc3ead89338672d62d952b/cc/trees/proxy_main.cc
[modify] https://crrev.com/c2673922e67bcc2f32cc3ead89338672d62d952b/cc/trees/proxy_main.h
[modify] https://crrev.com/c2673922e67bcc2f32cc3ead89338672d62d952b/cc/trees/remote_channel_impl.cc
[modify] https://crrev.com/c2673922e67bcc2f32cc3ead89338672d62d952b/cc/trees/remote_channel_impl.h
[modify] https://crrev.com/c2673922e67bcc2f32cc3ead89338672d62d952b/cc/trees/single_thread_proxy.cc
[modify] https://crrev.com/c2673922e67bcc2f32cc3ead89338672d62d952b/cc/trees/single_thread_proxy.h
[modify] https://crrev.com/c2673922e67bcc2f32cc3ead89338672d62d952b/cc/trees/threaded_channel.cc
[modify] https://crrev.com/c2673922e67bcc2f32cc3ead89338672d62d952b/cc/trees/threaded_channel.h

Project Member

Comment 48 by bugdroid1@chromium.org, Aug 25 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/4e32d1b85ab14a1e8ed25250345267c0c7364e38

commit 4e32d1b85ab14a1e8ed25250345267c0c7364e38
Author: johnme <johnme@chromium.org>
Date: Thu Aug 25 13:00:15 2016

Revert of Move scaling of ui resources for scrollbars to the time of upload (patchset #1 id:1 of https://codereview.chromium.org/2280663002/ )

Reason for revert:
Sorry about the spam. Re-reverting now that https://codereview.chromium.org/2282433002 which depends on this patch has been reverted.

Original issue's description:
> Reland of Move scaling of ui resources for scrollbars to the time of upload (patchset #1 id:1 of https://codereview.chromium.org/2278083002/ )
>
> Reason for revert:
> Reverting this broke compile:
>
> cc/layers/painted_scrollbar_layer.cc:83:29: error: no member named 'GetRendererCapabilities' in 'cc::LayerTreeHost'
>   return layer_tree_host()->GetRendererCapabilities().max_texture_size;
>          ~~~~~~~~~~~~~~~~~  ^
>
> Original issue's description:
> > Revert of Move scaling of ui resources for scrollbars to the time of upload (patchset #6 id:100001 of https://codereview.chromium.org/2276633003/ )
> >
> > Reason for revert:
> > Sorry, seems to have caused LayerTreeHostScrollbarsPixelTest.HugeTransformScale to fail on Mac10.10 Tests,  Mac10.11 Tests, Win 7 Tests x64 (1), Win10 Tests x64, Mac10.9 Tests and Linux Tests, with failures like:
> >
> > [8034:1287:0825/033725:3059591139598:ERROR:pixel_comparator.cc(50)] Number of pixel with an error: 672
> > [8034:1287:0825/033725:3059591187709:ERROR:pixel_comparator.cc(51)] Error Bounding Box : 0,304 368x66
> > [8034:1287:0825/033725:3059610880597:ERROR:pixel_test_utils.cc(79)] Pixels do not match!
> > [8034:1287:0825/033725:3059610905829:ERROR:pixel_test_utils.cc(80)] Actual: data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAZAAAAGQCAYAAACAvzbMAAAF4ElEQVR4nO3ZQY1CQRRFwccEUWhhgQEMYAED7FGDKtJsxsCcTYdMVQt4d3eS/w9rrTUAX+g+97nNbfeMbS5zmec8t93/2XYZgK8mIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAcnzMY/cGgOQ1r90T/rXjda67NwDwhXzCAiAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREACS43nOuzcAEJzmtPX+4b3ea+sCAJLD79t2f60lIAD8mX8gACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJAICQCIgACQCAkAiIAAkAgJAIiAAJB9NHxfMgTV5VwAAAABJRU5ErkJggg==
> > [8034:1287:0825/033725:3059610929427:ERROR:pixel_test_utils.cc(81)] Expected: data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAZAAAAGQCAYAAACAvzbMAAAF4klEQVR4nO3ZQY1CQRRFwfcJotDCYhQgAAsIQABqMEXSo2HOpkOmysC7u5N0H2utNQBf6DGPuc9994xtfuZnXvPadv+07TIAX01AAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIDk/Jzn7g0AyXveuyf8a+fb3HZvAOALecICIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQABIBASAREAASAQEgERAAEgEBIBEQAJLzda67NwAQXOay9f7xWZ+1dQEAyWlOc8yx7f6x1hIQAP7MHwgAiYAAkAgIAImAAJAICACJgACQCAgAiYAAkAgIAImAAJAICACJgACQCAgAiYAAkAgIAImAAJAICACJgACQCAgAiYAAkAgIAImAAJAICACJgACQCAgAiYAAkAgIAImAAJAICADJLzUdF8xyVTjQAAAAAElFTkSuQmCC
> > ../../cc/test/layer_tree_pixel_test.cc:124: Failure
> > Value of: MatchesPNGFile(*result_bitmap_, ref_file_path, *pixel_comparator_)
> >   Actual: false
> > Expected: true
> >
> > Original issue's description:
> > > Move scaling of ui resources for scrollbars to the time of upload
> > >
> > > Instead of trying to figure out what the max texture size is on the
> > > main thread, and scale raster to meet that, just raster freely. Then
> > > when uploading the UIResource to a texture, we can easily tell what
> > > the max texture size is, and if the UIResource is too large, scale it
> > > down to fit in a texture.
> > >
> > > R=enne
> > > BUG=606056
> > > CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel
> > > NOTRY=true
> > >
> > > Committed: https://crrev.com/941e52edd1522f7c3935aa4f4d763c43578b4944
> > > Cr-Commit-Position: refs/heads/master@{#414202}
> >
> > TBR=enne@chromium.org,danakj@chromium.org
> > # Skipping CQ checks because original CL landed less than 1 days ago.
> > NOPRESUBMIT=true
> > NOTREECHECKS=true
> > NOTRY=true
> > BUG=606056
> >
> > Committed: https://crrev.com/706757873f077fcf245c8e4054a5dfd8424d5ed2
> > Cr-Commit-Position: refs/heads/master@{#414391}
>
> TBR=enne@chromium.org,danakj@chromium.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=606056
>
> Committed: https://crrev.com/f56ab5d893d9c1ff735136d8df7d738b16634a7a
> Cr-Commit-Position: refs/heads/master@{#414394}

TBR=enne@chromium.org,danakj@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=606056

Review-Url: https://codereview.chromium.org/2282443002
Cr-Commit-Position: refs/heads/master@{#414411}

[modify] https://crrev.com/4e32d1b85ab14a1e8ed25250345267c0c7364e38/cc/layers/painted_scrollbar_layer.cc
[modify] https://crrev.com/4e32d1b85ab14a1e8ed25250345267c0c7364e38/cc/layers/painted_scrollbar_layer.h
[modify] https://crrev.com/4e32d1b85ab14a1e8ed25250345267c0c7364e38/cc/layers/scrollbar_layer_unittest.cc
[modify] https://crrev.com/4e32d1b85ab14a1e8ed25250345267c0c7364e38/cc/resources/ui_resource_client.h
[modify] https://crrev.com/4e32d1b85ab14a1e8ed25250345267c0c7364e38/cc/test/data/spiral_64_scale.png
[modify] https://crrev.com/4e32d1b85ab14a1e8ed25250345267c0c7364e38/cc/test/fake_ui_resource_layer_tree_host_impl.cc
[modify] https://crrev.com/4e32d1b85ab14a1e8ed25250345267c0c7364e38/cc/trees/layer_tree_host_impl.cc
[modify] https://crrev.com/4e32d1b85ab14a1e8ed25250345267c0c7364e38/cc/trees/layer_tree_host_impl.h

Project Member

Comment 49 by bugdroid1@chromium.org, Aug 25 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/cbd37e2ef2b8fa6292f5ea8cfb41df409e63cde5

commit cbd37e2ef2b8fa6292f5ea8cfb41df409e63cde5
Author: danakj <danakj@chromium.org>
Date: Thu Aug 25 21:49:10 2016

Move scaling of ui resources for scrollbars to the time of upload

Instead of trying to figure out what the max texture size is on the
main thread, and scale raster to meet that, just raster freely. Then
when uploading the UIResource to a texture, we can easily tell what
the max texture size is, and if the UIResource is too large, scale it
down to fit in a texture.

R=enne
BUG=606056
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel

Committed: https://crrev.com/941e52edd1522f7c3935aa4f4d763c43578b4944
Review-Url: https://codereview.chromium.org/2276633003
Cr-Original-Commit-Position: refs/heads/master@{#414202}
Cr-Commit-Position: refs/heads/master@{#414546}

[modify] https://crrev.com/cbd37e2ef2b8fa6292f5ea8cfb41df409e63cde5/cc/layers/painted_scrollbar_layer.cc
[modify] https://crrev.com/cbd37e2ef2b8fa6292f5ea8cfb41df409e63cde5/cc/layers/painted_scrollbar_layer.h
[modify] https://crrev.com/cbd37e2ef2b8fa6292f5ea8cfb41df409e63cde5/cc/layers/scrollbar_layer_unittest.cc
[modify] https://crrev.com/cbd37e2ef2b8fa6292f5ea8cfb41df409e63cde5/cc/resources/ui_resource_client.h
[modify] https://crrev.com/cbd37e2ef2b8fa6292f5ea8cfb41df409e63cde5/cc/test/data/spiral_64_scale.png
[modify] https://crrev.com/cbd37e2ef2b8fa6292f5ea8cfb41df409e63cde5/cc/test/fake_ui_resource_layer_tree_host_impl.cc
[modify] https://crrev.com/cbd37e2ef2b8fa6292f5ea8cfb41df409e63cde5/cc/trees/layer_tree_host_impl.cc
[modify] https://crrev.com/cbd37e2ef2b8fa6292f5ea8cfb41df409e63cde5/cc/trees/layer_tree_host_impl.h
[modify] https://crrev.com/cbd37e2ef2b8fa6292f5ea8cfb41df409e63cde5/cc/trees/layer_tree_host_pixeltest_scrollbars.cc

Project Member

Comment 50 by bugdroid1@chromium.org, Aug 25 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/8c93919a29947fc27190cdf00bd54de1bff14d84

commit 8c93919a29947fc27190cdf00bd54de1bff14d84
Author: danakj <danakj@chromium.org>
Date: Thu Aug 25 22:09:30 2016

cc: Delete all the RendererCapabilities.

The one left that gets used is max_texture_size, for scrollbars. Since
painted scrollbars only happen on desktop, and we just make them blurry
if they exceed the max size, we just hardcode a limit of 2048 which
should be supported on any desktop device (it's guaranteed by DirectX9)
and we're fine with scrollbars becoming less than pixel-perfect if you
pinch zoom in and they become larger than max-texture-size anyhow.

Everything else is unused or already deleted, so kill the structures
and the thread/ipc messages related to them.

R=enne
BUG=606056
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel

Committed: https://crrev.com/6484c37f7b2cfcaed90cc8a37677c670a75be023
Review-Url: https://codereview.chromium.org/2267263002
Cr-Original-Commit-Position: refs/heads/master@{#414212}
Cr-Commit-Position: refs/heads/master@{#414553}

[modify] https://crrev.com/8c93919a29947fc27190cdf00bd54de1bff14d84/cc/BUILD.gn
[modify] https://crrev.com/8c93919a29947fc27190cdf00bd54de1bff14d84/cc/layers/heads_up_display_layer.cc
[modify] https://crrev.com/8c93919a29947fc27190cdf00bd54de1bff14d84/cc/layers/heads_up_display_layer_impl.cc
[modify] https://crrev.com/8c93919a29947fc27190cdf00bd54de1bff14d84/cc/layers/painted_scrollbar_layer_unittest.cc
[modify] https://crrev.com/8c93919a29947fc27190cdf00bd54de1bff14d84/cc/layers/picture_layer_impl_unittest.cc
[modify] https://crrev.com/8c93919a29947fc27190cdf00bd54de1bff14d84/cc/output/delegating_renderer.cc
[modify] https://crrev.com/8c93919a29947fc27190cdf00bd54de1bff14d84/cc/output/delegating_renderer.h
[modify] https://crrev.com/8c93919a29947fc27190cdf00bd54de1bff14d84/cc/output/direct_renderer.h
[modify] https://crrev.com/8c93919a29947fc27190cdf00bd54de1bff14d84/cc/output/gl_renderer.cc
[modify] https://crrev.com/8c93919a29947fc27190cdf00bd54de1bff14d84/cc/output/gl_renderer.h
[delete] https://crrev.com/540ba6cbe242920544a1f43019e4f4a3c6f81bf8/cc/output/renderer_capabilities.cc
[delete] https://crrev.com/540ba6cbe242920544a1f43019e4f4a3c6f81bf8/cc/output/renderer_capabilities.h
[delete] https://crrev.com/540ba6cbe242920544a1f43019e4f4a3c6f81bf8/cc/output/renderer_capabilities_impl.cc
[delete] https://crrev.com/540ba6cbe242920544a1f43019e4f4a3c6f81bf8/cc/output/renderer_capabilities_impl.h
[modify] https://crrev.com/8c93919a29947fc27190cdf00bd54de1bff14d84/cc/output/software_renderer.cc
[modify] https://crrev.com/8c93919a29947fc27190cdf00bd54de1bff14d84/cc/output/software_renderer.h
[modify] https://crrev.com/8c93919a29947fc27190cdf00bd54de1bff14d84/cc/output/vulkan_renderer.cc
[modify] https://crrev.com/8c93919a29947fc27190cdf00bd54de1bff14d84/cc/output/vulkan_renderer.h
[modify] https://crrev.com/8c93919a29947fc27190cdf00bd54de1bff14d84/cc/test/fake_channel_impl.h
[modify] https://crrev.com/8c93919a29947fc27190cdf00bd54de1bff14d84/cc/test/fake_layer_tree_host.cc
[modify] https://crrev.com/8c93919a29947fc27190cdf00bd54de1bff14d84/cc/test/fake_layer_tree_host.h
[modify] https://crrev.com/8c93919a29947fc27190cdf00bd54de1bff14d84/cc/test/fake_layer_tree_host_impl_client.h
[modify] https://crrev.com/8c93919a29947fc27190cdf00bd54de1bff14d84/cc/test/fake_proxy.cc
[modify] https://crrev.com/8c93919a29947fc27190cdf00bd54de1bff14d84/cc/test/fake_proxy.h
[modify] https://crrev.com/8c93919a29947fc27190cdf00bd54de1bff14d84/cc/trees/channel_impl.h
[modify] https://crrev.com/8c93919a29947fc27190cdf00bd54de1bff14d84/cc/trees/layer_tree_host.cc
[modify] https://crrev.com/8c93919a29947fc27190cdf00bd54de1bff14d84/cc/trees/layer_tree_host.h
[modify] https://crrev.com/8c93919a29947fc27190cdf00bd54de1bff14d84/cc/trees/layer_tree_host_impl.cc
[modify] https://crrev.com/8c93919a29947fc27190cdf00bd54de1bff14d84/cc/trees/layer_tree_host_impl.h
[modify] https://crrev.com/8c93919a29947fc27190cdf00bd54de1bff14d84/cc/trees/layer_tree_host_impl_unittest.cc
[modify] https://crrev.com/8c93919a29947fc27190cdf00bd54de1bff14d84/cc/trees/layer_tree_impl.cc
[modify] https://crrev.com/8c93919a29947fc27190cdf00bd54de1bff14d84/cc/trees/layer_tree_impl.h
[modify] https://crrev.com/8c93919a29947fc27190cdf00bd54de1bff14d84/cc/trees/proxy.h
[modify] https://crrev.com/8c93919a29947fc27190cdf00bd54de1bff14d84/cc/trees/proxy_impl.cc
[modify] https://crrev.com/8c93919a29947fc27190cdf00bd54de1bff14d84/cc/trees/proxy_impl.h
[modify] https://crrev.com/8c93919a29947fc27190cdf00bd54de1bff14d84/cc/trees/proxy_main.cc
[modify] https://crrev.com/8c93919a29947fc27190cdf00bd54de1bff14d84/cc/trees/proxy_main.h
[modify] https://crrev.com/8c93919a29947fc27190cdf00bd54de1bff14d84/cc/trees/remote_channel_impl.cc
[modify] https://crrev.com/8c93919a29947fc27190cdf00bd54de1bff14d84/cc/trees/remote_channel_impl.h
[modify] https://crrev.com/8c93919a29947fc27190cdf00bd54de1bff14d84/cc/trees/single_thread_proxy.cc
[modify] https://crrev.com/8c93919a29947fc27190cdf00bd54de1bff14d84/cc/trees/single_thread_proxy.h
[modify] https://crrev.com/8c93919a29947fc27190cdf00bd54de1bff14d84/cc/trees/threaded_channel.cc
[modify] https://crrev.com/8c93919a29947fc27190cdf00bd54de1bff14d84/cc/trees/threaded_channel.h

Project Member

Comment 51 by bugdroid1@chromium.org, Aug 25 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/dbf30e19b59f63adc8fd0dafd2e245218bc8d798

commit dbf30e19b59f63adc8fd0dafd2e245218bc8d798
Author: danakj <danakj@chromium.org>
Date: Thu Aug 25 22:51:05 2016

cc: Fix pixeltest expectations for the waterfall.

The waterfall bots have different pixel output from skia scaling than
trybots or local results. Make the fuzzy expectations work for the
waterfall.

TBR=enne
BUG=606056,641056
NOTRY=true

Review-Url: https://codereview.chromium.org/2286493002
Cr-Commit-Position: refs/heads/master@{#414569}

[modify] https://crrev.com/dbf30e19b59f63adc8fd0dafd2e245218bc8d798/cc/trees/layer_tree_host_pixeltest_scrollbars.cc

Project Member

Comment 52 by bugdroid1@chromium.org, Aug 26 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/be9c59ee04d8297a3a8bc5c0ef8ecb843d3914be

commit be9c59ee04d8297a3a8bc5c0ef8ecb843d3914be
Author: danakj <danakj@chromium.org>
Date: Fri Aug 26 18:24:56 2016

cc: Get rid of LayerTreeHost::output_surface_lost_ state.

This was mostly tracked because while lost the main thread Renderer
capabilities would not be valid. However a few things have changed now:
1) No more renderer capabilities. So
2) We don't care if we main frame without an output surface.
3) We don't defer commits on the main thread so we wouldn't try to
start a frame on the main thread while the output surface is lost
anyways.

The only exception is SingleThreadProxy needs to know to request
and output surface when doing synchronous composite things. So it does
that itself now.

R=enne
BUG=606056
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel

Review-Url: https://codereview.chromium.org/2270573002
Cr-Commit-Position: refs/heads/master@{#414750}

[modify] https://crrev.com/be9c59ee04d8297a3a8bc5c0ef8ecb843d3914be/blimp/client/app/compositor/browser_compositor.cc
[modify] https://crrev.com/be9c59ee04d8297a3a8bc5c0ef8ecb843d3914be/cc/debug/micro_benchmark_controller_unittest.cc
[modify] https://crrev.com/be9c59ee04d8297a3a8bc5c0ef8ecb843d3914be/cc/layers/scrollbar_layer_unittest.cc
[modify] https://crrev.com/be9c59ee04d8297a3a8bc5c0ef8ecb843d3914be/cc/test/fake_layer_tree_host.h
[modify] https://crrev.com/be9c59ee04d8297a3a8bc5c0ef8ecb843d3914be/cc/test/layer_tree_test.cc
[modify] https://crrev.com/be9c59ee04d8297a3a8bc5c0ef8ecb843d3914be/cc/trees/layer_tree_host.cc
[modify] https://crrev.com/be9c59ee04d8297a3a8bc5c0ef8ecb843d3914be/cc/trees/layer_tree_host.h
[modify] https://crrev.com/be9c59ee04d8297a3a8bc5c0ef8ecb843d3914be/cc/trees/layer_tree_host_impl.cc
[modify] https://crrev.com/be9c59ee04d8297a3a8bc5c0ef8ecb843d3914be/cc/trees/layer_tree_host_unittest.cc
[modify] https://crrev.com/be9c59ee04d8297a3a8bc5c0ef8ecb843d3914be/cc/trees/layer_tree_host_unittest_context.cc
[modify] https://crrev.com/be9c59ee04d8297a3a8bc5c0ef8ecb843d3914be/cc/trees/proxy_main.cc
[modify] https://crrev.com/be9c59ee04d8297a3a8bc5c0ef8ecb843d3914be/cc/trees/single_thread_proxy.cc
[modify] https://crrev.com/be9c59ee04d8297a3a8bc5c0ef8ecb843d3914be/cc/trees/single_thread_proxy.h
[modify] https://crrev.com/be9c59ee04d8297a3a8bc5c0ef8ecb843d3914be/content/browser/renderer_host/compositor_impl_android.cc
[modify] https://crrev.com/be9c59ee04d8297a3a8bc5c0ef8ecb843d3914be/content/renderer/gpu/render_widget_compositor_unittest.cc
[modify] https://crrev.com/be9c59ee04d8297a3a8bc5c0ef8ecb843d3914be/ui/aura/BUILD.gn
[modify] https://crrev.com/be9c59ee04d8297a3a8bc5c0ef8ecb843d3914be/ui/aura/demo/DEPS
[modify] https://crrev.com/be9c59ee04d8297a3a8bc5c0ef8ecb843d3914be/ui/aura/demo/demo_main.cc
[modify] https://crrev.com/be9c59ee04d8297a3a8bc5c0ef8ecb843d3914be/ui/compositor/compositor.cc
[modify] https://crrev.com/be9c59ee04d8297a3a8bc5c0ef8ecb843d3914be/ui/compositor/compositor.h
[modify] https://crrev.com/be9c59ee04d8297a3a8bc5c0ef8ecb843d3914be/ui/compositor/compositor_unittest.cc
[modify] https://crrev.com/be9c59ee04d8297a3a8bc5c0ef8ecb843d3914be/ui/views/examples/BUILD.gn
[modify] https://crrev.com/be9c59ee04d8297a3a8bc5c0ef8ecb843d3914be/ui/views/examples/DEPS
[modify] https://crrev.com/be9c59ee04d8297a3a8bc5c0ef8ecb843d3914be/ui/views/examples/examples_main.cc
[modify] https://crrev.com/be9c59ee04d8297a3a8bc5c0ef8ecb843d3914be/ui/views/mus/surface_context_factory.cc
[modify] https://crrev.com/be9c59ee04d8297a3a8bc5c0ef8ecb843d3914be/ui/views/mus/surface_context_factory.h

Project Member

Comment 53 by bugdroid1@chromium.org, Aug 26 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/03fe53dc4730038b5d13613fcbad10fc9a204c54

commit 03fe53dc4730038b5d13613fcbad10fc9a204c54
Author: danakj <danakj@chromium.org>
Date: Fri Aug 26 21:18:02 2016

Avoid making the shared main thread context if we won't use it.

When deciding if HTMLCanvasElement should be accelerated we changed
the code to get the shared main thread context before making the
decision because it's part of the decision. However, for most of the
things we decide on (such as are-we-using-display-list-canvas) we
don't care about the context. We only care once we decide we do want
to use it, then verify it's not using swiftshader.

So, defer getting/creating the shared main thread context until we
know we want to accelerate, then just fail to accelerate if swiftshader.

To make this logic more clear, I split the createImageBufferSurface()
method into createAcceleratedImageBufferSurface() and
createSoftwareImageBufferSurface() which is used if the former
fails/returns null. There is less nesting now so hopefully that's nice.

With this the memory.blink_memory_mobile's TheVerge case goes from
6422Kb of gpu memory back down to 4324Kb.

R=junov@chromium.org, kbr@chromium.org
BUG=640811,606056

Review-Url: https://codereview.chromium.org/2280723003
Cr-Commit-Position: refs/heads/master@{#414806}

[modify] https://crrev.com/03fe53dc4730038b5d13613fcbad10fc9a204c54/third_party/WebKit/Source/core/html/HTMLCanvasElement.cpp
[modify] https://crrev.com/03fe53dc4730038b5d13613fcbad10fc9a204c54/third_party/WebKit/Source/core/html/HTMLCanvasElement.h

Project Member

Comment 54 by bugdroid1@chromium.org, Sep 1 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/0690d3ed9433a3257e8d5afe4ec624c06ff1bdbf

commit 0690d3ed9433a3257e8d5afe4ec624c06ff1bdbf
Author: lof84 <lof84@yandex-team.ru>
Date: Thu Sep 01 17:32:39 2016

cc: Delete fake_renderer_client

Delete forgotten file fake_renderer_client.cc

BUG=606056

R=enne,danakj

CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel

Review-Url: https://codereview.chromium.org/2299993002
Cr-Commit-Position: refs/heads/master@{#415986}

[delete] https://crrev.com/55cb1387798384b78903e1e5f7337427652c476e/cc/test/fake_renderer_client.cc

Project Member

Comment 55 by bugdroid1@chromium.org, Sep 1 2016

Labels: merge-merged-2840
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/29e2540ac9bf025bb174d55543b7596e550920cd

commit 29e2540ac9bf025bb174d55543b7596e550920cd
Author: danakj <danakj@chromium.org>
Date: Thu Sep 01 21:13:13 2016

Avoid making the shared main thread context if we won't use it.

When deciding if HTMLCanvasElement should be accelerated we changed
the code to get the shared main thread context before making the
decision because it's part of the decision. However, for most of the
things we decide on (such as are-we-using-display-list-canvas) we
don't care about the context. We only care once we decide we do want
to use it, then verify it's not using swiftshader.

So, defer getting/creating the shared main thread context until we
know we want to accelerate, then just fail to accelerate if swiftshader.

To make this logic more clear, I split the createImageBufferSurface()
method into createAcceleratedImageBufferSurface() and
createSoftwareImageBufferSurface() which is used if the former
fails/returns null. There is less nesting now so hopefully that's nice.

With this the memory.blink_memory_mobile's TheVerge case goes from
6422Kb of gpu memory back down to 4324Kb.

TBR=junov@chromium.org, kbr@chromium.org
BUG=640811,606056

Review-Url: https://codereview.chromium.org/2280723003
Cr-Commit-Position: refs/heads/master@{#414806}
(cherry picked from commit 03fe53dc4730038b5d13613fcbad10fc9a204c54)

Review URL: https://codereview.chromium.org/2303023002 .

Cr-Commit-Position: refs/branch-heads/2840@{#106}
Cr-Branched-From: 1ae106dbab4bddd85132d5b75c670794311f4c57-refs/heads/master@{#414607}

[modify] https://crrev.com/29e2540ac9bf025bb174d55543b7596e550920cd/third_party/WebKit/Source/core/html/HTMLCanvasElement.cpp
[modify] https://crrev.com/29e2540ac9bf025bb174d55543b7596e550920cd/third_party/WebKit/Source/core/html/HTMLCanvasElement.h

Project Member

Comment 56 by bugdroid1@chromium.org, Sep 7 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/097919e7138f21a14a577688752ea955c47b16fa

commit 097919e7138f21a14a577688752ea955c47b16fa
Author: danakj <danakj@chromium.org>
Date: Wed Sep 07 19:50:55 2016

cc: Toward merging DrawFrame and SwapBuffers in DelegatingRenderer.

This moves calls from the proxies that happen between
LayerTreeHostImpl's DrawLayers and SwapBuffers to happen after
SwapBuffers, and moves all code at the bottom of DrawLayers, which
is after DelegatingRenderer::DrawFrame to the bottom of SwapBuffers,
which makes it after DelegatingRenderer::SwapBuffers.

R=enne
BUG=606056
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel

Review-Url: https://codereview.chromium.org/2317493003
Cr-Commit-Position: refs/heads/master@{#417034}

[modify] https://crrev.com/097919e7138f21a14a577688752ea955c47b16fa/cc/output/delegating_renderer_unittest.cc
[modify] https://crrev.com/097919e7138f21a14a577688752ea955c47b16fa/cc/test/layer_tree_test.cc
[modify] https://crrev.com/097919e7138f21a14a577688752ea955c47b16fa/cc/trees/layer_tree_host_impl.cc
[modify] https://crrev.com/097919e7138f21a14a577688752ea955c47b16fa/cc/trees/layer_tree_host_impl.h
[modify] https://crrev.com/097919e7138f21a14a577688752ea955c47b16fa/cc/trees/layer_tree_host_unittest.cc
[modify] https://crrev.com/097919e7138f21a14a577688752ea955c47b16fa/cc/trees/proxy_impl.cc
[modify] https://crrev.com/097919e7138f21a14a577688752ea955c47b16fa/cc/trees/single_thread_proxy.cc

Project Member

Comment 57 by bugdroid1@chromium.org, Sep 7 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/aecfcfba7f2622ab3fa1691e939f76ca30a74f2d

commit aecfcfba7f2622ab3fa1691e939f76ca30a74f2d
Author: danakj <danakj@chromium.org>
Date: Wed Sep 07 22:33:18 2016

cc: Merge the DrawLayer()/DrawFrame() and SwapBuffers() methods.

This deletes the SwapBuffers() method in LayerTreeHostImpl and in
DelegatingRenderer, merging them into DrawLayers() and DrawFrame()
in their respective classes.

Next up is to collapse DelegatingRenderer into LayerTreeHostImpl and
remove all "renderer" and "draw and swap" terminology in
LayerTreeHostImpl, Scheduler, Proxies and friends.

R=enne
BUG=606056
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel

Review-Url: https://codereview.chromium.org/2317953002
Cr-Commit-Position: refs/heads/master@{#417098}

[modify] https://crrev.com/aecfcfba7f2622ab3fa1691e939f76ca30a74f2d/cc/output/delegating_renderer.cc
[modify] https://crrev.com/aecfcfba7f2622ab3fa1691e939f76ca30a74f2d/cc/output/delegating_renderer.h
[modify] https://crrev.com/aecfcfba7f2622ab3fa1691e939f76ca30a74f2d/cc/test/layer_tree_test.cc
[modify] https://crrev.com/aecfcfba7f2622ab3fa1691e939f76ca30a74f2d/cc/trees/layer_tree_host_impl.cc
[modify] https://crrev.com/aecfcfba7f2622ab3fa1691e939f76ca30a74f2d/cc/trees/layer_tree_host_impl.h
[modify] https://crrev.com/aecfcfba7f2622ab3fa1691e939f76ca30a74f2d/cc/trees/layer_tree_host_impl_unittest.cc
[modify] https://crrev.com/aecfcfba7f2622ab3fa1691e939f76ca30a74f2d/cc/trees/proxy_impl.cc
[modify] https://crrev.com/aecfcfba7f2622ab3fa1691e939f76ca30a74f2d/cc/trees/single_thread_proxy.cc

https://codereview.chromium.org/2323583002/ deleted the DelegatingRenderer class.
Project Member

Comment 59 by bugdroid1@chromium.org, Sep 8 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/aac49f4729b55e2b1c2f44f012bcd3b7727bf34a

commit aac49f4729b55e2b1c2f44f012bcd3b7727bf34a
Author: danakj <danakj@chromium.org>
Date: Thu Sep 08 17:36:16 2016

cc: Remove unused TextureMailboxDeleter from LayerTreeHostImpl.

This was only for DirectRenderers.

R=enne
BUG=606056
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel

Review-Url: https://codereview.chromium.org/2318953004
Cr-Commit-Position: refs/heads/master@{#417326}

[modify] https://crrev.com/aac49f4729b55e2b1c2f44f012bcd3b7727bf34a/cc/trees/layer_tree_host_impl.cc
[modify] https://crrev.com/aac49f4729b55e2b1c2f44f012bcd3b7727bf34a/cc/trees/layer_tree_host_impl.h

Project Member

Comment 60 by bugdroid1@chromium.org, Sep 8 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/4e214038360be95e05245fabd2b53a9126b7f668

commit 4e214038360be95e05245fabd2b53a9126b7f668
Author: danakj <danakj@chromium.org>
Date: Thu Sep 08 19:08:23 2016

Move BSP tree perf test to cc/output/.

It's weird to have a perf test for BSP tree stuff in the same file
as perf tests for CalcDrawProps.

R=enne
BUG=606056
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel

Review-Url: https://codereview.chromium.org/2320883002
Cr-Commit-Position: refs/heads/master@{#417357}

[modify] https://crrev.com/4e214038360be95e05245fabd2b53a9126b7f668/cc/BUILD.gn
[add] https://crrev.com/4e214038360be95e05245fabd2b53a9126b7f668/cc/output/bsp_tree_perftest.cc
[modify] https://crrev.com/4e214038360be95e05245fabd2b53a9126b7f668/cc/trees/layer_tree_host_common_perftest.cc

Project Member

Comment 61 by bugdroid1@chromium.org, Sep 12 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/5b20e75e681cb9aaa2d8d9696a9954417c9cc068

commit 5b20e75e681cb9aaa2d8d9696a9954417c9cc068
Author: danakj <danakj@chromium.org>
Date: Mon Sep 12 19:46:14 2016

cc: Split and comment methods for Display vs LayerTreeHostImpl

This splits the methods on OutputSurface and OutputSurfaceClient based
on where they are used, to help with splitting these classes.

R=enne
BUG=606056
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel

Review-Url: https://codereview.chromium.org/2331443003
Cr-Commit-Position: refs/heads/master@{#418009}

[modify] https://crrev.com/5b20e75e681cb9aaa2d8d9696a9954417c9cc068/cc/output/output_surface.h
[modify] https://crrev.com/5b20e75e681cb9aaa2d8d9696a9954417c9cc068/cc/output/output_surface_client.h

Project Member

Comment 62 by bugdroid1@chromium.org, Sep 12 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/c54146a5806f7322d06bc5b3079adf1a6fd6b071

commit c54146a5806f7322d06bc5b3079adf1a6fd6b071
Author: danakj <danakj@chromium.org>
Date: Mon Sep 12 21:46:18 2016

cc: Remove unneeded methods from OutputSurface.

Removes two methods that exist to forward to the client, and are
called by subclasses. A third is needed for Bind, but made protected.
The subclasses just call to the client directly.

Also removes SetExternalStencilTest, and moves the state and
implementation of HasExternalStencilTest to the single implementation
that returns true ever.

R=enne
BUG=606056
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel

Review-Url: https://codereview.chromium.org/2329623003
Cr-Commit-Position: refs/heads/master@{#418060}

[modify] https://crrev.com/c54146a5806f7322d06bc5b3079adf1a6fd6b071/android_webview/browser/parent_output_surface.cc
[modify] https://crrev.com/c54146a5806f7322d06bc5b3079adf1a6fd6b071/android_webview/browser/parent_output_surface.h
[modify] https://crrev.com/c54146a5806f7322d06bc5b3079adf1a6fd6b071/blimp/client/core/compositor/delegated_output_surface.cc
[modify] https://crrev.com/c54146a5806f7322d06bc5b3079adf1a6fd6b071/blimp/client/core/compositor/delegated_output_surface.h
[modify] https://crrev.com/c54146a5806f7322d06bc5b3079adf1a6fd6b071/cc/output/output_surface.cc
[modify] https://crrev.com/c54146a5806f7322d06bc5b3079adf1a6fd6b071/cc/output/output_surface.h
[modify] https://crrev.com/c54146a5806f7322d06bc5b3079adf1a6fd6b071/cc/surfaces/surface_display_output_surface.cc
[modify] https://crrev.com/c54146a5806f7322d06bc5b3079adf1a6fd6b071/cc/test/test_delegating_output_surface.cc
[modify] https://crrev.com/c54146a5806f7322d06bc5b3079adf1a6fd6b071/content/renderer/android/synchronous_compositor_output_surface.cc
[modify] https://crrev.com/c54146a5806f7322d06bc5b3079adf1a6fd6b071/content/renderer/gpu/compositor_output_surface.cc
[modify] https://crrev.com/c54146a5806f7322d06bc5b3079adf1a6fd6b071/services/ui/public/cpp/output_surface.cc

Project Member

Comment 63 by bugdroid1@chromium.org, Sep 15 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf

commit 1120f4c4ee426227a3cea04f3b086d5fa6ec4daf
Author: danakj <danakj@chromium.org>
Date: Thu Sep 15 02:05:32 2016

cc: Fork OutputSurface into CompositorFrameSink.

After this, OutputSurface is only used for the display
compositor (ie cc::Display and friends). And the
CompositorFrameSink API is used for the layer tree
compositor (ie LayerTreeHost and friends).

OutputSurfaceClient is also forked to an identical
CompositorFrameSinkClient.

For now the two are identical, after this they can diverge
and we can delete things on each that doesn't apply anymore.

Broad renamings are:
SynchronousCompositorOutputSurface -> SynchronousCompositorFrameSink
blimp::DelegatedOutputSurface -> BlimpCompositorFrameSink
BlimpOutputSurfaceClient -> BlimpCompositorFrameSinkProxy
BlimpOutputSurface -> BlimpCompositorFrameSinkProxyClient
SurfaceDisplayOutputSurface -> DirectCompositorFrameSink
TestDelegatingOutputSurface -> TestCompositorFrameSink
CompositorOutputSurface -> RendererCompositorFrameSink
mus::OutputSurface -> mus::CompositorFrameSink

TBR=piman
BUG=606056
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel

Review-Url: https://codereview.chromium.org/2337913003
Cr-Commit-Position: refs/heads/master@{#418754}

[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/android_webview/browser/browser_view_renderer.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/android_webview/browser/browser_view_renderer_unittest.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/android_webview/browser/child_frame.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/android_webview/browser/child_frame.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/android_webview/browser/compositor_frame_consumer.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/android_webview/browser/hardware_renderer.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/android_webview/browser/hardware_renderer.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/android_webview/browser/render_thread_manager.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/android_webview/browser/render_thread_manager.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/blimp/client/app/compositor/browser_compositor.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/blimp/client/core/compositor/BUILD.gn
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/blimp/client/core/compositor/blimp_compositor.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/blimp/client/core/compositor/blimp_compositor.h
[add] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/blimp/client/core/compositor/blimp_compositor_frame_sink.cc
[add] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/blimp/client/core/compositor/blimp_compositor_frame_sink.h
[add] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/blimp/client/core/compositor/blimp_compositor_frame_sink_proxy.h
[rename] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/blimp/client/core/compositor/blimp_compositor_frame_sink_unittest.cc
[delete] https://crrev.com/fafd9b39256b14f96283e5155d05e7f8f805689c/blimp/client/core/compositor/blimp_output_surface.h
[delete] https://crrev.com/fafd9b39256b14f96283e5155d05e7f8f805689c/blimp/client/core/compositor/delegated_output_surface.cc
[delete] https://crrev.com/fafd9b39256b14f96283e5155d05e7f8f805689c/blimp/client/core/compositor/delegated_output_surface.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/blimp/client/support/compositor/blimp_embedder_compositor.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/blimp/client/support/compositor/blimp_embedder_compositor.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/blimp/client/support/compositor/blimp_layer_tree_settings.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/BUILD.gn
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/layers/heads_up_display_layer_impl_unittest.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/layers/layer_impl_unittest.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/layers/layer_list_iterator_unittest.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/layers/nine_patch_layer_impl_unittest.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/layers/picture_layer_impl_perftest.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/layers/picture_layer_impl_unittest.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/layers/picture_layer_unittest.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/layers/render_surface_unittest.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/layers/texture_layer_impl_unittest.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/layers/texture_layer_unittest.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/layers/ui_resource_layer_impl_unittest.cc
[add] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/output/compositor_frame_sink.cc
[add] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/output/compositor_frame_sink.h
[add] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/output/compositor_frame_sink_client.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/output/gl_renderer_unittest.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/output/overlay_unittest.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/output/software_renderer_unittest.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/proto/commit_earlyout_reason.proto
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/raster/raster_buffer_provider_perftest.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/raster/raster_buffer_provider_unittest.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/resources/resource_pool_unittest.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/resources/resource_provider.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/resources/resource_provider.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/resources/resource_provider_unittest.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/resources/scoped_resource_unittest.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/resources/video_resource_updater_unittest.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/scheduler/commit_earlyout_reason.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/scheduler/commit_earlyout_reason.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/scheduler/commit_earlyout_reason_unittest.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/scheduler/compositor_timing_history.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/scheduler/compositor_timing_history.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/scheduler/scheduler.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/scheduler/scheduler.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/scheduler/scheduler_settings.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/scheduler/scheduler_settings.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/scheduler/scheduler_state_machine.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/scheduler/scheduler_state_machine.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/scheduler/scheduler_state_machine_unittest.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/scheduler/scheduler_unittest.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/surfaces/BUILD.gn
[rename] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/surfaces/direct_compositor_frame_sink.cc
[rename] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/surfaces/direct_compositor_frame_sink.h
[rename] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/surfaces/direct_compositor_frame_sink_unittest.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/surfaces/surface_aggregator_perftest.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/surfaces/surface_aggregator_unittest.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/surfaces/surface_hittest_unittest.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/test/fake_channel_impl.h
[add] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/test/fake_compositor_frame_sink.cc
[add] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/test/fake_compositor_frame_sink.h
[add] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/test/fake_compositor_frame_sink_client.cc
[add] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/test/fake_compositor_frame_sink_client.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/test/fake_layer_tree_host_client.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/test/fake_layer_tree_host_client.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/test/fake_layer_tree_host_impl.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/test/fake_layer_tree_host_impl_client.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/test/fake_output_surface.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/test/fake_output_surface.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/test/fake_proxy.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/test/fake_proxy.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/test/fake_resource_provider.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/test/layer_test_common.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/test/layer_test_common.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/test/layer_tree_pixel_resource_test.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/test/layer_tree_pixel_test.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/test/layer_tree_pixel_test.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/test/layer_tree_test.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/test/layer_tree_test.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/test/stub_layer_tree_host_client.h
[rename] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/test/test_compositor_frame_sink.cc
[rename] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/test/test_compositor_frame_sink.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/test/test_hooks.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/test/test_layer_tree_host_base.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/test/test_layer_tree_host_base.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/tiles/picture_layer_tiling_set_unittest.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/tiles/tile_manager_perftest.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/tiles/tile_manager_unittest.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/trees/channel_impl.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/trees/channel_main.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/trees/layer_tree_host.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/trees/layer_tree_host.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/trees/layer_tree_host_client.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/trees/layer_tree_host_common_unittest.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/trees/layer_tree_host_impl.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/trees/layer_tree_host_impl.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/trees/layer_tree_host_impl_unittest.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/trees/layer_tree_host_interface.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/trees/layer_tree_host_unittest.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/trees/layer_tree_host_unittest_context.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/trees/layer_tree_host_unittest_copyrequest.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/trees/layer_tree_host_unittest_remote_server.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/trees/layer_tree_impl.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/trees/layer_tree_impl.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/trees/layer_tree_settings.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/trees/layer_tree_settings.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/trees/proxy.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/trees/proxy_impl.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/trees/proxy_impl.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/trees/proxy_main.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/trees/proxy_main.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/trees/remote_channel_impl.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/trees/remote_channel_impl.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/trees/remote_channel_main.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/trees/remote_channel_main.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/trees/single_thread_proxy.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/trees/single_thread_proxy.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/trees/threaded_channel.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/cc/trees/threaded_channel.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/content/browser/android/synchronous_compositor_host.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/content/browser/android/synchronous_compositor_host.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/content/browser/compositor/gpu_process_transport_factory.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/content/browser/compositor/gpu_process_transport_factory.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/content/browser/frame_host/render_widget_host_view_child_frame.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/content/browser/frame_host/render_widget_host_view_child_frame.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/content/browser/frame_host/render_widget_host_view_guest.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/content/browser/frame_host/render_widget_host_view_guest.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/content/browser/renderer_host/browser_compositor_view_mac.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/content/browser/renderer_host/browser_compositor_view_mac.mm
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/content/browser/renderer_host/compositor_impl_android.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/content/browser/renderer_host/compositor_impl_android.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/content/browser/renderer_host/delegated_frame_host.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/content/browser/renderer_host/delegated_frame_host.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/content/browser/renderer_host/render_widget_host_impl.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/content/browser/renderer_host/render_widget_host_impl.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/content/browser/renderer_host/render_widget_host_view_android.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/content/browser/renderer_host/render_widget_host_view_android.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/content/browser/renderer_host/render_widget_host_view_aura.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/content/browser/renderer_host/render_widget_host_view_aura.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/content/browser/renderer_host/render_widget_host_view_aura_unittest.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/content/browser/renderer_host/render_widget_host_view_base.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/content/browser/renderer_host/render_widget_host_view_mac.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/content/browser/renderer_host/render_widget_host_view_mac.mm
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/content/common/android/sync_compositor_messages.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/content/common/view_messages.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/content/public/browser/android/synchronous_compositor.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/content/public/browser/android/synchronous_compositor.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/content/public/test/test_synchronous_compositor_android.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/content/public/test/test_synchronous_compositor_android.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/content/renderer/BUILD.gn
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/content/renderer/android/synchronous_compositor_filter.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/content/renderer/android/synchronous_compositor_filter.h
[rename] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/content/renderer/android/synchronous_compositor_frame_sink.cc
[rename] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/content/renderer/android/synchronous_compositor_frame_sink.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/content/renderer/android/synchronous_compositor_proxy.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/content/renderer/android/synchronous_compositor_proxy.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/content/renderer/android/synchronous_compositor_registry.h
[delete] https://crrev.com/fafd9b39256b14f96283e5155d05e7f8f805689c/content/renderer/gpu/compositor_output_surface.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/content/renderer/gpu/render_widget_compositor.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/content/renderer/gpu/render_widget_compositor.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/content/renderer/gpu/render_widget_compositor_delegate.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/content/renderer/gpu/render_widget_compositor_unittest.cc
[rename] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/content/renderer/gpu/renderer_compositor_frame_sink.cc
[add] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/content/renderer/gpu/renderer_compositor_frame_sink.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/content/renderer/layout_test_dependencies.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/content/renderer/mus/render_widget_mus_connection.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/content/renderer/mus/render_widget_mus_connection.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/content/renderer/render_thread_impl.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/content/renderer/render_thread_impl.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/content/renderer/render_widget.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/content/renderer/render_widget.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/content/test/layouttest_support.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/content/test/test_render_view_host.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/content/test/test_render_view_host.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/services/ui/public/cpp/BUILD.gn
[rename] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/services/ui/public/cpp/compositor_frame_sink.cc
[rename] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/services/ui/public/cpp/compositor_frame_sink.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/third_party/WebKit/Source/platform/graphics/CompositorMutableStateTest.cpp
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/third_party/WebKit/Source/platform/graphics/compositing/PaintArtifactCompositorTest.cpp
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/third_party/WebKit/Source/platform/testing/WebLayerTreeViewImplForTesting.cpp
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/third_party/WebKit/Source/platform/testing/WebLayerTreeViewImplForTesting.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/tools/valgrind/memcheck/suppressions.txt
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/ui/android/delegated_frame_host_android.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/ui/android/delegated_frame_host_android.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/ui/compositor/compositor.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/ui/compositor/compositor.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/ui/compositor/test/in_process_context_factory.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/ui/compositor/test/in_process_context_factory.h
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/ui/views/mus/surface_context_factory.cc
[modify] https://crrev.com/1120f4c4ee426227a3cea04f3b086d5fa6ec4daf/ui/views/mus/surface_context_factory.h

Comment 64 by loyso@chromium.org, Sep 16 2016

Cc: loyso@chromium.org
Project Member

Comment 65 by bugdroid1@chromium.org, Sep 19 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/e41d978ab1257aca41bfe38eb9c766b7cdb3ff3c

commit e41d978ab1257aca41bfe38eb9c766b7cdb3ff3c
Author: danakj <danakj@chromium.org>
Date: Mon Sep 19 21:09:28 2016

cc: Remove things from OutputSurface and CompositorFrameSink.

After forking OutputSurface, there are a lot of things on both
OutputSurface and CompositorFrameSink that only belong on one or the
other. This patch removes such things from each of them.

Next up: Make OutputSurface::BindToClient not failable. Start
renaming SwapBuffers and friends for CompositorFrameSink.

TBR=dtrainor
R=boliu, dtrainor@chromium.org, enne
BUG=606056
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel

Review-Url: https://codereview.chromium.org/2349743004
Cr-Commit-Position: refs/heads/master@{#419548}

[modify] https://crrev.com/e41d978ab1257aca41bfe38eb9c766b7cdb3ff3c/android_webview/browser/parent_output_surface.cc
[modify] https://crrev.com/e41d978ab1257aca41bfe38eb9c766b7cdb3ff3c/blimp/client/core/compositor/blimp_compositor_frame_sink.cc
[modify] https://crrev.com/e41d978ab1257aca41bfe38eb9c766b7cdb3ff3c/blimp/client/core/compositor/blimp_compositor_frame_sink.h
[modify] https://crrev.com/e41d978ab1257aca41bfe38eb9c766b7cdb3ff3c/blimp/client/support/compositor/blimp_embedder_compositor.cc
[modify] https://crrev.com/e41d978ab1257aca41bfe38eb9c766b7cdb3ff3c/cc/BUILD.gn
[modify] https://crrev.com/e41d978ab1257aca41bfe38eb9c766b7cdb3ff3c/cc/output/compositor_frame_sink.cc
[modify] https://crrev.com/e41d978ab1257aca41bfe38eb9c766b7cdb3ff3c/cc/output/compositor_frame_sink.h
[modify] https://crrev.com/e41d978ab1257aca41bfe38eb9c766b7cdb3ff3c/cc/output/compositor_frame_sink_client.h
[add] https://crrev.com/e41d978ab1257aca41bfe38eb9c766b7cdb3ff3c/cc/output/compositor_frame_sink_unittest.cc
[modify] https://crrev.com/e41d978ab1257aca41bfe38eb9c766b7cdb3ff3c/cc/output/gl_renderer_unittest.cc
[modify] https://crrev.com/e41d978ab1257aca41bfe38eb9c766b7cdb3ff3c/cc/output/output_surface.cc
[modify] https://crrev.com/e41d978ab1257aca41bfe38eb9c766b7cdb3ff3c/cc/output/output_surface.h
[modify] https://crrev.com/e41d978ab1257aca41bfe38eb9c766b7cdb3ff3c/cc/output/output_surface_unittest.cc
[modify] https://crrev.com/e41d978ab1257aca41bfe38eb9c766b7cdb3ff3c/cc/output/overlay_unittest.cc
[modify] https://crrev.com/e41d978ab1257aca41bfe38eb9c766b7cdb3ff3c/cc/surfaces/direct_compositor_frame_sink.cc
[modify] https://crrev.com/e41d978ab1257aca41bfe38eb9c766b7cdb3ff3c/cc/surfaces/direct_compositor_frame_sink.h
[modify] https://crrev.com/e41d978ab1257aca41bfe38eb9c766b7cdb3ff3c/cc/surfaces/display.cc
[modify] https://crrev.com/e41d978ab1257aca41bfe38eb9c766b7cdb3ff3c/cc/test/fake_compositor_frame_sink.cc
[modify] https://crrev.com/e41d978ab1257aca41bfe38eb9c766b7cdb3ff3c/cc/test/fake_compositor_frame_sink.h
[modify] https://crrev.com/e41d978ab1257aca41bfe38eb9c766b7cdb3ff3c/cc/test/fake_compositor_frame_sink_client.h
[modify] https://crrev.com/e41d978ab1257aca41bfe38eb9c766b7cdb3ff3c/cc/test/fake_layer_tree_host_impl_client.h
[modify] https://crrev.com/e41d978ab1257aca41bfe38eb9c766b7cdb3ff3c/cc/test/fake_output_surface.cc
[modify] https://crrev.com/e41d978ab1257aca41bfe38eb9c766b7cdb3ff3c/cc/test/fake_output_surface.h
[modify] https://crrev.com/e41d978ab1257aca41bfe38eb9c766b7cdb3ff3c/cc/test/layer_tree_pixel_test.cc
[modify] https://crrev.com/e41d978ab1257aca41bfe38eb9c766b7cdb3ff3c/cc/test/pixel_test.cc
[modify] https://crrev.com/e41d978ab1257aca41bfe38eb9c766b7cdb3ff3c/cc/test/pixel_test_output_surface.cc
[modify] https://crrev.com/e41d978ab1257aca41bfe38eb9c766b7cdb3ff3c/cc/test/pixel_test_output_surface.h
[modify] https://crrev.com/e41d978ab1257aca41bfe38eb9c766b7cdb3ff3c/cc/test/test_compositor_frame_sink.cc
[modify] https://crrev.com/e41d978ab1257aca41bfe38eb9c766b7cdb3ff3c/cc/test/test_compositor_frame_sink.h
[modify] https://crrev.com/e41d978ab1257aca41bfe38eb9c766b7cdb3ff3c/cc/trees/layer_tree_host_impl.cc
[modify] https://crrev.com/e41d978ab1257aca41bfe38eb9c766b7cdb3ff3c/cc/trees/layer_tree_host_impl.h
[modify] https://crrev.com/e41d978ab1257aca41bfe38eb9c766b7cdb3ff3c/cc/trees/layer_tree_host_impl_unittest.cc
[modify] https://crrev.com/e41d978ab1257aca41bfe38eb9c766b7cdb3ff3c/cc/trees/layer_tree_host_unittest.cc
[modify] https://crrev.com/e41d978ab1257aca41bfe38eb9c766b7cdb3ff3c/cc/trees/layer_tree_host_unittest_copyrequest.cc
[modify] https://crrev.com/e41d978ab1257aca41bfe38eb9c766b7cdb3ff3c/cc/trees/proxy_impl.cc
[modify] https://crrev.com/e41d978ab1257aca41bfe38eb9c766b7cdb3ff3c/cc/trees/proxy_impl.h
[modify] https://crrev.com/e41d978ab1257aca41bfe38eb9c766b7cdb3ff3c/cc/trees/single_thread_proxy.cc
[modify] https://crrev.com/e41d978ab1257aca41bfe38eb9c766b7cdb3ff3c/cc/trees/single_thread_proxy.h
[modify] https://crrev.com/e41d978ab1257aca41bfe38eb9c766b7cdb3ff3c/content/browser/compositor/browser_compositor_output_surface.cc
[modify] https://crrev.com/e41d978ab1257aca41bfe38eb9c766b7cdb3ff3c/content/browser/compositor/browser_compositor_output_surface.h
[modify] https://crrev.com/e41d978ab1257aca41bfe38eb9c766b7cdb3ff3c/content/browser/renderer_host/compositor_impl_android.cc
[modify] https://crrev.com/e41d978ab1257aca41bfe38eb9c766b7cdb3ff3c/content/renderer/android/synchronous_compositor_frame_sink.cc
[modify] https://crrev.com/e41d978ab1257aca41bfe38eb9c766b7cdb3ff3c/content/renderer/android/synchronous_compositor_frame_sink.h
[modify] https://crrev.com/e41d978ab1257aca41bfe38eb9c766b7cdb3ff3c/content/renderer/gpu/render_widget_compositor.cc
[modify] https://crrev.com/e41d978ab1257aca41bfe38eb9c766b7cdb3ff3c/content/renderer/gpu/render_widget_compositor_unittest.cc
[modify] https://crrev.com/e41d978ab1257aca41bfe38eb9c766b7cdb3ff3c/content/renderer/gpu/renderer_compositor_frame_sink.cc
[modify] https://crrev.com/e41d978ab1257aca41bfe38eb9c766b7cdb3ff3c/content/renderer/gpu/renderer_compositor_frame_sink.h
[modify] https://crrev.com/e41d978ab1257aca41bfe38eb9c766b7cdb3ff3c/content/test/layouttest_support.cc
[modify] https://crrev.com/e41d978ab1257aca41bfe38eb9c766b7cdb3ff3c/services/ui/public/cpp/compositor_frame_sink.cc
[modify] https://crrev.com/e41d978ab1257aca41bfe38eb9c766b7cdb3ff3c/services/ui/public/cpp/compositor_frame_sink.h
[modify] https://crrev.com/e41d978ab1257aca41bfe38eb9c766b7cdb3ff3c/services/ui/surfaces/direct_output_surface.cc
[modify] https://crrev.com/e41d978ab1257aca41bfe38eb9c766b7cdb3ff3c/services/ui/surfaces/direct_output_surface_ozone.cc
[modify] https://crrev.com/e41d978ab1257aca41bfe38eb9c766b7cdb3ff3c/ui/compositor/test/in_process_context_factory.cc

Project Member

Comment 66 by bugdroid1@chromium.org, Sep 26 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/1c77b832a90d6aab18e5b3ec91dd43291a3f57a7

commit 1c77b832a90d6aab18e5b3ec91dd43291a3f57a7
Author: danakj <danakj@chromium.org>
Date: Mon Sep 26 21:26:09 2016

cc: Make most of cc::OutputSurface abstract.

This makes most methods on cc::OutputSurface abstract getting
us closer to this being an interface again. Currently we have
many levels of classes overriding and changing behaviour of
methods, and since the base class is an implementation you
have at least two. This changes most methods to be pure
virtual which forces all implementations of the class to
consider if they should be doing something in these methods.
A surprising number of methods are not used except in single-
platform scenarios, which leads to questions if this API is
optimal, but it's nice to expose the situtation as these
methods already existed but were sometimes (rarely)
overridden. Also eliminates some swap-buffers-complete
dancing through multiple levels of inheritance just to
call the client's DidSwapBuffersComplete().

TBR=nyquist
R=enne@chromium.org
BUG=606056
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel

Review-Url: https://codereview.chromium.org/2352963002
Cr-Commit-Position: refs/heads/master@{#420994}

[modify] https://crrev.com/1c77b832a90d6aab18e5b3ec91dd43291a3f57a7/android_webview/browser/parent_output_surface.cc
[modify] https://crrev.com/1c77b832a90d6aab18e5b3ec91dd43291a3f57a7/android_webview/browser/parent_output_surface.h
[modify] https://crrev.com/1c77b832a90d6aab18e5b3ec91dd43291a3f57a7/blimp/client/support/compositor/blimp_embedder_compositor.cc
[modify] https://crrev.com/1c77b832a90d6aab18e5b3ec91dd43291a3f57a7/cc/output/gl_renderer_unittest.cc
[modify] https://crrev.com/1c77b832a90d6aab18e5b3ec91dd43291a3f57a7/cc/output/output_surface.cc
[modify] https://crrev.com/1c77b832a90d6aab18e5b3ec91dd43291a3f57a7/cc/output/output_surface.h
[modify] https://crrev.com/1c77b832a90d6aab18e5b3ec91dd43291a3f57a7/cc/output/output_surface_unittest.cc
[modify] https://crrev.com/1c77b832a90d6aab18e5b3ec91dd43291a3f57a7/cc/output/overlay_unittest.cc
[modify] https://crrev.com/1c77b832a90d6aab18e5b3ec91dd43291a3f57a7/cc/test/fake_output_surface.cc
[modify] https://crrev.com/1c77b832a90d6aab18e5b3ec91dd43291a3f57a7/cc/test/fake_output_surface.h
[modify] https://crrev.com/1c77b832a90d6aab18e5b3ec91dd43291a3f57a7/cc/test/pixel_test_output_surface.cc
[modify] https://crrev.com/1c77b832a90d6aab18e5b3ec91dd43291a3f57a7/cc/test/pixel_test_output_surface.h
[modify] https://crrev.com/1c77b832a90d6aab18e5b3ec91dd43291a3f57a7/content/browser/compositor/browser_compositor_output_surface.cc
[modify] https://crrev.com/1c77b832a90d6aab18e5b3ec91dd43291a3f57a7/content/browser/compositor/browser_compositor_output_surface.h
[modify] https://crrev.com/1c77b832a90d6aab18e5b3ec91dd43291a3f57a7/content/browser/compositor/gpu_browser_compositor_output_surface.cc
[modify] https://crrev.com/1c77b832a90d6aab18e5b3ec91dd43291a3f57a7/content/browser/compositor/gpu_browser_compositor_output_surface.h
[modify] https://crrev.com/1c77b832a90d6aab18e5b3ec91dd43291a3f57a7/content/browser/compositor/gpu_output_surface_mac.mm
[modify] https://crrev.com/1c77b832a90d6aab18e5b3ec91dd43291a3f57a7/content/browser/compositor/gpu_surfaceless_browser_compositor_output_surface.cc
[modify] https://crrev.com/1c77b832a90d6aab18e5b3ec91dd43291a3f57a7/content/browser/compositor/gpu_surfaceless_browser_compositor_output_surface.h
[modify] https://crrev.com/1c77b832a90d6aab18e5b3ec91dd43291a3f57a7/content/browser/compositor/offscreen_browser_compositor_output_surface.cc
[modify] https://crrev.com/1c77b832a90d6aab18e5b3ec91dd43291a3f57a7/content/browser/compositor/offscreen_browser_compositor_output_surface.h
[modify] https://crrev.com/1c77b832a90d6aab18e5b3ec91dd43291a3f57a7/content/browser/compositor/reflector_impl_unittest.cc
[modify] https://crrev.com/1c77b832a90d6aab18e5b3ec91dd43291a3f57a7/content/browser/compositor/software_browser_compositor_output_surface.cc
[modify] https://crrev.com/1c77b832a90d6aab18e5b3ec91dd43291a3f57a7/content/browser/compositor/software_browser_compositor_output_surface.h
[modify] https://crrev.com/1c77b832a90d6aab18e5b3ec91dd43291a3f57a7/content/browser/renderer_host/compositor_impl_android.cc
[modify] https://crrev.com/1c77b832a90d6aab18e5b3ec91dd43291a3f57a7/content/renderer/android/synchronous_compositor_frame_sink.cc
[modify] https://crrev.com/1c77b832a90d6aab18e5b3ec91dd43291a3f57a7/services/ui/surfaces/direct_output_surface.cc
[modify] https://crrev.com/1c77b832a90d6aab18e5b3ec91dd43291a3f57a7/services/ui/surfaces/direct_output_surface.h
[modify] https://crrev.com/1c77b832a90d6aab18e5b3ec91dd43291a3f57a7/services/ui/surfaces/direct_output_surface_ozone.cc
[modify] https://crrev.com/1c77b832a90d6aab18e5b3ec91dd43291a3f57a7/services/ui/surfaces/direct_output_surface_ozone.h
[modify] https://crrev.com/1c77b832a90d6aab18e5b3ec91dd43291a3f57a7/ui/compositor/test/in_process_context_factory.cc

Components: Internals>MUS
Labels: Proj-Mustash
Project Member

Comment 68 by bugdroid1@chromium.org, Oct 4 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/e9e8961052f406885b2ebcebfb27e181f624f88c

commit e9e8961052f406885b2ebcebfb27e181f624f88c
Author: danakj <danakj@chromium.org>
Date: Tue Oct 04 22:16:26 2016

cc: Remove Display::SetExternalViewport.

Instead expand the Display's size to cover the entire entire external
viewport (aka the clip area).

Also removes SetSurfaceSize from the SoftwareOutputSurface used by
WebView to draw the renderer's frame into an SkCanvas. Since the
Display is now sized to cover the whole clip area, it will Reshape()
to that size and the OutputSurface can use that size.

R=boliu@chromium.org
BUG=606056
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel

Review-Url: https://codereview.chromium.org/2377533002
Cr-Commit-Position: refs/heads/master@{#422960}

[modify] https://crrev.com/e9e8961052f406885b2ebcebfb27e181f624f88c/android_webview/browser/surfaces_instance.cc
[modify] https://crrev.com/e9e8961052f406885b2ebcebfb27e181f624f88c/cc/surfaces/display.cc
[modify] https://crrev.com/e9e8961052f406885b2ebcebfb27e181f624f88c/cc/surfaces/display.h
[modify] https://crrev.com/e9e8961052f406885b2ebcebfb27e181f624f88c/content/renderer/android/synchronous_compositor_frame_sink.cc
[modify] https://crrev.com/e9e8961052f406885b2ebcebfb27e181f624f88c/content/renderer/android/synchronous_compositor_frame_sink.h

Project Member

Comment 69 by bugdroid1@chromium.org, Oct 6 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/a7e03fe1f42b541fa54b218808c1354fbf498e7e

commit a7e03fe1f42b541fa54b218808c1354fbf498e7e
Author: danakj <danakj@chromium.org>
Date: Thu Oct 06 20:22:03 2016

cc: Remove SurfaceSize from OutputSurface.

SurfaceSize is no longer needed that the external viewport is always
at 0,0 and no output surfaces override the size returned there except
cc unittests. So make them stop and remove the getter.

This kinda points out that GLFrameData's size is redundant with the
size given to Reshape. For now I'm DCHECKing that they are the same
to document (and confirm) this.

Also adds DCHECKs that the viewport rect is at 0,0 and the clip rect
given to DirectRenderer matches the viewport rect since that is what
Display does now. Followups can remove code to not need DCHECKs.

R=enne@chromium.org
BUG=606056
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel

Review-Url: https://codereview.chromium.org/2392183003
Cr-Commit-Position: refs/heads/master@{#423650}

[modify] https://crrev.com/a7e03fe1f42b541fa54b218808c1354fbf498e7e/cc/BUILD.gn
[modify] https://crrev.com/a7e03fe1f42b541fa54b218808c1354fbf498e7e/cc/output/direct_renderer.cc
[modify] https://crrev.com/a7e03fe1f42b541fa54b218808c1354fbf498e7e/cc/output/direct_renderer.h
[modify] https://crrev.com/a7e03fe1f42b541fa54b218808c1354fbf498e7e/cc/output/gl_renderer.cc
[modify] https://crrev.com/a7e03fe1f42b541fa54b218808c1354fbf498e7e/cc/output/gl_renderer_unittest.cc
[modify] https://crrev.com/a7e03fe1f42b541fa54b218808c1354fbf498e7e/cc/output/output_surface.h
[modify] https://crrev.com/a7e03fe1f42b541fa54b218808c1354fbf498e7e/cc/output/renderer_pixeltest.cc
[modify] https://crrev.com/a7e03fe1f42b541fa54b218808c1354fbf498e7e/cc/test/data/background_filter_on_scaled_layer_gl.png
[modify] https://crrev.com/a7e03fe1f42b541fa54b218808c1354fbf498e7e/cc/test/data/rotated_drop_shadow_filter_gl.png
[modify] https://crrev.com/a7e03fe1f42b541fa54b218808c1354fbf498e7e/cc/test/data/rotated_filter_gl.png
[modify] https://crrev.com/a7e03fe1f42b541fa54b218808c1354fbf498e7e/cc/test/layer_tree_pixel_test.cc
[modify] https://crrev.com/a7e03fe1f42b541fa54b218808c1354fbf498e7e/cc/test/pixel_test.cc
[modify] https://crrev.com/a7e03fe1f42b541fa54b218808c1354fbf498e7e/cc/test/pixel_test.h
[delete] https://crrev.com/a4461011bd1331b61f27ad8fc2e65e53cad92436/cc/test/pixel_test_software_output_device.cc
[delete] https://crrev.com/a4461011bd1331b61f27ad8fc2e65e53cad92436/cc/test/pixel_test_software_output_device.h
[modify] https://crrev.com/a7e03fe1f42b541fa54b218808c1354fbf498e7e/content/browser/compositor/gpu_browser_compositor_output_surface.cc
[modify] https://crrev.com/a7e03fe1f42b541fa54b218808c1354fbf498e7e/content/browser/compositor/gpu_surfaceless_browser_compositor_output_surface.cc
[modify] https://crrev.com/a7e03fe1f42b541fa54b218808c1354fbf498e7e/content/browser/compositor/gpu_surfaceless_browser_compositor_output_surface.h
[modify] https://crrev.com/a7e03fe1f42b541fa54b218808c1354fbf498e7e/content/browser/compositor/offscreen_browser_compositor_output_surface.cc
[modify] https://crrev.com/a7e03fe1f42b541fa54b218808c1354fbf498e7e/content/browser/compositor/reflector_impl.cc
[modify] https://crrev.com/a7e03fe1f42b541fa54b218808c1354fbf498e7e/content/browser/compositor/reflector_impl.h
[modify] https://crrev.com/a7e03fe1f42b541fa54b218808c1354fbf498e7e/content/browser/compositor/reflector_impl_unittest.cc
[modify] https://crrev.com/a7e03fe1f42b541fa54b218808c1354fbf498e7e/services/ui/surfaces/direct_output_surface_ozone.cc
[modify] https://crrev.com/a7e03fe1f42b541fa54b218808c1354fbf498e7e/services/ui/surfaces/direct_output_surface_ozone.h

Project Member

Comment 70 by bugdroid1@chromium.org, Oct 6 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/ff1c583ed4f2d70249f3700515e26471d59fa9cf

commit ff1c583ed4f2d70249f3700515e26471d59fa9cf
Author: danakj <danakj@chromium.org>
Date: Thu Oct 06 20:36:26 2016

cc: Replace viewport/clip rect with a viewport size for DirectRenderer

The viewport rect is always at 0,0 and the clip rect is always the
viewport rect now that WebView does external viewport/clip things via
embedding a SurfaceDrawQuad into another surface. So express this in
the code.

R=enne@chromium.org
BUG=606056
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel

Review-Url: https://codereview.chromium.org/2399713003
Cr-Commit-Position: refs/heads/master@{#423657}

[modify] https://crrev.com/ff1c583ed4f2d70249f3700515e26471d59fa9cf/cc/output/direct_renderer.cc
[modify] https://crrev.com/ff1c583ed4f2d70249f3700515e26471d59fa9cf/cc/output/direct_renderer.h
[modify] https://crrev.com/ff1c583ed4f2d70249f3700515e26471d59fa9cf/cc/output/gl_renderer.cc
[modify] https://crrev.com/ff1c583ed4f2d70249f3700515e26471d59fa9cf/cc/output/gl_renderer_unittest.cc
[modify] https://crrev.com/ff1c583ed4f2d70249f3700515e26471d59fa9cf/cc/output/overlay_unittest.cc
[modify] https://crrev.com/ff1c583ed4f2d70249f3700515e26471d59fa9cf/cc/output/software_renderer_unittest.cc
[modify] https://crrev.com/ff1c583ed4f2d70249f3700515e26471d59fa9cf/cc/surfaces/display.cc
[modify] https://crrev.com/ff1c583ed4f2d70249f3700515e26471d59fa9cf/cc/test/pixel_test.cc

Project Member

Comment 72 by bugdroid1@chromium.org, Oct 10 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/70ffc43ceda0ffba0edf7ea136567af5bed5c819

commit 70ffc43ceda0ffba0edf7ea136567af5bed5c819
Author: danakj <danakj@chromium.org>
Date: Mon Oct 10 21:47:30 2016

cc: Make OutputSurface::Reshape abstract

DirectRenderer will cache the values given to Reshape and
only call it when things change.

TBR=dtrainor
R=enne@chromium.org
BUG=606056
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel

Review-Url: https://codereview.chromium.org/2399983003
Cr-Commit-Position: refs/heads/master@{#424255}

[modify] https://crrev.com/70ffc43ceda0ffba0edf7ea136567af5bed5c819/android_webview/browser/parent_output_surface.cc
[modify] https://crrev.com/70ffc43ceda0ffba0edf7ea136567af5bed5c819/blimp/client/support/compositor/blimp_embedder_compositor.cc
[modify] https://crrev.com/70ffc43ceda0ffba0edf7ea136567af5bed5c819/cc/output/direct_renderer.cc
[modify] https://crrev.com/70ffc43ceda0ffba0edf7ea136567af5bed5c819/cc/output/direct_renderer.h
[modify] https://crrev.com/70ffc43ceda0ffba0edf7ea136567af5bed5c819/cc/output/gl_renderer.cc
[modify] https://crrev.com/70ffc43ceda0ffba0edf7ea136567af5bed5c819/cc/output/gl_renderer.h
[modify] https://crrev.com/70ffc43ceda0ffba0edf7ea136567af5bed5c819/cc/output/gl_renderer_unittest.cc
[modify] https://crrev.com/70ffc43ceda0ffba0edf7ea136567af5bed5c819/cc/output/output_surface.cc
[modify] https://crrev.com/70ffc43ceda0ffba0edf7ea136567af5bed5c819/cc/output/output_surface.h
[modify] https://crrev.com/70ffc43ceda0ffba0edf7ea136567af5bed5c819/cc/output/output_surface_unittest.cc
[modify] https://crrev.com/70ffc43ceda0ffba0edf7ea136567af5bed5c819/cc/output/overlay_unittest.cc
[modify] https://crrev.com/70ffc43ceda0ffba0edf7ea136567af5bed5c819/cc/output/software_output_device.cc
[modify] https://crrev.com/70ffc43ceda0ffba0edf7ea136567af5bed5c819/cc/output/software_output_device.h
[modify] https://crrev.com/70ffc43ceda0ffba0edf7ea136567af5bed5c819/cc/test/fake_output_surface.cc
[modify] https://crrev.com/70ffc43ceda0ffba0edf7ea136567af5bed5c819/cc/test/fake_output_surface.h
[modify] https://crrev.com/70ffc43ceda0ffba0edf7ea136567af5bed5c819/cc/test/pixel_test_output_surface.cc
[modify] https://crrev.com/70ffc43ceda0ffba0edf7ea136567af5bed5c819/cc/test/pixel_test_output_surface.h
[modify] https://crrev.com/70ffc43ceda0ffba0edf7ea136567af5bed5c819/content/browser/compositor/gpu_browser_compositor_output_surface.cc
[modify] https://crrev.com/70ffc43ceda0ffba0edf7ea136567af5bed5c819/content/browser/compositor/gpu_browser_compositor_output_surface.h
[modify] https://crrev.com/70ffc43ceda0ffba0edf7ea136567af5bed5c819/content/browser/compositor/gpu_surfaceless_browser_compositor_output_surface.cc
[modify] https://crrev.com/70ffc43ceda0ffba0edf7ea136567af5bed5c819/content/browser/compositor/gpu_surfaceless_browser_compositor_output_surface.h
[modify] https://crrev.com/70ffc43ceda0ffba0edf7ea136567af5bed5c819/content/browser/compositor/offscreen_browser_compositor_output_surface.cc
[modify] https://crrev.com/70ffc43ceda0ffba0edf7ea136567af5bed5c819/content/browser/compositor/offscreen_browser_compositor_output_surface.h
[modify] https://crrev.com/70ffc43ceda0ffba0edf7ea136567af5bed5c819/content/browser/compositor/reflector_impl_unittest.cc
[modify] https://crrev.com/70ffc43ceda0ffba0edf7ea136567af5bed5c819/content/browser/compositor/software_browser_compositor_output_surface.cc
[modify] https://crrev.com/70ffc43ceda0ffba0edf7ea136567af5bed5c819/content/browser/compositor/software_browser_compositor_output_surface.h
[modify] https://crrev.com/70ffc43ceda0ffba0edf7ea136567af5bed5c819/content/browser/compositor/software_output_device_ozone.cc
[modify] https://crrev.com/70ffc43ceda0ffba0edf7ea136567af5bed5c819/content/browser/compositor/software_output_device_win.cc
[modify] https://crrev.com/70ffc43ceda0ffba0edf7ea136567af5bed5c819/content/browser/renderer_host/compositor_impl_android.cc
[modify] https://crrev.com/70ffc43ceda0ffba0edf7ea136567af5bed5c819/content/renderer/android/synchronous_compositor_frame_sink.cc
[modify] https://crrev.com/70ffc43ceda0ffba0edf7ea136567af5bed5c819/services/ui/surfaces/direct_output_surface.cc
[modify] https://crrev.com/70ffc43ceda0ffba0edf7ea136567af5bed5c819/services/ui/surfaces/direct_output_surface.h
[modify] https://crrev.com/70ffc43ceda0ffba0edf7ea136567af5bed5c819/services/ui/surfaces/direct_output_surface_ozone.cc
[modify] https://crrev.com/70ffc43ceda0ffba0edf7ea136567af5bed5c819/services/ui/surfaces/direct_output_surface_ozone.h
[modify] https://crrev.com/70ffc43ceda0ffba0edf7ea136567af5bed5c819/ui/compositor/test/in_process_context_factory.cc

Project Member

Comment 73 by bugdroid1@chromium.org, Oct 11 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/daad1d10fb3932de760bdc3688e96c947d3c7b18

commit daad1d10fb3932de760bdc3688e96c947d3c7b18
Author: danakj <danakj@chromium.org>
Date: Tue Oct 11 00:00:34 2016

cc: Get rid of PostSwapBuffersComplete.

OutputSurface and CompositorFrameSink both have this method which is
not part of the interface but used to post a call to the client's
DidSwapBuffersComplete to the current ThreadTaskRunnerHandle. This is
problematic since that is *not* the compositor task runner which can
be overridden, and it clutters these base class APIs.

This moves the calls to the client DidSwapBuffersComplete() out to each
implementation of OutputSurface or CompositorFrameSink.

Some additional changes in the process:

- BrowserCompositorOutputSurface had OnGpuSwapBuffersCompleted but it
was only used for gpu cases, so moved to GpuBrowserCompositorOutputSurface
and remove the NOTREACHED() version in
SoftwareBrowserCompositorOutputSurface.

- Blimp was not using the draw callback to provide backpressure for
submitted CompositorFrames, and just posting immediately, so hook that
up instead of doing a simple post-task dance there.

- SoftwareBrowserCompositorOutputSurface was using ThreadTaskRunnerHandle
to make another post task too but it should be using the compositor's
task runner. Since it now has it, use that.

R=enne@chromium.org, khushalsagar@chromium.org
BUG=616973,606056
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel

Review-Url: https://codereview.chromium.org/2402173002
Cr-Commit-Position: refs/heads/master@{#424294}

[modify] https://crrev.com/daad1d10fb3932de760bdc3688e96c947d3c7b18/blimp/client/core/compositor/blimp_compositor.cc
[modify] https://crrev.com/daad1d10fb3932de760bdc3688e96c947d3c7b18/blimp/client/core/compositor/blimp_compositor.h
[modify] https://crrev.com/daad1d10fb3932de760bdc3688e96c947d3c7b18/blimp/client/core/compositor/blimp_compositor_frame_sink.cc
[modify] https://crrev.com/daad1d10fb3932de760bdc3688e96c947d3c7b18/blimp/client/core/compositor/blimp_compositor_frame_sink.h
[modify] https://crrev.com/daad1d10fb3932de760bdc3688e96c947d3c7b18/blimp/client/core/compositor/blimp_compositor_frame_sink_proxy.h
[modify] https://crrev.com/daad1d10fb3932de760bdc3688e96c947d3c7b18/blimp/client/core/compositor/blimp_compositor_frame_sink_unittest.cc
[modify] https://crrev.com/daad1d10fb3932de760bdc3688e96c947d3c7b18/blimp/client/support/compositor/blimp_embedder_compositor.cc
[modify] https://crrev.com/daad1d10fb3932de760bdc3688e96c947d3c7b18/cc/output/compositor_frame_sink.cc
[modify] https://crrev.com/daad1d10fb3932de760bdc3688e96c947d3c7b18/cc/output/compositor_frame_sink.h
[modify] https://crrev.com/daad1d10fb3932de760bdc3688e96c947d3c7b18/cc/output/output_surface.cc
[modify] https://crrev.com/daad1d10fb3932de760bdc3688e96c947d3c7b18/cc/output/output_surface.h
[modify] https://crrev.com/daad1d10fb3932de760bdc3688e96c947d3c7b18/cc/surfaces/direct_compositor_frame_sink.cc
[modify] https://crrev.com/daad1d10fb3932de760bdc3688e96c947d3c7b18/cc/test/fake_compositor_frame_sink.cc
[modify] https://crrev.com/daad1d10fb3932de760bdc3688e96c947d3c7b18/cc/test/fake_compositor_frame_sink.h
[modify] https://crrev.com/daad1d10fb3932de760bdc3688e96c947d3c7b18/cc/test/fake_output_surface.cc
[modify] https://crrev.com/daad1d10fb3932de760bdc3688e96c947d3c7b18/cc/test/fake_output_surface.h
[modify] https://crrev.com/daad1d10fb3932de760bdc3688e96c947d3c7b18/cc/test/layer_tree_test.cc
[modify] https://crrev.com/daad1d10fb3932de760bdc3688e96c947d3c7b18/cc/test/pixel_test_output_surface.cc
[modify] https://crrev.com/daad1d10fb3932de760bdc3688e96c947d3c7b18/cc/test/pixel_test_output_surface.h
[modify] https://crrev.com/daad1d10fb3932de760bdc3688e96c947d3c7b18/cc/test/test_compositor_frame_sink.cc
[modify] https://crrev.com/daad1d10fb3932de760bdc3688e96c947d3c7b18/cc/test/test_compositor_frame_sink.h
[modify] https://crrev.com/daad1d10fb3932de760bdc3688e96c947d3c7b18/content/browser/compositor/browser_compositor_output_surface.h
[modify] https://crrev.com/daad1d10fb3932de760bdc3688e96c947d3c7b18/content/browser/compositor/gpu_browser_compositor_output_surface.cc
[modify] https://crrev.com/daad1d10fb3932de760bdc3688e96c947d3c7b18/content/browser/compositor/gpu_browser_compositor_output_surface.h
[modify] https://crrev.com/daad1d10fb3932de760bdc3688e96c947d3c7b18/content/browser/compositor/gpu_process_transport_factory.cc
[modify] https://crrev.com/daad1d10fb3932de760bdc3688e96c947d3c7b18/content/browser/compositor/offscreen_browser_compositor_output_surface.h
[modify] https://crrev.com/daad1d10fb3932de760bdc3688e96c947d3c7b18/content/browser/compositor/reflector_impl_unittest.cc
[modify] https://crrev.com/daad1d10fb3932de760bdc3688e96c947d3c7b18/content/browser/compositor/software_browser_compositor_output_surface.cc
[modify] https://crrev.com/daad1d10fb3932de760bdc3688e96c947d3c7b18/content/browser/compositor/software_browser_compositor_output_surface.h
[modify] https://crrev.com/daad1d10fb3932de760bdc3688e96c947d3c7b18/content/browser/compositor/software_browser_compositor_output_surface_unittest.cc
[modify] https://crrev.com/daad1d10fb3932de760bdc3688e96c947d3c7b18/content/browser/compositor/vulkan_browser_compositor_output_surface.cc
[modify] https://crrev.com/daad1d10fb3932de760bdc3688e96c947d3c7b18/content/browser/compositor/vulkan_browser_compositor_output_surface.h
[modify] https://crrev.com/daad1d10fb3932de760bdc3688e96c947d3c7b18/content/browser/renderer_host/compositor_impl_android.cc

Project Member

Comment 74 by bugdroid1@chromium.org, Oct 11 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/8fa1509c2848015f60d931090d6da9720a98fec2

commit 8fa1509c2848015f60d931090d6da9720a98fec2
Author: danakj <danakj@chromium.org>
Date: Tue Oct 11 00:48:03 2016

cc: Stop calling DetachFromClient if bind failed.

And remove DetachFromClientInternal in the process. This removes any
branching happening in DetachFromClient subclass overrides based on
bind happening or not.

R=enne@chromium.org, khushalsagar@chromium.org, boliu@chromium.org
TBR=sky
BUG=606056
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel

Review-Url: https://codereview.chromium.org/2404993002
Cr-Commit-Position: refs/heads/master@{#424310}

[modify] https://crrev.com/8fa1509c2848015f60d931090d6da9720a98fec2/blimp/client/core/compositor/blimp_compositor_frame_sink.cc
[modify] https://crrev.com/8fa1509c2848015f60d931090d6da9720a98fec2/blimp/client/core/compositor/blimp_compositor_frame_sink.h
[modify] https://crrev.com/8fa1509c2848015f60d931090d6da9720a98fec2/cc/output/compositor_frame_sink.cc
[modify] https://crrev.com/8fa1509c2848015f60d931090d6da9720a98fec2/cc/output/compositor_frame_sink.h
[modify] https://crrev.com/8fa1509c2848015f60d931090d6da9720a98fec2/cc/output/output_surface.h
[modify] https://crrev.com/8fa1509c2848015f60d931090d6da9720a98fec2/cc/surfaces/direct_compositor_frame_sink.cc
[modify] https://crrev.com/8fa1509c2848015f60d931090d6da9720a98fec2/cc/surfaces/direct_compositor_frame_sink_unittest.cc
[modify] https://crrev.com/8fa1509c2848015f60d931090d6da9720a98fec2/cc/test/fake_compositor_frame_sink.cc
[modify] https://crrev.com/8fa1509c2848015f60d931090d6da9720a98fec2/cc/test/fake_compositor_frame_sink.h
[modify] https://crrev.com/8fa1509c2848015f60d931090d6da9720a98fec2/content/renderer/android/synchronous_compositor_frame_sink.cc
[modify] https://crrev.com/8fa1509c2848015f60d931090d6da9720a98fec2/content/renderer/android/synchronous_compositor_frame_sink.h
[modify] https://crrev.com/8fa1509c2848015f60d931090d6da9720a98fec2/content/renderer/gpu/renderer_compositor_frame_sink.cc
[modify] https://crrev.com/8fa1509c2848015f60d931090d6da9720a98fec2/services/ui/public/cpp/compositor_frame_sink.cc

Project Member

Comment 75 by bugdroid1@chromium.org, Oct 14 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/9d124421c3113ae9e87d92570a0d187a72d4154a

commit 9d124421c3113ae9e87d92570a0d187a72d4154a
Author: danakj <danakj@chromium.org>
Date: Fri Oct 14 03:15:08 2016

cc: Rename SwapBuffers on CompositorFrameSink to SubmitCompositorFrame

This renames everything to do with "Swap" in the layer/delegating
compositors to be "Submit" instead, including inside LayerTreeHost
and the Scheduler.

CompositorFrameSink::SwapBuffers -> SubmitCompositorFrame
CompositorFrameSinkClient::DidSwapBuffersComplete ->
    DidReceiveCompositorFrameAck
LayerTreeHost::DidCompleteSwapBuffers ->
    DidReceiveCompositorFrameAck
ScheduledActionDrawAndSwap -> ScheduledActionSubmitCompositorFrame
SwapThrottled -> SubmitThrottled

R=enne@chromium.org, khushalsagar@chromium.org, sunnyps@chromium.org, sky@chromium.org, boliu@chromium.org
BUG=606056
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel

Review-Url: https://codereview.chromium.org/2409923002
Cr-Commit-Position: refs/heads/master@{#425245}

[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/blimp/client/app/compositor/browser_compositor.cc
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/blimp/client/app/compositor/browser_compositor.h
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/blimp/client/core/compositor/blimp_compositor.cc
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/blimp/client/core/compositor/blimp_compositor.h
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/blimp/client/core/compositor/blimp_compositor_frame_sink.cc
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/blimp/client/core/compositor/blimp_compositor_frame_sink.h
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/blimp/client/core/compositor/blimp_compositor_frame_sink_proxy.h
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/blimp/client/core/compositor/blimp_compositor_frame_sink_unittest.cc
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/blimp/client/support/compositor/blimp_embedder_compositor.h
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/cc/blimp/layer_tree_host_remote.cc
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/cc/blimp/layer_tree_host_remote.h
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/cc/blimp/layer_tree_host_remote_unittest.cc
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/cc/output/compositor_frame_sink.cc
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/cc/output/compositor_frame_sink.h
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/cc/output/compositor_frame_sink_client.h
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/cc/output/compositor_frame_sink_unittest.cc
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/cc/scheduler/compositor_timing_history.cc
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/cc/scheduler/compositor_timing_history.h
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/cc/scheduler/scheduler.cc
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/cc/scheduler/scheduler.h
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/cc/scheduler/scheduler_settings.cc
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/cc/scheduler/scheduler_settings.h
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/cc/scheduler/scheduler_state_machine.cc
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/cc/scheduler/scheduler_state_machine.h
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/cc/scheduler/scheduler_state_machine_unittest.cc
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/cc/scheduler/scheduler_unittest.cc
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/cc/surfaces/direct_compositor_frame_sink.cc
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/cc/surfaces/direct_compositor_frame_sink.h
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/cc/surfaces/direct_compositor_frame_sink_unittest.cc
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/cc/test/fake_channel_impl.h
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/cc/test/fake_compositor_frame_sink.cc
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/cc/test/fake_compositor_frame_sink.h
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/cc/test/fake_compositor_frame_sink_client.cc
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/cc/test/fake_compositor_frame_sink_client.h
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/cc/test/fake_layer_tree_host_impl_client.h
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/cc/test/layer_tree_host_remote_for_testing.cc
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/cc/test/layer_tree_host_remote_for_testing.h
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/cc/test/layer_tree_test.cc
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/cc/test/scheduler_test_common.h
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/cc/test/stub_layer_tree_host_client.h
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/cc/test/stub_layer_tree_host_single_thread_client.h
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/cc/test/test_compositor_frame_sink.cc
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/cc/test/test_compositor_frame_sink.h
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/cc/test/test_hooks.h
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/cc/trees/channel_impl.h
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/cc/trees/layer_tree_host_client.h
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/cc/trees/layer_tree_host_impl.cc
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/cc/trees/layer_tree_host_impl.h
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/cc/trees/layer_tree_host_impl_unittest.cc
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/cc/trees/layer_tree_host_in_process.h
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/cc/trees/layer_tree_host_single_thread_client.h
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/cc/trees/layer_tree_host_unittest.cc
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/cc/trees/layer_tree_host_unittest_remote_server.cc
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/cc/trees/proxy_impl.cc
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/cc/trees/proxy_impl.h
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/cc/trees/proxy_main.cc
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/cc/trees/proxy_main.h
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/cc/trees/remote_channel_impl.cc
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/cc/trees/remote_channel_impl.h
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/cc/trees/remote_channel_main.cc
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/cc/trees/remote_channel_main.h
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/cc/trees/single_thread_proxy.cc
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/cc/trees/single_thread_proxy.h
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/cc/trees/threaded_channel.cc
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/cc/trees/threaded_channel.h
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/content/browser/renderer_host/compositor_impl_android.cc
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/content/browser/renderer_host/compositor_impl_android.h
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/content/renderer/android/synchronous_compositor_frame_sink.cc
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/content/renderer/android/synchronous_compositor_frame_sink.h
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/content/renderer/android/synchronous_compositor_proxy.cc
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/content/renderer/android/synchronous_compositor_proxy.h
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/content/renderer/gpu/render_widget_compositor.cc
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/content/renderer/gpu/render_widget_compositor.h
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/content/renderer/gpu/renderer_compositor_frame_sink.cc
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/content/renderer/gpu/renderer_compositor_frame_sink.h
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/services/ui/public/cpp/compositor_frame_sink.cc
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/services/ui/public/cpp/compositor_frame_sink.h
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/third_party/WebKit/Source/platform/testing/WebLayerTreeViewImplForTesting.h
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/ui/compositor/compositor.cc
[modify] https://crrev.com/9d124421c3113ae9e87d92570a0d187a72d4154a/ui/compositor/compositor.h

Project Member

Comment 76 by bugdroid1@chromium.org, Oct 14 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/440bc6802b846f245be07be883281e8fb0840854

commit 440bc6802b846f245be07be883281e8fb0840854
Author: danakj <danakj@chromium.org>
Date: Fri Oct 14 19:56:48 2016

cc: Clean up OutputSurfaceClient.

Renames DidSwapBuffersComplete to DidReceiveSwapBuffersAck which
mirrors the naming used for CompositorFrameSink but for swap.

Removes methods that are only for the layer compositor and not part
of the actual OutputSurface interaction.

R=boliu@chromium.org, enne@chromium.org
BUG=606056
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel

Review-Url: https://codereview.chromium.org/2403373002
Cr-Commit-Position: refs/heads/master@{#425442}

[modify] https://crrev.com/440bc6802b846f245be07be883281e8fb0840854/blimp/client/support/compositor/blimp_embedder_compositor.cc
[modify] https://crrev.com/440bc6802b846f245be07be883281e8fb0840854/cc/output/output_surface.h
[modify] https://crrev.com/440bc6802b846f245be07be883281e8fb0840854/cc/output/output_surface_client.h
[modify] https://crrev.com/440bc6802b846f245be07be883281e8fb0840854/cc/output/output_surface_unittest.cc
[modify] https://crrev.com/440bc6802b846f245be07be883281e8fb0840854/cc/output/overlay_unittest.cc
[modify] https://crrev.com/440bc6802b846f245be07be883281e8fb0840854/cc/surfaces/display.cc
[modify] https://crrev.com/440bc6802b846f245be07be883281e8fb0840854/cc/surfaces/display.h
[modify] https://crrev.com/440bc6802b846f245be07be883281e8fb0840854/cc/surfaces/display_scheduler.cc
[modify] https://crrev.com/440bc6802b846f245be07be883281e8fb0840854/cc/surfaces/display_scheduler.h
[modify] https://crrev.com/440bc6802b846f245be07be883281e8fb0840854/cc/surfaces/display_scheduler_unittest.cc
[modify] https://crrev.com/440bc6802b846f245be07be883281e8fb0840854/cc/test/fake_output_surface.cc
[modify] https://crrev.com/440bc6802b846f245be07be883281e8fb0840854/cc/test/fake_output_surface.h
[modify] https://crrev.com/440bc6802b846f245be07be883281e8fb0840854/cc/test/fake_output_surface_client.cc
[modify] https://crrev.com/440bc6802b846f245be07be883281e8fb0840854/cc/test/fake_output_surface_client.h
[modify] https://crrev.com/440bc6802b846f245be07be883281e8fb0840854/cc/test/pixel_test_output_surface.cc
[modify] https://crrev.com/440bc6802b846f245be07be883281e8fb0840854/content/browser/compositor/gpu_browser_compositor_output_surface.cc
[modify] https://crrev.com/440bc6802b846f245be07be883281e8fb0840854/content/browser/compositor/offscreen_browser_compositor_output_surface.cc
[modify] https://crrev.com/440bc6802b846f245be07be883281e8fb0840854/content/browser/compositor/software_browser_compositor_output_surface.cc
[modify] https://crrev.com/440bc6802b846f245be07be883281e8fb0840854/content/browser/compositor/vulkan_browser_compositor_output_surface.cc
[modify] https://crrev.com/440bc6802b846f245be07be883281e8fb0840854/content/browser/renderer_host/compositor_impl_android.cc
[modify] https://crrev.com/440bc6802b846f245be07be883281e8fb0840854/services/ui/surfaces/direct_output_surface.cc
[modify] https://crrev.com/440bc6802b846f245be07be883281e8fb0840854/services/ui/surfaces/direct_output_surface_ozone.cc
[modify] https://crrev.com/440bc6802b846f245be07be883281e8fb0840854/ui/compositor/test/in_process_context_factory.cc

Project Member

Comment 77 by bugdroid1@chromium.org, Oct 22 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/a08ca75a2ae7221404e95970087fe45224c37e18

commit a08ca75a2ae7221404e95970087fe45224c37e18
Author: danakj <danakj@chromium.org>
Date: Sat Oct 22 02:35:35 2016

cc: Fix comments in OutputSurface, it is no longer for layer compositor

R=enne@chromium.org
BUG=606056
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel

Review-Url: https://chromiumcodereview.appspot.com/2444603002
Cr-Commit-Position: refs/heads/master@{#426955}

[modify] https://crrev.com/a08ca75a2ae7221404e95970087fe45224c37e18/cc/output/output_surface.h

Project Member

Comment 78 by bugdroid1@chromium.org, Oct 22 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/6c872fc0e1e9b381615f325e33463e16f936960c

commit 6c872fc0e1e9b381615f325e33463e16f936960c
Author: danakj <danakj@chromium.org>
Date: Sat Oct 22 04:29:49 2016

cc: Remove "SwapBuffers" naming from LayerTreeHostSingleThreadClient

And clean up uses of this interface.

DidAbortSwapBuffers becomes DidLoseCompositorFrameSink. Android uses
this to tell the browser that it has no pending frames and can make
a new frame. Ash was using this to end crossfade maximize animations.
I've removed this and dropped "aborting" compositing from the Compositor
observer.

DidPostSwapBuffers becomes DidSubmitCompositorFrame which represents
itself better. RenderWidgetCompositor was telling RenderWidget about
this just to make a trace event, so deleted that.

DidReceiveCompositorFrameAck is duplicated in LayerTreeHostClient
and was not actually called on this interface anymore, so just deleted
it.

R=piman@chromium.org
TBR=sky
BUG=606056
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel

Review-Url: https://chromiumcodereview.appspot.com/2444563002
Cr-Commit-Position: refs/heads/master@{#426969}

[modify] https://crrev.com/6c872fc0e1e9b381615f325e33463e16f936960c/ash/wm/window_animations.cc
[modify] https://crrev.com/6c872fc0e1e9b381615f325e33463e16f936960c/blimp/client/support/compositor/blimp_embedder_compositor.h
[modify] https://crrev.com/6c872fc0e1e9b381615f325e33463e16f936960c/cc/test/layer_tree_test.cc
[modify] https://crrev.com/6c872fc0e1e9b381615f325e33463e16f936960c/cc/test/stub_layer_tree_host_single_thread_client.h
[modify] https://crrev.com/6c872fc0e1e9b381615f325e33463e16f936960c/cc/trees/layer_tree_host_single_thread_client.h
[modify] https://crrev.com/6c872fc0e1e9b381615f325e33463e16f936960c/cc/trees/single_thread_proxy.cc
[modify] https://crrev.com/6c872fc0e1e9b381615f325e33463e16f936960c/cc/trees/single_thread_proxy.h
[modify] https://crrev.com/6c872fc0e1e9b381615f325e33463e16f936960c/content/browser/renderer_host/browser_compositor_view_mac.mm
[modify] https://crrev.com/6c872fc0e1e9b381615f325e33463e16f936960c/content/browser/renderer_host/compositor_impl_android.cc
[modify] https://crrev.com/6c872fc0e1e9b381615f325e33463e16f936960c/content/browser/renderer_host/compositor_impl_android.h
[modify] https://crrev.com/6c872fc0e1e9b381615f325e33463e16f936960c/content/browser/renderer_host/delegated_frame_host.cc
[modify] https://crrev.com/6c872fc0e1e9b381615f325e33463e16f936960c/content/browser/renderer_host/delegated_frame_host.h
[modify] https://crrev.com/6c872fc0e1e9b381615f325e33463e16f936960c/content/renderer/gpu/render_widget_compositor.cc
[modify] https://crrev.com/6c872fc0e1e9b381615f325e33463e16f936960c/content/renderer/gpu/render_widget_compositor.h
[modify] https://crrev.com/6c872fc0e1e9b381615f325e33463e16f936960c/content/renderer/gpu/render_widget_compositor_delegate.h
[modify] https://crrev.com/6c872fc0e1e9b381615f325e33463e16f936960c/content/renderer/gpu/render_widget_compositor_unittest.cc
[modify] https://crrev.com/6c872fc0e1e9b381615f325e33463e16f936960c/content/renderer/render_widget.cc
[modify] https://crrev.com/6c872fc0e1e9b381615f325e33463e16f936960c/content/renderer/render_widget.h
[modify] https://crrev.com/6c872fc0e1e9b381615f325e33463e16f936960c/content/renderer/render_widget_browsertest.cc
[modify] https://crrev.com/6c872fc0e1e9b381615f325e33463e16f936960c/third_party/WebKit/Source/platform/testing/WebLayerTreeViewImplForTesting.h
[modify] https://crrev.com/6c872fc0e1e9b381615f325e33463e16f936960c/ui/compositor/compositor.cc
[modify] https://crrev.com/6c872fc0e1e9b381615f325e33463e16f936960c/ui/compositor/compositor.h
[modify] https://crrev.com/6c872fc0e1e9b381615f325e33463e16f936960c/ui/compositor/compositor_observer.h
[modify] https://crrev.com/6c872fc0e1e9b381615f325e33463e16f936960c/ui/compositor/layer_unittest.cc
[modify] https://crrev.com/6c872fc0e1e9b381615f325e33463e16f936960c/ui/compositor/test/draw_waiter_for_test.cc
[modify] https://crrev.com/6c872fc0e1e9b381615f325e33463e16f936960c/ui/compositor/test/draw_waiter_for_test.h
[modify] https://crrev.com/6c872fc0e1e9b381615f325e33463e16f936960c/ui/views/controls/scroll_view_unittest.cc

Project Member

Comment 79 by bugdroid1@chromium.org, Oct 25 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/7bbd659851f812efc44d37e36315e9524cdae44b

commit 7bbd659851f812efc44d37e36315e9524cdae44b
Author: danakj <danakj@chromium.org>
Date: Tue Oct 25 21:53:35 2016

cc: Make OutputSurface entirely live on one thread in tests.

OutputSurface is single-threaded but it ends up being created on the
main thread and used on compositor thread in cc unit tests and layout
tests, where it is directly attached to the renderer compositor.

Rework these tests so OutputSurface is only on a single thread to
reduce complexity of the class (will allow removal of BindToClient
entirely).

R=enne@chromium.org
BUG=606056
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel

Review-Url: https://codereview.chromium.org/2445553002
Cr-Commit-Position: refs/heads/master@{#427495}

[modify] https://crrev.com/7bbd659851f812efc44d37e36315e9524cdae44b/cc/layers/texture_layer_unittest.cc
[modify] https://crrev.com/7bbd659851f812efc44d37e36315e9524cdae44b/cc/test/layer_tree_pixel_test.cc
[modify] https://crrev.com/7bbd659851f812efc44d37e36315e9524cdae44b/cc/test/layer_tree_pixel_test.h
[modify] https://crrev.com/7bbd659851f812efc44d37e36315e9524cdae44b/cc/test/layer_tree_test.cc
[modify] https://crrev.com/7bbd659851f812efc44d37e36315e9524cdae44b/cc/test/layer_tree_test.h
[modify] https://crrev.com/7bbd659851f812efc44d37e36315e9524cdae44b/cc/test/test_compositor_frame_sink.cc
[modify] https://crrev.com/7bbd659851f812efc44d37e36315e9524cdae44b/cc/test/test_compositor_frame_sink.h
[modify] https://crrev.com/7bbd659851f812efc44d37e36315e9524cdae44b/cc/test/test_hooks.h
[modify] https://crrev.com/7bbd659851f812efc44d37e36315e9524cdae44b/cc/trees/layer_tree_host_impl_unittest.cc
[modify] https://crrev.com/7bbd659851f812efc44d37e36315e9524cdae44b/cc/trees/layer_tree_host_unittest.cc
[modify] https://crrev.com/7bbd659851f812efc44d37e36315e9524cdae44b/cc/trees/layer_tree_host_unittest_copyrequest.cc
[modify] https://crrev.com/7bbd659851f812efc44d37e36315e9524cdae44b/content/test/layouttest_support.cc

Project Member

Comment 80 by bugdroid1@chromium.org, Oct 25 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/94486a41405a0a792a0aed2324b9a841d536d853

commit 94486a41405a0a792a0aed2324b9a841d536d853
Author: danakj <danakj@chromium.org>
Date: Tue Oct 25 22:31:12 2016

cc: Make OutputSurface::BindToClient pure virtual and not return bool

The function does not need to return bool and we DCHECK it is always
true already, since the ContextProvider given to the OutputSurface can
be initialized before even creating the OutputSurface as it is not
used across threads anymore.

Since it is not cross-thread the base class code in BindToClient can
move to its constructor and the method can become pure virtual.

Drops the DidLoseOutputSurface from the OutputSurfaceClient interface
so that every implementation doesn't need to bind it - esp since only
OutputSurfaces with a context can even get lost. Instead have Display
listen to the context for loss.

And some random code cleanups in AndroidOutputSurface since it was
working around multiple threads that don't exist.

R=enne@chromium.org, piman@chromium.org
BUG=606056
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel

Review-Url: https://codereview.chromium.org/2443003004
Cr-Commit-Position: refs/heads/master@{#427511}

[modify] https://crrev.com/94486a41405a0a792a0aed2324b9a841d536d853/android_webview/browser/parent_output_surface.cc
[modify] https://crrev.com/94486a41405a0a792a0aed2324b9a841d536d853/android_webview/browser/parent_output_surface.h
[modify] https://crrev.com/94486a41405a0a792a0aed2324b9a841d536d853/android_webview/browser/surfaces_instance.cc
[modify] https://crrev.com/94486a41405a0a792a0aed2324b9a841d536d853/android_webview/browser/surfaces_instance.h
[modify] https://crrev.com/94486a41405a0a792a0aed2324b9a841d536d853/blimp/client/support/compositor/blimp_embedder_compositor.cc
[modify] https://crrev.com/94486a41405a0a792a0aed2324b9a841d536d853/cc/BUILD.gn
[modify] https://crrev.com/94486a41405a0a792a0aed2324b9a841d536d853/cc/output/context_provider.h
[modify] https://crrev.com/94486a41405a0a792a0aed2324b9a841d536d853/cc/output/gl_renderer_unittest.cc
[modify] https://crrev.com/94486a41405a0a792a0aed2324b9a841d536d853/cc/output/output_surface.cc
[modify] https://crrev.com/94486a41405a0a792a0aed2324b9a841d536d853/cc/output/output_surface.h
[modify] https://crrev.com/94486a41405a0a792a0aed2324b9a841d536d853/cc/output/output_surface_client.h
[delete] https://crrev.com/1f59c2aac5f896e23613af618fbe8444a63911f8/cc/output/output_surface_unittest.cc
[modify] https://crrev.com/94486a41405a0a792a0aed2324b9a841d536d853/cc/output/overlay_unittest.cc
[modify] https://crrev.com/94486a41405a0a792a0aed2324b9a841d536d853/cc/output/software_renderer_unittest.cc
[modify] https://crrev.com/94486a41405a0a792a0aed2324b9a841d536d853/cc/surfaces/display.cc
[modify] https://crrev.com/94486a41405a0a792a0aed2324b9a841d536d853/cc/surfaces/display.h
[modify] https://crrev.com/94486a41405a0a792a0aed2324b9a841d536d853/cc/surfaces/display_unittest.cc
[modify] https://crrev.com/94486a41405a0a792a0aed2324b9a841d536d853/cc/test/fake_output_surface.cc
[modify] https://crrev.com/94486a41405a0a792a0aed2324b9a841d536d853/cc/test/fake_output_surface.h
[modify] https://crrev.com/94486a41405a0a792a0aed2324b9a841d536d853/cc/test/fake_output_surface_client.cc
[modify] https://crrev.com/94486a41405a0a792a0aed2324b9a841d536d853/cc/test/fake_output_surface_client.h
[modify] https://crrev.com/94486a41405a0a792a0aed2324b9a841d536d853/cc/test/layer_tree_pixel_test.cc
[modify] https://crrev.com/94486a41405a0a792a0aed2324b9a841d536d853/cc/test/pixel_test_output_surface.cc
[modify] https://crrev.com/94486a41405a0a792a0aed2324b9a841d536d853/cc/test/pixel_test_output_surface.h
[modify] https://crrev.com/94486a41405a0a792a0aed2324b9a841d536d853/cc/trees/layer_tree_host_unittest.cc
[modify] https://crrev.com/94486a41405a0a792a0aed2324b9a841d536d853/cc/trees/layer_tree_host_unittest_copyrequest.cc
[modify] https://crrev.com/94486a41405a0a792a0aed2324b9a841d536d853/content/browser/compositor/browser_compositor_output_surface.cc
[modify] https://crrev.com/94486a41405a0a792a0aed2324b9a841d536d853/content/browser/compositor/gpu_browser_compositor_output_surface.cc
[modify] https://crrev.com/94486a41405a0a792a0aed2324b9a841d536d853/content/browser/compositor/gpu_browser_compositor_output_surface.h
[modify] https://crrev.com/94486a41405a0a792a0aed2324b9a841d536d853/content/browser/compositor/mus_browser_compositor_output_surface.cc
[modify] https://crrev.com/94486a41405a0a792a0aed2324b9a841d536d853/content/browser/compositor/mus_browser_compositor_output_surface.h
[modify] https://crrev.com/94486a41405a0a792a0aed2324b9a841d536d853/content/browser/compositor/offscreen_browser_compositor_output_surface.cc
[modify] https://crrev.com/94486a41405a0a792a0aed2324b9a841d536d853/content/browser/compositor/offscreen_browser_compositor_output_surface.h
[modify] https://crrev.com/94486a41405a0a792a0aed2324b9a841d536d853/content/browser/compositor/reflector_impl_unittest.cc
[modify] https://crrev.com/94486a41405a0a792a0aed2324b9a841d536d853/content/browser/compositor/software_browser_compositor_output_surface.cc
[modify] https://crrev.com/94486a41405a0a792a0aed2324b9a841d536d853/content/browser/compositor/software_browser_compositor_output_surface.h
[modify] https://crrev.com/94486a41405a0a792a0aed2324b9a841d536d853/content/browser/compositor/software_browser_compositor_output_surface_unittest.cc
[modify] https://crrev.com/94486a41405a0a792a0aed2324b9a841d536d853/content/browser/renderer_host/compositor_impl_android.cc
[modify] https://crrev.com/94486a41405a0a792a0aed2324b9a841d536d853/content/browser/renderer_host/compositor_impl_android.h
[modify] https://crrev.com/94486a41405a0a792a0aed2324b9a841d536d853/content/renderer/android/synchronous_compositor_frame_sink.cc
[modify] https://crrev.com/94486a41405a0a792a0aed2324b9a841d536d853/content/test/layouttest_support.cc
[modify] https://crrev.com/94486a41405a0a792a0aed2324b9a841d536d853/services/ui/surfaces/direct_output_surface.cc
[modify] https://crrev.com/94486a41405a0a792a0aed2324b9a841d536d853/services/ui/surfaces/direct_output_surface.h
[modify] https://crrev.com/94486a41405a0a792a0aed2324b9a841d536d853/services/ui/surfaces/direct_output_surface_ozone.cc
[modify] https://crrev.com/94486a41405a0a792a0aed2324b9a841d536d853/services/ui/surfaces/direct_output_surface_ozone.h
[modify] https://crrev.com/94486a41405a0a792a0aed2324b9a841d536d853/ui/compositor/test/in_process_context_factory.cc

Status: Fixed (was: Assigned)
Project Member

Comment 82 by bugdroid1@chromium.org, Oct 27 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/a7e03fe1f42b541fa54b218808c1354fbf498e7e

commit a7e03fe1f42b541fa54b218808c1354fbf498e7e
Author: danakj <danakj@chromium.org>
Date: Thu Oct 06 20:22:03 2016

cc: Remove SurfaceSize from OutputSurface.

SurfaceSize is no longer needed that the external viewport is always
at 0,0 and no output surfaces override the size returned there except
cc unittests. So make them stop and remove the getter.

This kinda points out that GLFrameData's size is redundant with the
size given to Reshape. For now I'm DCHECKing that they are the same
to document (and confirm) this.

Also adds DCHECKs that the viewport rect is at 0,0 and the clip rect
given to DirectRenderer matches the viewport rect since that is what
Display does now. Followups can remove code to not need DCHECKs.

R=enne@chromium.org
BUG=606056
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel

Review-Url: https://codereview.chromium.org/2392183003
Cr-Commit-Position: refs/heads/master@{#423650}

[modify] https://crrev.com/a7e03fe1f42b541fa54b218808c1354fbf498e7e/cc/BUILD.gn
[modify] https://crrev.com/a7e03fe1f42b541fa54b218808c1354fbf498e7e/cc/output/direct_renderer.cc
[modify] https://crrev.com/a7e03fe1f42b541fa54b218808c1354fbf498e7e/cc/output/direct_renderer.h
[modify] https://crrev.com/a7e03fe1f42b541fa54b218808c1354fbf498e7e/cc/output/gl_renderer.cc
[modify] https://crrev.com/a7e03fe1f42b541fa54b218808c1354fbf498e7e/cc/output/gl_renderer_unittest.cc
[modify] https://crrev.com/a7e03fe1f42b541fa54b218808c1354fbf498e7e/cc/output/output_surface.h
[modify] https://crrev.com/a7e03fe1f42b541fa54b218808c1354fbf498e7e/cc/output/renderer_pixeltest.cc
[modify] https://crrev.com/a7e03fe1f42b541fa54b218808c1354fbf498e7e/cc/test/data/background_filter_on_scaled_layer_gl.png
[modify] https://crrev.com/a7e03fe1f42b541fa54b218808c1354fbf498e7e/cc/test/data/rotated_drop_shadow_filter_gl.png
[modify] https://crrev.com/a7e03fe1f42b541fa54b218808c1354fbf498e7e/cc/test/data/rotated_filter_gl.png
[modify] https://crrev.com/a7e03fe1f42b541fa54b218808c1354fbf498e7e/cc/test/layer_tree_pixel_test.cc
[modify] https://crrev.com/a7e03fe1f42b541fa54b218808c1354fbf498e7e/cc/test/pixel_test.cc
[modify] https://crrev.com/a7e03fe1f42b541fa54b218808c1354fbf498e7e/cc/test/pixel_test.h
[delete] https://crrev.com/a4461011bd1331b61f27ad8fc2e65e53cad92436/cc/test/pixel_test_software_output_device.cc
[delete] https://crrev.com/a4461011bd1331b61f27ad8fc2e65e53cad92436/cc/test/pixel_test_software_output_device.h
[modify] https://crrev.com/a7e03fe1f42b541fa54b218808c1354fbf498e7e/content/browser/compositor/gpu_browser_compositor_output_surface.cc
[modify] https://crrev.com/a7e03fe1f42b541fa54b218808c1354fbf498e7e/content/browser/compositor/gpu_surfaceless_browser_compositor_output_surface.cc
[modify] https://crrev.com/a7e03fe1f42b541fa54b218808c1354fbf498e7e/content/browser/compositor/gpu_surfaceless_browser_compositor_output_surface.h
[modify] https://crrev.com/a7e03fe1f42b541fa54b218808c1354fbf498e7e/content/browser/compositor/offscreen_browser_compositor_output_surface.cc
[modify] https://crrev.com/a7e03fe1f42b541fa54b218808c1354fbf498e7e/content/browser/compositor/reflector_impl.cc
[modify] https://crrev.com/a7e03fe1f42b541fa54b218808c1354fbf498e7e/content/browser/compositor/reflector_impl.h
[modify] https://crrev.com/a7e03fe1f42b541fa54b218808c1354fbf498e7e/content/browser/compositor/reflector_impl_unittest.cc
[modify] https://crrev.com/a7e03fe1f42b541fa54b218808c1354fbf498e7e/services/ui/surfaces/direct_output_surface_ozone.cc
[modify] https://crrev.com/a7e03fe1f42b541fa54b218808c1354fbf498e7e/services/ui/surfaces/direct_output_surface_ozone.h

Project Member

Comment 83 by bugdroid1@chromium.org, Oct 27 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/ff1c583ed4f2d70249f3700515e26471d59fa9cf

commit ff1c583ed4f2d70249f3700515e26471d59fa9cf
Author: danakj <danakj@chromium.org>
Date: Thu Oct 06 20:36:26 2016

cc: Replace viewport/clip rect with a viewport size for DirectRenderer

The viewport rect is always at 0,0 and the clip rect is always the
viewport rect now that WebView does external viewport/clip things via
embedding a SurfaceDrawQuad into another surface. So express this in
the code.

R=enne@chromium.org
BUG=606056
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel

Review-Url: https://codereview.chromium.org/2399713003
Cr-Commit-Position: refs/heads/master@{#423657}

[modify] https://crrev.com/ff1c583ed4f2d70249f3700515e26471d59fa9cf/cc/output/direct_renderer.cc
[modify] https://crrev.com/ff1c583ed4f2d70249f3700515e26471d59fa9cf/cc/output/direct_renderer.h
[modify] https://crrev.com/ff1c583ed4f2d70249f3700515e26471d59fa9cf/cc/output/gl_renderer.cc
[modify] https://crrev.com/ff1c583ed4f2d70249f3700515e26471d59fa9cf/cc/output/gl_renderer_unittest.cc
[modify] https://crrev.com/ff1c583ed4f2d70249f3700515e26471d59fa9cf/cc/output/overlay_unittest.cc
[modify] https://crrev.com/ff1c583ed4f2d70249f3700515e26471d59fa9cf/cc/output/software_renderer_unittest.cc
[modify] https://crrev.com/ff1c583ed4f2d70249f3700515e26471d59fa9cf/cc/surfaces/display.cc
[modify] https://crrev.com/ff1c583ed4f2d70249f3700515e26471d59fa9cf/cc/test/pixel_test.cc

Project Member

Comment 84 by bugdroid1@chromium.org, Oct 27 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/29e2540ac9bf025bb174d55543b7596e550920cd

commit 29e2540ac9bf025bb174d55543b7596e550920cd
Author: danakj <danakj@chromium.org>
Date: Thu Sep 01 21:13:13 2016

Avoid making the shared main thread context if we won't use it.

When deciding if HTMLCanvasElement should be accelerated we changed
the code to get the shared main thread context before making the
decision because it's part of the decision. However, for most of the
things we decide on (such as are-we-using-display-list-canvas) we
don't care about the context. We only care once we decide we do want
to use it, then verify it's not using swiftshader.

So, defer getting/creating the shared main thread context until we
know we want to accelerate, then just fail to accelerate if swiftshader.

To make this logic more clear, I split the createImageBufferSurface()
method into createAcceleratedImageBufferSurface() and
createSoftwareImageBufferSurface() which is used if the former
fails/returns null. There is less nesting now so hopefully that's nice.

With this the memory.blink_memory_mobile's TheVerge case goes from
6422Kb of gpu memory back down to 4324Kb.

TBR=junov@chromium.org, kbr@chromium.org
BUG=640811,606056

Review-Url: https://codereview.chromium.org/2280723003
Cr-Commit-Position: refs/heads/master@{#414806}
(cherry picked from commit 03fe53dc4730038b5d13613fcbad10fc9a204c54)

Review URL: https://codereview.chromium.org/2303023002 .

Cr-Commit-Position: refs/branch-heads/2840@{#106}
Cr-Branched-From: 1ae106dbab4bddd85132d5b75c670794311f4c57-refs/heads/master@{#414607}

[modify] https://crrev.com/29e2540ac9bf025bb174d55543b7596e550920cd/third_party/WebKit/Source/core/html/HTMLCanvasElement.cpp
[modify] https://crrev.com/29e2540ac9bf025bb174d55543b7596e550920cd/third_party/WebKit/Source/core/html/HTMLCanvasElement.h

Blocking: -601863
Components: -Internals>MUS Internals>Services>WindowService
Components: -MUS

Sign in to add a comment