SharedBitmapManagers need to be factored out of content/ |
|||||||||||||||||
Issue descriptioncc::Display wants to take in a HostSharedBitmapManager. Clients use a ClientSharedBitmapManager. Both of these things live in content/. They should be factored out of content/. components/shared_bitmap_manager? components/display_compositor and components/display_compositor/client? This is likely a prerequisite to a CompositorFrameSinkSupport object used in Chrome.
,
Dec 1 2016
They also use Chrome IPC currently and should be converted to mojo IPC.
,
Dec 1 2016
,
Dec 1 2016
HostSharedBitmapManager makes sense because it's self-contained ChildSharedBitmapManager basically just sends IPCs, so I'm not sure it makes sense to extract as is - maybe if it was switched to mojo first?
,
Dec 1 2016
> cc::Display wants to take in a HostSharedBitmapManager Does it need to know the concrete type or is cc::SharedBitmapManager enough?
,
Dec 1 2016
It just needs a cc::SharedBitmapManager, but we need a concrete implementation to pass in and refactor >> rewrite (copy and paste) IMO. For Mus+Ash today, we don't need it but we want to move the display compositor on other platforms too so this makes sense in the limit.
,
Dec 1 2016
,
Dec 1 2016
,
Dec 2 2016
It should be possible to do what we are doing for //components/discardable_memory ( issue 654678 and https://codereview.chromium.org/2485623002/).
,
Dec 7 2016
/cc +jcivelli@ since they recently landed https://codereview.chromium.org/2488913003
,
Jan 22 2017
,
Jan 26 2017
,
Feb 18 2017
It sounds like offscreen canvas might need this sooner rather than later... Adding xlai@ and junov@
,
Feb 21 2017
>> It sounds like offscreen canvas might need this sooner rather than later Right, we need SharedBitmap for Unaccelerated 2d context for OffscreenCanvas. But it seems that Blink doesn't really care where the implementation is refactored to as long as the virtual function allocateSharedBitmap() in Platform.h is doing the job right. Currently we rely on the ChildSharedBitmapManager in RenderThreadImpl, for both main and worker threads; the refactoring might want to take account of this. And if I'm not wrong, after the Mus+Ash change, the SharedBitmapManager would still serve similar function between Renderer and Mus-GPU process as of that between Renderer and Browser process today, right?
,
Feb 23 2017
xlai@: Yes, that's correct, Mus-GPU will serve the display compositor even if we are in software compositing mode and so the SharedBitmapManager should work similiar to the way it does today. I think we'd like to have this task done for M59 as a result.
,
Feb 24 2017
,
Mar 3 2017
Ongoing discussion about better placement of SharedBitmapManagers in https://codereview.chromium.org/2717213004/
,
Apr 7 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/11ac780e68cd3fde64d7eac350f4ebf53ce75eea commit 11ac780e68cd3fde64d7eac350f4ebf53ce75eea Author: xlai <xlai@chromium.org> Date: Fri Apr 07 20:13:18 2017 Move SharedBitmapManager implementation out of content/ HostSharedBitmapManager is shifted to components/display_compositor. ChildSharedBitmapManager is shifted to services/ui/public/cpp/bitmap. The Mojo messages used in allocating shared bitmap is decoupled from render_message_filter.h and moved to cc/ipc/shared_bitmap_manager.mojom. Note that the SharedBitmapManager is an associated mojo interface of RenderMessageFilter so as to maintain the existing FIFO order of mojo messages between the two SharedBitmap allocation functions and the rest of RenderMessageFilter functions. BUG= 670162 CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_trusty_blink_rel Review-Url: https://codereview.chromium.org/2717213004 Cr-Commit-Position: refs/heads/master@{#462979} [modify] https://crrev.com/11ac780e68cd3fde64d7eac350f4ebf53ce75eea/cc/ipc/BUILD.gn [add] https://crrev.com/11ac780e68cd3fde64d7eac350f4ebf53ce75eea/cc/ipc/shared_bitmap_manager.mojom [modify] https://crrev.com/11ac780e68cd3fde64d7eac350f4ebf53ce75eea/components/display_compositor/BUILD.gn [modify] https://crrev.com/11ac780e68cd3fde64d7eac350f4ebf53ce75eea/components/display_compositor/DEPS [rename] https://crrev.com/11ac780e68cd3fde64d7eac350f4ebf53ce75eea/components/display_compositor/host_shared_bitmap_manager.cc [rename] https://crrev.com/11ac780e68cd3fde64d7eac350f4ebf53ce75eea/components/display_compositor/host_shared_bitmap_manager.h [rename] https://crrev.com/11ac780e68cd3fde64d7eac350f4ebf53ce75eea/components/display_compositor/host_shared_bitmap_manager_unittest.cc [modify] https://crrev.com/11ac780e68cd3fde64d7eac350f4ebf53ce75eea/content/browser/DEPS [modify] https://crrev.com/11ac780e68cd3fde64d7eac350f4ebf53ce75eea/content/browser/browser_main_loop.cc [modify] https://crrev.com/11ac780e68cd3fde64d7eac350f4ebf53ce75eea/content/browser/browser_plugin/browser_plugin_guest.cc [modify] https://crrev.com/11ac780e68cd3fde64d7eac350f4ebf53ce75eea/content/browser/compositor/gpu_process_transport_factory.cc [modify] https://crrev.com/11ac780e68cd3fde64d7eac350f4ebf53ce75eea/content/browser/renderer_host/compositor_impl_android.cc [modify] https://crrev.com/11ac780e68cd3fde64d7eac350f4ebf53ce75eea/content/browser/renderer_host/render_message_filter.cc [modify] https://crrev.com/11ac780e68cd3fde64d7eac350f4ebf53ce75eea/content/browser/renderer_host/render_message_filter.h [modify] https://crrev.com/11ac780e68cd3fde64d7eac350f4ebf53ce75eea/content/browser/renderer_host/render_widget_host_impl.cc [modify] https://crrev.com/11ac780e68cd3fde64d7eac350f4ebf53ce75eea/content/browser/renderer_host/render_widget_host_view_aura_unittest.cc [modify] https://crrev.com/11ac780e68cd3fde64d7eac350f4ebf53ce75eea/content/browser/renderer_host/renderer_frame_manager.cc [modify] https://crrev.com/11ac780e68cd3fde64d7eac350f4ebf53ce75eea/content/child/BUILD.gn [modify] https://crrev.com/11ac780e68cd3fde64d7eac350f4ebf53ce75eea/content/common/BUILD.gn [modify] https://crrev.com/11ac780e68cd3fde64d7eac350f4ebf53ce75eea/content/common/render_message_filter.mojom [modify] https://crrev.com/11ac780e68cd3fde64d7eac350f4ebf53ce75eea/content/public/test/mock_render_thread.cc [modify] https://crrev.com/11ac780e68cd3fde64d7eac350f4ebf53ce75eea/content/renderer/BUILD.gn [modify] https://crrev.com/11ac780e68cd3fde64d7eac350f4ebf53ce75eea/content/renderer/pepper/pepper_compositor_host.cc [modify] https://crrev.com/11ac780e68cd3fde64d7eac350f4ebf53ce75eea/content/renderer/pepper/pepper_graphics_2d_host.cc [modify] https://crrev.com/11ac780e68cd3fde64d7eac350f4ebf53ce75eea/content/renderer/render_thread_impl.cc [modify] https://crrev.com/11ac780e68cd3fde64d7eac350f4ebf53ce75eea/content/renderer/render_thread_impl.h [modify] https://crrev.com/11ac780e68cd3fde64d7eac350f4ebf53ce75eea/content/renderer/render_view_impl.cc [modify] https://crrev.com/11ac780e68cd3fde64d7eac350f4ebf53ce75eea/content/renderer/renderer_blink_platform_impl.cc [modify] https://crrev.com/11ac780e68cd3fde64d7eac350f4ebf53ce75eea/content/renderer/renderer_blink_platform_impl.h [modify] https://crrev.com/11ac780e68cd3fde64d7eac350f4ebf53ce75eea/content/test/BUILD.gn [modify] https://crrev.com/11ac780e68cd3fde64d7eac350f4ebf53ce75eea/ipc/ipc_channel_proxy.h [add] https://crrev.com/11ac780e68cd3fde64d7eac350f4ebf53ce75eea/services/ui/public/cpp/bitmap/BUILD.gn [rename] https://crrev.com/11ac780e68cd3fde64d7eac350f4ebf53ce75eea/services/ui/public/cpp/bitmap/child_shared_bitmap_manager.cc [rename] https://crrev.com/11ac780e68cd3fde64d7eac350f4ebf53ce75eea/services/ui/public/cpp/bitmap/child_shared_bitmap_manager.h
,
Apr 10 2017
,
Jun 13 2017
,
Feb 26 2018
,
Feb 26 2018
|
|||||||||||||||||
►
Sign in to add a comment |
|||||||||||||||||
Comment 1 by fsam...@chromium.org
, Dec 1 2016