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

Issue 2241623002: blimp: Move compositing, input and render widget feature to client/core. (Closed)

Created:
4 years, 4 months ago by Khushal
Modified:
4 years, 4 months ago
CC:
chromium-reviews, anandc+watch-blimp_chromium.org, maniscalco+watch-blimp_chromium.org, sriramsr+watch-blimp_chromium.org, gcasto+watch-blimp_chromium.org, nyquist+watch-blimp_chromium.org, marcinjb+watch-blimp_chromium.org, jessicag+watch-blimp_chromium.org, kmarshall+watch-blimp_chromium.org, lethalantidote+watch-blimp_chromium.org, dtrainor+watch-blimp_chromium.org, shaktisahu+watch-blimp_chromium.org, khushalsagar+watch-blimp_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

blimp: Move compositing, input and render widget feature to client/core. This patch integrates the BlimpCompositor, the BlimpInputManager and the RenderWidget feature with BlimpContents framework in blimp/client/core. In the process of moving these, it also establishes the class structre in the client code to mirror the structure of their counterparts on the Engine. 1) BlimpRenderWidget maps to content's render widget and maintains the compositing and input state. BlimpInputManager is still in the compositor, will be moved to the render widget in a follow-up patch. 2) BlimpCompositor maps to the RenderWidgetCompositor. 3) BlimpContents maps to the WebContents, and thus is the delegate for the RenderWidgetFeature. The lifetime of the BlimpRenderWidgets on the client is controlled by their counterparts on the engine. This change also consolidates the compositor dependencies into a seperate CompositorDepsProvider, with a mode for direct rendering which is used by the standalone app to allow the BlimpCompositor to render content directly to the native widget. Support for a mode for delegated rendering will be added in a follow up patch and will be used when Blimp is embedded by Clank.

Patch Set 1 #

Total comments: 24

Patch Set 2 : Address comments #

Patch Set 3 : Rebase. #

Total comments: 2

Patch Set 4 : fixed tests #

Patch Set 5 : Rebase #

Patch Set 6 : change visibility #

Patch Set 7 : fix gn files #

Total comments: 28

Patch Set 8 : moar gn fix #

Total comments: 14

Patch Set 9 : Addressed comments from #8. #

Patch Set 10 : addressed comments from #7 #

Total comments: 3
Unified diffs Side-by-side diffs Delta from patch set Stats (+2162 lines, -3135 lines) Patch
M blimp/BUILD.gn View 1 2 3 4 5 6 7 8 9 2 chunks +34 lines, -0 lines 0 comments Download
M blimp/client/BUILD.gn View 1 2 3 4 5 6 9 chunks +8 lines, -71 lines 0 comments Download
D blimp/client/app/android/blimp_compositor_manager_android.h View 1 chunk +0 lines, -73 lines 0 comments Download
D blimp/client/app/android/blimp_compositor_manager_android.cc View 1 chunk +0 lines, -99 lines 0 comments Download
M blimp/client/app/android/blimp_library_loader.cc View 1 2 chunks +4 lines, -0 lines 0 comments Download
M blimp/client/app/android/blimp_view.h View 1 2 3 4 5 6 7 8 9 4 chunks +14 lines, -8 lines 0 comments Download
M blimp/client/app/android/blimp_view.cc View 1 2 3 4 5 6 7 8 6 chunks +19 lines, -15 lines 0 comments Download
M blimp/client/app/blimp_startup.cc View 1 2 3 4 5 6 7 8 4 chunks +12 lines, -0 lines 0 comments Download
M blimp/client/app/linux/blimp_display_manager.h View 1 4 chunks +5 lines, -10 lines 0 comments Download
M blimp/client/app/linux/blimp_display_manager.cc View 1 2 3 4 5 6 7 8 4 chunks +7 lines, -11 lines 0 comments Download
M blimp/client/core/BUILD.gn View 1 2 3 4 5 6 3 chunks +13 lines, -2 lines 0 comments Download
M blimp/client/core/blimp_client_context_impl.h View 1 2 3 4 5 6 7 8 9 2 chunks +3 lines, -0 lines 0 comments Download
M blimp/client/core/blimp_client_context_impl.cc View 1 2 3 4 5 6 7 8 9 2 chunks +18 lines, -1 line 0 comments Download
M blimp/client/core/blimp_client_context_impl_unittest.cc View 1 2 3 4 5 6 7 8 2 chunks +3 lines, -0 lines 0 comments Download
M blimp/client/core/blimp_client_switches.h View 1 2 3 4 5 6 7 8 1 chunk +4 lines, -0 lines 0 comments Download
M blimp/client/core/blimp_client_switches.cc View 1 2 3 4 5 6 7 8 1 chunk +2 lines, -0 lines 0 comments Download
M blimp/client/core/compositor/BUILD.gn View 1 2 3 4 5 6 7 8 9 3 chunks +33 lines, -0 lines 0 comments Download
A + blimp/client/core/compositor/blimp_compositor.h View 1 2 3 4 5 6 7 8 9 6 chunks +70 lines, -79 lines 0 comments Download
A blimp/client/core/compositor/blimp_compositor.cc View 1 2 3 4 5 6 7 8 9 1 chunk +207 lines, -0 lines 0 comments Download
A blimp/client/core/compositor/blimp_compositor_unittest.cc View 1 2 3 4 5 6 7 8 1 chunk +98 lines, -0 lines 0 comments Download
A + blimp/client/core/compositor/blimp_context_provider.h View 3 chunks +5 lines, -6 lines 0 comments Download
A + blimp/client/core/compositor/blimp_context_provider.cc View 1 2 1 chunk +1 line, -1 line 0 comments Download
A + blimp/client/core/compositor/blimp_delegating_output_surface.h View 1 2 3 4 2 chunks +3 lines, -3 lines 0 comments Download
A + blimp/client/core/compositor/blimp_delegating_output_surface.cc View 1 2 1 chunk +1 line, -1 line 0 comments Download
A + blimp/client/core/compositor/blimp_gpu_memory_buffer_manager.h View 2 chunks +3 lines, -3 lines 0 comments Download
A + blimp/client/core/compositor/blimp_gpu_memory_buffer_manager.cc View 3 chunks +3 lines, -4 lines 0 comments Download
A blimp/client/core/compositor/compositor_deps_provider.h View 1 2 3 4 5 6 7 8 1 chunk +75 lines, -0 lines 0 comments Download
A blimp/client/core/compositor/compositor_deps_provider.cc View 1 2 3 4 5 6 7 8 1 chunk +419 lines, -0 lines 2 comments Download
M blimp/client/core/contents/BUILD.gn View 1 2 3 4 5 6 4 chunks +5 lines, -4 lines 0 comments Download
D blimp/client/core/contents/android/blimp_contents_factory.h View 1 1 chunk +0 lines, -20 lines 0 comments Download
M blimp/client/core/contents/android/blimp_contents_factory.cc View 1 1 chunk +0 lines, -36 lines 0 comments Download
M blimp/client/core/contents/android/blimp_contents_jni_registrar.cc View 1 2 chunks +0 lines, -2 lines 0 comments Download
D blimp/client/core/contents/android/java/src/org/chromium/blimp/core/contents/BlimpContentsFactory.java View 1 1 chunk +0 lines, -27 lines 0 comments Download
M blimp/client/core/contents/blimp_contents_impl.h View 1 2 3 4 5 6 7 8 4 chunks +74 lines, -8 lines 0 comments Download
M blimp/client/core/contents/blimp_contents_impl.cc View 1 2 3 4 5 6 7 8 3 chunks +130 lines, -2 lines 0 comments Download
M blimp/client/core/contents/blimp_contents_impl_unittest.cc View 1 2 3 4 5 6 7 8 2 chunks +174 lines, -10 lines 0 comments Download
M blimp/client/core/contents/blimp_contents_manager.h View 1 2 3 4 5 6 7 8 9 2 chunks +6 lines, -1 line 0 comments Download
M blimp/client/core/contents/blimp_contents_manager.cc View 1 2 3 4 5 6 7 8 2 chunks +5 lines, -2 lines 0 comments Download
M blimp/client/core/contents/blimp_contents_manager_unittest.cc View 1 2 3 4 5 6 7 8 3 chunks +13 lines, -3 lines 0 comments Download
M blimp/client/core/contents/blimp_contents_observer_unittest.cc View 1 2 3 4 5 6 7 8 2 chunks +17 lines, -5 lines 0 comments Download
M blimp/client/core/dummy_blimp_client_context.cc View 1 2 3 4 5 6 7 8 1 chunk +6 lines, -0 lines 0 comments Download
A blimp/client/core/input/BUILD.gn View 1 2 3 4 5 6 1 chunk +27 lines, -0 lines 0 comments Download
A + blimp/client/core/input/blimp_input_handler_wrapper.h View 2 chunks +12 lines, -5 lines 0 comments Download
A + blimp/client/core/input/blimp_input_handler_wrapper.cc View 3 chunks +15 lines, -13 lines 0 comments Download
A + blimp/client/core/input/blimp_input_manager.h View 1 2 3 4 5 6 7 8 3 chunks +26 lines, -8 lines 0 comments Download
A + blimp/client/core/input/blimp_input_manager.cc View 5 chunks +16 lines, -13 lines 0 comments Download
A blimp/client/core/render_widget/BUILD.gn View 1 2 3 4 5 6 1 chunk +86 lines, -0 lines 0 comments Download
A blimp/client/core/render_widget/blimp_render_widget.h View 1 2 3 4 5 6 7 8 1 chunk +94 lines, -0 lines 0 comments Download
A blimp/client/core/render_widget/blimp_render_widget.cc View 1 2 3 4 5 6 7 8 1 chunk +170 lines, -0 lines 0 comments Download
A blimp/client/core/render_widget/blimp_render_widget_delegate.h View 1 chunk +46 lines, -0 lines 0 comments Download
A blimp/client/core/render_widget/blimp_render_widget_unittest.cc View 1 2 3 4 5 6 7 8 1 chunk +82 lines, -0 lines 0 comments Download
A + blimp/client/core/render_widget/mock_render_widget_feature_delegate.h View 2 chunks +5 lines, -4 lines 0 comments Download
A + blimp/client/core/render_widget/mock_render_widget_feature_delegate.cc View 1 chunk +1 line, -1 line 0 comments Download
A + blimp/client/core/render_widget/render_widget_feature.h View 3 chunks +5 lines, -6 lines 0 comments Download
A + blimp/client/core/render_widget/render_widget_feature.cc View 3 chunks +3 lines, -5 lines 0 comments Download
A + blimp/client/core/render_widget/render_widget_feature_unittest.cc View 1 chunk +2 lines, -2 lines 0 comments Download
D blimp/client/feature/compositor/blimp_compositor.h View 1 chunk +0 lines, -216 lines 0 comments Download
M blimp/client/feature/compositor/blimp_compositor.cc View 1 2 2 chunks +1 line, -1 line 1 comment Download
D blimp/client/feature/compositor/blimp_compositor_manager.h View 1 chunk +0 lines, -122 lines 0 comments Download
D blimp/client/feature/compositor/blimp_compositor_manager_unittest.cc View 1 chunk +0 lines, -184 lines 0 comments Download
D blimp/client/feature/compositor/blimp_compositor_unittest.cc View 1 chunk +0 lines, -181 lines 0 comments Download
D blimp/client/feature/compositor/blimp_context_provider.h View 1 chunk +0 lines, -73 lines 0 comments Download
D blimp/client/feature/compositor/blimp_context_provider.cc View 1 2 1 chunk +0 lines, -134 lines 0 comments Download
D blimp/client/feature/compositor/blimp_delegating_output_surface.h View 1 2 3 4 1 chunk +0 lines, -71 lines 0 comments Download
D blimp/client/feature/compositor/blimp_delegating_output_surface.cc View 1 2 1 chunk +0 lines, -132 lines 0 comments Download
D blimp/client/feature/compositor/blimp_gpu_memory_buffer_manager.h View 1 chunk +0 lines, -46 lines 0 comments Download
D blimp/client/feature/compositor/blimp_gpu_memory_buffer_manager.cc View 1 chunk +0 lines, -168 lines 0 comments Download
D blimp/client/feature/compositor/blimp_input_handler_wrapper.h View 1 chunk +0 lines, -71 lines 0 comments Download
D blimp/client/feature/compositor/blimp_input_handler_wrapper.cc View 1 chunk +0 lines, -113 lines 0 comments Download
D blimp/client/feature/compositor/blimp_input_manager.h View 1 chunk +0 lines, -109 lines 0 comments Download
D blimp/client/feature/compositor/blimp_input_manager.cc View 1 chunk +0 lines, -155 lines 0 comments Download
D blimp/client/feature/compositor/blimp_layer_tree_settings.h View 1 chunk +0 lines, -32 lines 0 comments Download
D blimp/client/feature/compositor/blimp_layer_tree_settings.cc View 1 chunk +0 lines, -174 lines 0 comments Download
D blimp/client/feature/compositor/blimp_output_surface.h View 1 chunk +0 lines, -36 lines 0 comments Download
D blimp/client/feature/compositor/blimp_output_surface.cc View 1 chunk +0 lines, -35 lines 0 comments Download
D blimp/client/feature/mock_render_widget_feature_delegate.h View 1 chunk +0 lines, -37 lines 0 comments Download
D blimp/client/feature/mock_render_widget_feature_delegate.cc View 1 chunk +0 lines, -21 lines 0 comments Download
D blimp/client/feature/render_widget_feature.h View 1 chunk +0 lines, -126 lines 0 comments Download
D blimp/client/feature/render_widget_feature.cc View 1 chunk +0 lines, -152 lines 0 comments Download
D blimp/client/feature/render_widget_feature_unittest.cc View 1 chunk +0 lines, -125 lines 0 comments Download
M blimp/client/public/BUILD.gn View 1 2 3 4 5 6 7 1 chunk +4 lines, -1 line 0 comments Download
M blimp/client/public/blimp_client_context.h View 1 2 3 4 5 6 7 8 1 chunk +6 lines, -0 lines 0 comments Download
M blimp/client/public/contents/blimp_contents.h View 1 chunk +2 lines, -0 lines 0 comments Download
M blimp/client/session/blimp_client_session.cc View 1 2 1 chunk +1 line, -1 line 0 comments Download
M blimp/common/BUILD.gn View 1 2 3 4 5 6 7 8 9 2 chunks +0 lines, -3 lines 0 comments Download
D blimp/common/compositor/blimp_task_graph_runner.h View 1 chunk +0 lines, -30 lines 0 comments Download
D blimp/common/compositor/blimp_task_graph_runner.cc View 1 chunk +0 lines, -18 lines 0 comments Download
M blimp/engine/BUILD.gn View 1 chunk +2 lines, -0 lines 0 comments Download
M blimp/engine/browser_tests/engine_browsertest.cc View 1 chunk +2 lines, -3 lines 0 comments Download
M blimp/test/BUILD.gn View 1 2 3 4 5 6 7 8 9 1 chunk +5 lines, -0 lines 0 comments Download
M blimp/test/run_all_unittests.cc View 1 2 3 4 5 6 7 8 9 1 chunk +55 lines, -1 line 0 comments Download

Messages

Total messages: 41 (30 generated)
Khushal
I still have to hook in the BlimpStats. Kevin has a patch close to landing ...
4 years, 4 months ago (2016-08-11 21:56:26 UTC) #2
nyquist
just some initial comments. looking forward to the upcoming rebases! https://codereview.chromium.org/2241623002/diff/1/blimp/client/app/android/blimp_view.cc File blimp/client/app/android/blimp_view.cc (right): https://codereview.chromium.org/2241623002/diff/1/blimp/client/app/android/blimp_view.cc#newcode185 ...
4 years, 4 months ago (2016-08-12 07:34:28 UTC) #7
nyquist
Also... This is such excite! Very wow.
4 years, 4 months ago (2016-08-12 07:34:49 UTC) #8
Khushal
Rebased and verified the change too. You want to patch locally for the unit-test issue, ...
4 years, 4 months ago (2016-08-13 00:03:22 UTC) #9
nyquist
https://codereview.chromium.org/2241623002/diff/40001/blimp/test/BUILD.gn File blimp/test/BUILD.gn (right): https://codereview.chromium.org/2241623002/diff/40001/blimp/test/BUILD.gn#newcode36 blimp/test/BUILD.gn:36: if (is_android) { I think this you want this ...
4 years, 4 months ago (2016-08-16 01:29:55 UTC) #10
Khushal
https://codereview.chromium.org/2241623002/diff/40001/blimp/test/BUILD.gn File blimp/test/BUILD.gn (right): https://codereview.chromium.org/2241623002/diff/40001/blimp/test/BUILD.gn#newcode36 blimp/test/BUILD.gn:36: if (is_android) { On 2016/08/16 01:29:55, nyquist wrote: > ...
4 years, 4 months ago (2016-08-16 18:08:25 UTC) #13
nyquist
https://codereview.chromium.org/2241623002/diff/110001/blimp/BUILD.gn File blimp/BUILD.gn (right): https://codereview.chromium.org/2241623002/diff/110001/blimp/BUILD.gn#newcode88 blimp/BUILD.gn:88: java_group("blimp_unittests_java_deps") { Could you add a comment as to ...
4 years, 4 months ago (2016-08-16 23:14:58 UTC) #30
Khushal
Still working on comments from #7. https://codereview.chromium.org/2241623002/diff/130001/blimp/client/core/contents/blimp_contents_impl.cc File blimp/client/core/contents/blimp_contents_impl.cc (right): https://codereview.chromium.org/2241623002/diff/130001/blimp/client/core/contents/blimp_contents_impl.cc#newcode46 blimp/client/core/contents/blimp_contents_impl.cc:46: if (active_widget_) On ...
4 years, 4 months ago (2016-08-18 02:01:46 UTC) #33
Khushal
https://codereview.chromium.org/2241623002/diff/110001/blimp/BUILD.gn File blimp/BUILD.gn (right): https://codereview.chromium.org/2241623002/diff/110001/blimp/BUILD.gn#newcode88 blimp/BUILD.gn:88: java_group("blimp_unittests_java_deps") { On 2016/08/16 23:14:57, nyquist wrote: > Could ...
4 years, 4 months ago (2016-08-18 03:16:33 UTC) #34
nyquist
https://codereview.chromium.org/2241623002/diff/170001/blimp/client/core/compositor/compositor_deps_provider.cc File blimp/client/core/compositor/compositor_deps_provider.cc (right): https://codereview.chromium.org/2241623002/diff/170001/blimp/client/core/compositor/compositor_deps_provider.cc#newcode93 blimp/client/core/compositor/compositor_deps_provider.cc:93: CompositorDepsProvider* current_compositor_deps_provider = nullptr; Could you comment on the ...
4 years, 4 months ago (2016-08-19 00:17:07 UTC) #39
Khushal
4 years, 4 months ago (2016-08-23 05:11:06 UTC) #40
Abandoning this patch in favour of this one,
https://codereview.chromium.org/2266863003

https://codereview.chromium.org/2241623002/diff/170001/blimp/client/feature/c...
File blimp/client/feature/compositor/blimp_compositor.cc (right):

https://codereview.chromium.org/2241623002/diff/170001/blimp/client/feature/c...
blimp/client/feature/compositor/blimp_compositor.cc:7: #include
<blimp/client/core/compositor/blimp_delegating_output_surface.h>
Delete this file!!

Powered by Google App Engine
This is Rietveld 408576698