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

Issue 2688593002: WIP: Towards merging OffscreenCanvas and Mus code

Created:
3 years, 10 months ago by Fady Samuel
Modified:
3 years, 10 months ago
Reviewers:
CC:
chromium-reviews, Ian Vollick, jam, jbauman+watch_chromium.org, darin-cc_chromium.org, kalyank, piman+watch_chromium.org, danakj+watch_chromium.org, cc-bugs_chromium.org, xlai (Olivia)
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

WIP: Towards merging OffscreenCanvas and Mus code BUG=

Patch Set 1 #

Patch Set 2 : Rebased + Compiles #

Patch Set 3 : Fix BUILD.gn #

Patch Set 4 : Fix Aura Demo #

Patch Set 5 : Fix BUILD.gn #

Patch Set 6 : Fix views_examples #

Patch Set 7 : Fix extension unit tests #

Patch Set 8 : Fix some more unit tests #

Patch Set 9 : Fix reflector unit test #

Unified diffs Side-by-side diffs Delta from patch set Stats (+391 lines, -241 lines) Patch
M chrome/browser/extensions/extension_service_test_base.h View 1 2 3 4 5 6 1 chunk +2 lines, -2 lines 0 comments Download
M components/display_compositor/BUILD.gn View 1 2 4 chunks +5 lines, -3 lines 0 comments Download
A components/display_compositor/display_compositor.h View 1 chunk +105 lines, -0 lines 0 comments Download
A components/display_compositor/display_compositor.cc View 1 chunk +102 lines, -0 lines 0 comments Download
M content/browser/BUILD.gn View 1 2 3 4 5 6 7 8 2 chunks +3 lines, -2 lines 0 comments Download
M content/browser/compositor/gpu_process_transport_factory.h View 5 chunks +13 lines, -2 lines 0 comments Download
M content/browser/compositor/gpu_process_transport_factory.cc View 6 chunks +25 lines, -8 lines 0 comments Download
M content/browser/compositor/reflector_impl_unittest.cc View 1 2 3 4 5 6 7 8 1 chunk +1 line, -1 line 0 comments Download
M content/browser/compositor/test/no_transport_image_transport_factory.h View 3 chunks +14 lines, -2 lines 0 comments Download
M content/browser/compositor/test/no_transport_image_transport_factory.cc View 3 chunks +14 lines, -5 lines 0 comments Download
A + content/browser/renderer_host/offscreen_canvas_compositor_frame_sink_manager.h View 4 chunks +9 lines, -9 lines 0 comments Download
A + content/browser/renderer_host/offscreen_canvas_compositor_frame_sink_manager.cc View 4 chunks +20 lines, -14 lines 0 comments Download
M content/browser/renderer_host/offscreen_canvas_compositor_frame_sink_provider_impl.cc View 3 chunks +5 lines, -5 lines 0 comments Download
M content/browser/renderer_host/offscreen_canvas_surface_impl.cc View 1 2 chunks +3 lines, -3 lines 0 comments Download
D content/browser/renderer_host/offscreen_canvas_surface_manager.h View 1 chunk +0 lines, -55 lines 0 comments Download
D content/browser/renderer_host/offscreen_canvas_surface_manager.cc View 1 chunk +0 lines, -87 lines 0 comments Download
M content/browser/renderer_host/offscreen_canvas_surface_manager_unittest.cc View 1 8 chunks +14 lines, -14 lines 0 comments Download
M content/test/BUILD.gn View 1 2 3 4 5 6 7 8 2 chunks +2 lines, -0 lines 0 comments Download
M extensions/browser/api_unittest.cc View 1 2 3 4 5 6 7 1 chunk +3 lines, -2 lines 0 comments Download
M extensions/browser/extensions_test.h View 1 2 3 4 5 6 7 1 chunk +1 line, -1 line 0 comments Download
M extensions/browser/extensions_test.cc View 1 2 3 4 5 6 7 1 chunk +2 lines, -0 lines 0 comments Download
M ui/aura/BUILD.gn View 1 2 3 4 1 chunk +1 line, -1 line 0 comments Download
M ui/aura/demo/DEPS View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M ui/aura/demo/demo_main.cc View 1 2 3 2 chunks +4 lines, -3 lines 0 comments Download
M ui/compositor/BUILD.gn View 1 2 chunks +3 lines, -0 lines 0 comments Download
M ui/compositor/compositor.h View 2 chunks +8 lines, -0 lines 0 comments Download
M ui/compositor/test/DEPS View 1 1 chunk +1 line, -0 lines 0 comments Download
M ui/compositor/test/context_factories_for_test.cc View 4 chunks +7 lines, -6 lines 0 comments Download
M ui/compositor/test/in_process_context_factory.h View 3 chunks +5 lines, -3 lines 0 comments Download
M ui/compositor/test/in_process_context_factory.cc View 4 chunks +13 lines, -7 lines 0 comments Download
M ui/views/examples/BUILD.gn View 1 2 3 4 5 1 chunk +1 line, -1 line 0 comments Download
M ui/views/examples/DEPS View 1 2 3 4 5 1 chunk +1 line, -1 line 0 comments Download
M ui/views/examples/examples_main.cc View 1 2 3 4 5 2 chunks +3 lines, -3 lines 0 comments Download

Messages

Total messages: 33 (31 generated)
xing.xu
Hi, Fady, I am also working on moving offscreen canvas into new display compositor in ...
3 years, 10 months ago (2017-02-20 02:36:51 UTC) #32
Fady Samuel
3 years, 10 months ago (2017-02-20 17:32:10 UTC) #33
On 2017/02/20 02:36:51, xing.xu wrote:
> Hi, Fady, I am also working on moving offscreen canvas into new display
> compositor in non-USE_AURA: https://codereview.chromium.org/2703503002/
> The key issue I didn't resolve is, OffscreenCanvas requires a
BeginFrameSource.
> if not provided, will fail OffscreenCanvas-commit-promise.html.
> For non-display compositor based offscreen canvas, BeginFrameSource is
provided
> by WebLayerTreeView.
> For my cl, I am still working on how to setup this BeginFrameSource for
> OffscreenCanvas.
> So does it worth to try to move offscreen canvas into new display compositor
in
> non-USE_AURA first?

Hi Xing! This is cool! Feel free to pick up this CL if you'd like to continue
work on it. Please let me know if you have any questions. 

The key point here is the display compositor is not responsible for setting up
the BeginFrame hierarchy here. The browser process or window server on mus is.

The way we set up the BeginFrame hierarchy for offscreen canvas today is fine.
We can have a separate code path for Mus+Ash.

Ultimately, I want to delete OffscreenCanvasCompositorFrameSink. I want the
browser process to use the same DisplayCompositor code as Mus+Ash, for now.
OffscreenCanvas is created in an unprivileged process, so it should go to the
browser process to request a CompositorFrameSink which then uses the
DisplayCompositor interface to request a CompositorFrameSink.

Powered by Google App Engine
This is Rietveld 408576698