Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(91)

Issue 20185002: ContextProvider in OutputSurface (Closed)

Created:
7 years, 5 months ago by danakj
Modified:
7 years, 4 months ago
CC:
chromium-reviews, feature-media-reviews_chromium.org, cc-bugs_chromium.org, boliu
Visibility:
Public.

Description

ContextProvider in OutputSurface Instead of putting a raw WebGraphicsContext3D in the OutputSurface given to the compositor, put a ContextProvider. This requires embedders to create ContextProviders instead of raw contexts. No change in behaviour. Covered by existing tests, including cc/ context loss tests. BUG=258625 R=aelias@chromium.org, jamesr@chromium.org, piman@chromium.org, sievers@chromium.org Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=217890

Patch Set 1 : contextprovider: better version, no more ForXThread #

Patch Set 2 : contextprovider: #

Patch Set 3 : contextprovider: #

Patch Set 4 : contextprovider: #

Patch Set 5 : contextprovider: rebase on https://codereview.chromium.org/23072008/ #

Patch Set 6 : contextprovider: It livesssssss #

Patch Set 7 : contextprovider: android #

Total comments: 5

Patch Set 8 : contextprovider: fix android output surface impls #

Total comments: 2

Patch Set 9 : contextprovider: review nits 2 #

Patch Set 10 : contextprovider: android compiles, fix WLTVForTesting #

Patch Set 11 : contextprovider: dcheck #

Patch Set 12 : contextprovider: fix compile after rebase #

Patch Set 13 : contextprovider: fix compile+rebase #

Patch Set 14 : contextprovider: export ManagedMemoryPolicyConvert from webkit::gpu:: #

Patch Set 15 : contextprovider: make webkit/gpu link in cc/ #

Patch Set 16 : contextprovider: Remove third_party/WebKit/public/platform/WebGraphicsMemoryAllocation.h from cc/DE… #

Patch Set 17 : contextprovider: don't access Context3d() in OutputSurface contructors, it's not bound yet #

Unified diffs Side-by-side diffs Delta from patch set Stats (+1720 lines, -1059 lines) Patch
M cc/DEPS View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1 chunk +0 lines, -1 line 0 comments Download
M cc/debug/fake_web_graphics_context_3d.h View 1 2 3 4 1 chunk +0 lines, -3 lines 0 comments Download
M cc/debug/test_context_provider.h View 1 2 3 4 3 chunks +23 lines, -0 lines 0 comments Download
M cc/debug/test_context_provider.cc View 1 2 3 4 4 chunks +103 lines, -2 lines 0 comments Download
M cc/debug/test_web_graphics_context_3d.h View 1 2 3 4 5 chunks +0 lines, -12 lines 0 comments Download
M cc/debug/test_web_graphics_context_3d.cc View 1 2 3 4 5 chunks +0 lines, -20 lines 0 comments Download
M cc/layers/delegated_renderer_layer_impl_unittest.cc View 1 2 1 chunk +1 line, -6 lines 0 comments Download
M cc/layers/io_surface_layer_impl.cc View 2 chunks +9 lines, -7 lines 0 comments Download
M cc/layers/nine_patch_layer_unittest.cc View 2 chunks +4 lines, -1 line 0 comments Download
M cc/layers/picture_layer_impl_unittest.cc View 1 2 3 3 chunks +3 lines, -2 lines 0 comments Download
M cc/layers/texture_layer_unittest.cc View 1 2 3 4 4 chunks +10 lines, -5 lines 0 comments Download
M cc/layers/tiled_layer_unittest.cc View 4 chunks +6 lines, -2 lines 0 comments Download
M cc/layers/video_layer_impl.cc View 1 chunk +5 lines, -2 lines 0 comments Download
M cc/output/context_provider.h View 1 2 3 4 2 chunks +15 lines, -0 lines 0 comments Download
M cc/output/delegating_renderer.cc View 4 chunks +17 lines, -15 lines 0 comments Download
M cc/output/gl_renderer.cc View 3 chunks +3 lines, -3 lines 0 comments Download
M cc/output/gl_renderer_unittest.cc View 37 chunks +255 lines, -192 lines 0 comments Download
M cc/output/output_surface.h View 1 2 3 4 5 6 7 8 9 10 11 12 7 chunks +11 lines, -14 lines 0 comments Download
M cc/output/output_surface.cc View 1 2 3 4 5 6 7 8 9 10 11 12 10 chunks +61 lines, -110 lines 0 comments Download
M cc/output/output_surface_unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 7 chunks +70 lines, -89 lines 0 comments Download
M cc/output/renderer_pixeltest.cc View 3 chunks +5 lines, -2 lines 0 comments Download
M cc/output/software_renderer_unittest.cc View 3 chunks +4 lines, -0 lines 0 comments Download
M cc/resources/picture_layer_tiling_set_unittest.cc View 2 chunks +4 lines, -0 lines 0 comments Download
M cc/resources/prioritized_resource_unittest.cc View 3 chunks +4 lines, -1 line 0 comments Download
M cc/resources/prioritized_tile_set_unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 3 chunks +13 lines, -7 lines 0 comments Download
M cc/resources/raster_worker_pool_unittest.cc View 5 chunks +11 lines, -5 lines 0 comments Download
M cc/resources/resource_provider.h View 3 chunks +5 lines, -3 lines 0 comments Download
M cc/resources/resource_provider.cc View 31 chunks +42 lines, -40 lines 0 comments Download
M cc/resources/resource_provider_unittest.cc View 26 chunks +156 lines, -92 lines 0 comments Download
M cc/resources/resource_update_controller_unittest.cc View 4 chunks +7 lines, -3 lines 0 comments Download
M cc/resources/scoped_resource_unittest.cc View 5 chunks +21 lines, -8 lines 0 comments Download
M cc/resources/tile_manager_unittest.cc View 3 chunks +4 lines, -0 lines 0 comments Download
M cc/resources/video_resource_updater.h View 3 chunks +4 lines, -1 line 0 comments Download
M cc/resources/video_resource_updater.cc View 6 chunks +15 lines, -12 lines 0 comments Download
M cc/resources/video_resource_updater_unittest.cc View 4 chunks +9 lines, -4 lines 0 comments Download
A cc/test/fake_context_provider.cc View 1 chunk +110 lines, -0 lines 0 comments Download
M cc/test/fake_layer_tree_host_client.cc View 1 chunk +4 lines, -5 lines 0 comments Download
M cc/test/fake_output_surface.h View 1 2 3 4 5 6 7 8 9 10 11 12 7 chunks +34 lines, -27 lines 0 comments Download
M cc/test/fake_output_surface.cc View 4 chunks +5 lines, -12 lines 0 comments Download
M cc/test/layer_tree_pixel_test.cc View 1 2 3 4 1 chunk +3 lines, -6 lines 0 comments Download
M cc/test/layer_tree_test.cc View 1 chunk +1 line, -1 line 0 comments Download
M cc/test/pixel_test.cc View 1 2 3 4 1 chunk +2 lines, -5 lines 0 comments Download
M cc/test/pixel_test_output_surface.h View 1 chunk +2 lines, -2 lines 0 comments Download
M cc/trees/layer_tree_host_impl.cc View 1 2 3 4 5 6 7 8 9 10 11 12 4 chunks +4 lines, -4 lines 0 comments Download
M cc/trees/layer_tree_host_impl_unittest.cc View 1 2 22 chunks +75 lines, -81 lines 0 comments Download
M cc/trees/layer_tree_host_unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 13 chunks +32 lines, -30 lines 0 comments Download
M cc/trees/layer_tree_host_unittest_context.cc View 6 chunks +20 lines, -16 lines 0 comments Download
M cc/trees/layer_tree_host_unittest_delegated.cc View 3 chunks +6 lines, -4 lines 0 comments Download
M cc/trees/layer_tree_impl.h View 2 chunks +2 lines, -0 lines 0 comments Download
M cc/trees/layer_tree_impl.cc View 1 2 3 4 5 6 7 8 9 10 11 12 1 chunk +4 lines, -0 lines 0 comments Download
M content/browser/android/in_process/synchronous_compositor_output_surface.h View 1 2 3 4 5 6 7 8 9 1 chunk +1 line, -1 line 0 comments Download
M content/browser/android/in_process/synchronous_compositor_output_surface.cc View 1 2 3 4 5 6 7 8 9 6 chunks +17 lines, -16 lines 0 comments Download
M content/browser/aura/browser_compositor_output_surface.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 2 chunks +3 lines, -1 line 0 comments Download
M content/browser/aura/browser_compositor_output_surface.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 3 chunks +8 lines, -6 lines 0 comments Download
M content/browser/aura/gpu_process_transport_factory.cc View 1 2 3 4 5 2 chunks +9 lines, -5 lines 0 comments Download
M content/browser/aura/reflector_impl.cc View 1 2 3 4 5 1 chunk +2 lines, -1 line 0 comments Download
M content/browser/renderer_host/compositor_impl_android.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 6 chunks +82 lines, -47 lines 0 comments Download
M content/common/gpu/client/context_provider_command_buffer.h View 1 2 3 4 4 chunks +15 lines, -1 line 0 comments Download
M content/common/gpu/client/context_provider_command_buffer.cc View 1 2 3 4 5 7 chunks +73 lines, -9 lines 0 comments Download
M content/renderer/gpu/compositor_output_surface.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 2 chunks +7 lines, -7 lines 0 comments Download
M content/renderer/gpu/compositor_output_surface.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 3 chunks +9 lines, -11 lines 0 comments Download
M content/renderer/gpu/delegated_compositor_output_surface.h View 1 2 3 4 5 1 chunk +2 lines, -2 lines 0 comments Download
M content/renderer/gpu/delegated_compositor_output_surface.cc View 1 2 3 4 5 1 chunk +4 lines, -4 lines 0 comments Download
M content/renderer/gpu/mailbox_output_surface.h View 1 2 3 4 5 1 chunk +5 lines, -4 lines 0 comments Download
M content/renderer/gpu/mailbox_output_surface.cc View 1 2 3 4 5 9 chunks +39 lines, -29 lines 0 comments Download
M content/renderer/render_widget.h View 1 2 3 4 5 1 chunk +1 line, -1 line 0 comments Download
M content/renderer/render_widget.cc View 1 2 3 4 5 4 chunks +42 lines, -21 lines 0 comments Download
M ui/compositor/compositor.h View 1 2 3 4 5 2 chunks +4 lines, -0 lines 0 comments Download
M ui/compositor/compositor.cc View 1 2 3 4 5 6 7 8 9 10 2 chunks +25 lines, -13 lines 0 comments Download
M webkit/common/gpu/context_provider_in_process.h View 1 2 3 4 5 4 chunks +21 lines, -4 lines 0 comments Download
M webkit/common/gpu/context_provider_in_process.cc View 1 2 3 4 5 7 chunks +73 lines, -11 lines 0 comments Download
A webkit/common/gpu/managed_memory_policy_convert.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 1 chunk +25 lines, -0 lines 0 comments Download
A webkit/common/gpu/managed_memory_policy_convert.cc View 1 2 3 4 1 chunk +43 lines, -0 lines 0 comments Download
M webkit/common/gpu/webkit_gpu.gyp View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 2 chunks +3 lines, -0 lines 0 comments Download
M webkit/support/web_layer_tree_view_impl_for_testing.cc View 1 2 3 4 5 6 7 8 9 2 chunks +3 lines, -8 lines 0 comments Download

Messages

Total messages: 32 (0 generated)
danakj
I missed the android embedder in this CL, I'll upload that shortly. Sorry the patch ...
7 years, 4 months ago (2013-08-14 16:38:05 UTC) #1
danakj
+aelias for content/browser/renderer_host/compositor_impl_android.cc
7 years, 4 months ago (2013-08-14 19:24:07 UTC) #2
no sievers
https://codereview.chromium.org/20185002/diff/26001/content/browser/renderer_host/compositor_impl_android.cc File content/browser/renderer_host/compositor_impl_android.cc (right): https://codereview.chromium.org/20185002/diff/26001/content/browser/renderer_host/compositor_impl_android.cc#newcode429 content/browser/renderer_host/compositor_impl_android.cc:429: return scoped_ptr<cc::OutputSurface>( Do you need to adjust the constructors ...
7 years, 4 months ago (2013-08-14 20:41:04 UTC) #3
danakj
https://codereview.chromium.org/20185002/diff/26001/content/browser/renderer_host/compositor_impl_android.cc File content/browser/renderer_host/compositor_impl_android.cc (right): https://codereview.chromium.org/20185002/diff/26001/content/browser/renderer_host/compositor_impl_android.cc#newcode429 content/browser/renderer_host/compositor_impl_android.cc:429: return scoped_ptr<cc::OutputSurface>( On 2013/08/14 20:41:05, sievers wrote: > Do ...
7 years, 4 months ago (2013-08-14 20:59:34 UTC) #4
danakj
https://codereview.chromium.org/20185002/diff/26001/content/browser/renderer_host/compositor_impl_android.cc File content/browser/renderer_host/compositor_impl_android.cc (right): https://codereview.chromium.org/20185002/diff/26001/content/browser/renderer_host/compositor_impl_android.cc#newcode429 content/browser/renderer_host/compositor_impl_android.cc:429: return scoped_ptr<cc::OutputSurface>( On 2013/08/14 20:59:35, danakj wrote: > On ...
7 years, 4 months ago (2013-08-14 21:06:47 UTC) #5
piman
LGTM+nit https://codereview.chromium.org/20185002/diff/26001/ui/compositor/compositor.cc File ui/compositor/compositor.cc (right): https://codereview.chromium.org/20185002/diff/26001/ui/compositor/compositor.cc#newcode117 ui/compositor/compositor.cc:117: CHECK(context_provider.get()); nit: So, as I read it, the ...
7 years, 4 months ago (2013-08-14 21:38:17 UTC) #6
aelias_OOO_until_Jul13
content/browser/renderer_host/compositor_impl_android.cc lgtm https://codereview.chromium.org/20185002/diff/33001/content/browser/renderer_host/compositor_impl_android.cc File content/browser/renderer_host/compositor_impl_android.cc (right): https://codereview.chromium.org/20185002/diff/33001/content/browser/renderer_host/compositor_impl_android.cc#newcode424 content/browser/renderer_host/compositor_impl_android.cc:424: DCHECK(window_ && surface_id_); nit: split into two ...
7 years, 4 months ago (2013-08-14 21:44:10 UTC) #7
danakj
https://codereview.chromium.org/20185002/diff/33001/content/browser/renderer_host/compositor_impl_android.cc File content/browser/renderer_host/compositor_impl_android.cc (right): https://codereview.chromium.org/20185002/diff/33001/content/browser/renderer_host/compositor_impl_android.cc#newcode424 content/browser/renderer_host/compositor_impl_android.cc:424: DCHECK(window_ && surface_id_); On 2013/08/14 21:44:10, aelias wrote: > ...
7 years, 4 months ago (2013-08-14 21:46:07 UTC) #8
danakj
https://codereview.chromium.org/20185002/diff/26001/ui/compositor/compositor.cc File ui/compositor/compositor.cc (right): https://codereview.chromium.org/20185002/diff/26001/ui/compositor/compositor.cc#newcode117 ui/compositor/compositor.cc:117: CHECK(context_provider.get()); On 2013/08/14 21:38:17, piman wrote: > nit: So, ...
7 years, 4 months ago (2013-08-14 21:49:00 UTC) #9
piman
On Wed, Aug 14, 2013 at 2:49 PM, <danakj@chromium.org> wrote: > > https://codereview.chromium.**org/20185002/diff/26001/ui/** > compositor/compositor.cc<https://codereview.chromium.org/20185002/diff/26001/ui/compositor/compositor.cc> ...
7 years, 4 months ago (2013-08-14 21:53:46 UTC) #10
danakj
On Wed, Aug 14, 2013 at 5:53 PM, Antoine Labour <piman@chromium.org> wrote: > > > ...
7 years, 4 months ago (2013-08-14 21:56:07 UTC) #11
piman
On Wed, Aug 14, 2013 at 2:55 PM, Dana Jansens <danakj@chromium.org> wrote: > On Wed, ...
7 years, 4 months ago (2013-08-14 22:03:20 UTC) #12
danakj
+jamesr for webkit/support/web_layer_tree_view_impl_for_testing.cc
7 years, 4 months ago (2013-08-14 22:18:58 UTC) #13
danakj
sievers@: I had to make some changes to content/browser/android/in_process/synchronous_compositor_output_surface.cc as well. Can you please double ...
7 years, 4 months ago (2013-08-14 22:20:01 UTC) #14
jamesr
lgtm
7 years, 4 months ago (2013-08-14 22:25:26 UTC) #15
no sievers
lgtm for android
7 years, 4 months ago (2013-08-14 22:56:50 UTC) #16
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/danakj@chromium.org/20185002/49006
7 years, 4 months ago (2013-08-15 15:03:03 UTC) #17
commit-bot: I haz the power
Sorry for I got bad news for ya. Compile failed with a clobber build on ...
7 years, 4 months ago (2013-08-15 15:31:29 UTC) #18
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/danakj@chromium.org/20185002/25001
7 years, 4 months ago (2013-08-15 15:43:20 UTC) #19
danakj
I introduced a dependency cycle that I'll have to resolve before this can land. cc/ ...
7 years, 4 months ago (2013-08-15 17:11:47 UTC) #20
jamesr
On 2013/08/15 17:11:47, danakj wrote: > I introduced a dependency cycle that I'll have to ...
7 years, 4 months ago (2013-08-15 17:30:28 UTC) #21
danakj
On Thu, Aug 15, 2013 at 1:30 PM, <jamesr@chromium.org> wrote: > On 2013/08/15 17:11:47, danakj ...
7 years, 4 months ago (2013-08-15 17:46:09 UTC) #22
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/danakj@chromium.org/20185002/79001
7 years, 4 months ago (2013-08-15 17:49:20 UTC) #23
commit-bot: I haz the power
Failed to trigger a try job on win_x64_rel HTTP Error 400: Bad Request
7 years, 4 months ago (2013-08-15 17:55:36 UTC) #24
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/danakj@chromium.org/20185002/83001
7 years, 4 months ago (2013-08-15 17:55:53 UTC) #25
commit-bot: I haz the power
Retried try job too often on mac_rel for step(s) telemetry_unittests http://build.chromium.org/p/tryserver.chromium/buildstatus?builder=mac_rel&number=160398
7 years, 4 months ago (2013-08-15 19:02:45 UTC) #26
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/danakj@chromium.org/20185002/83001
7 years, 4 months ago (2013-08-15 19:06:12 UTC) #27
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/danakj@chromium.org/20185002/108001
7 years, 4 months ago (2013-08-15 21:00:27 UTC) #28
commit-bot: I haz the power
Retried try job too often on linux_rel for step(s) nacl_integration http://build.chromium.org/p/tryserver.chromium/buildstatus?builder=linux_rel&number=159746
7 years, 4 months ago (2013-08-15 22:52:35 UTC) #29
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/danakj@chromium.org/20185002/108001
7 years, 4 months ago (2013-08-15 22:54:54 UTC) #30
commit-bot: I haz the power
Failed to apply patch for cc/debug/test_web_graphics_context_3d.cc: While running patch -p1 --forward --force --no-backup-if-mismatch; patching file ...
7 years, 4 months ago (2013-08-15 22:56:13 UTC) #31
danakj
7 years, 4 months ago (2013-08-16 00:46:19 UTC) #32
Message was sent while issue was closed.
Committed patchset #17 manually as r217890 (presubmit successful).

Powered by Google App Engine
This is Rietveld 408576698