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

Issue 1450423002: Add glue between the client and engine for Blimp (Closed)

Created:
5 years, 1 month ago by David Trainor- moved to gerrit
Modified:
5 years ago
CC:
chromium-reviews, maniscalco+watch-blimp_chromium.org, sriramsr+watch-blimp_chromium.org, nyquist+watch-blimp_chromium.org, marcinjb+watch-blimp_chromium.org, kmarshall+watch-blimp_chromium.org, dtrainor+watch-blimp_chromium.org, Wez
Base URL:
https://chromium.googlesource.com/chromium/src.git@blimp_ipc2
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Add glue between the client and engine for Blimp - Add BlimpMessageProcessors to handle RENDER_WIDGET, INPUT, and COMPOSITOR message types to/from the client and engine. - Tie the message processors into BlimpCompositor on the client and BlimpEngineSession on the server. - Update BlimpView and BlimpCompositor to fix how we handle output surfaces and how we shut down and build the LayerTreeHost based on incoming RENDER_WIDGET and COMPOSITOR messages. BUG=550693 Committed: https://crrev.com/160f8eca573286f3bb369975ac2e9de63b0cc477 Cr-Commit-Position: refs/heads/master@{#362299}

Patch Set 1 #

Patch Set 2 : Some fun refactoring #

Patch Set 3 : Added comments #

Patch Set 4 : Split RenderWidget to keep Input and Compositor top level message types #

Total comments: 12

Patch Set 5 : Added unit tests #

Total comments: 6

Patch Set 6 : Removed pointer in test. #

Patch Set 7 : Made the BlackHoleBlimpMessageProcessor official! #

Total comments: 13

Patch Set 8 : Fixed net callback, fixed output surface creation assumption #

Total comments: 14

Patch Set 9 : Address comments! #

Total comments: 58

Patch Set 10 : Addressed some comments #

Patch Set 11 : Updated #

Patch Set 12 : Rebased #

Patch Set 13 : Rebase and fix last minute build break. #

Patch Set 14 : Fixed build break. Removed switches from compositor setup. #

Total comments: 2

Patch Set 15 : Limited net/ DEPS on blimp/client to net/base #

Patch Set 16 : Rebased #

Patch Set 17 : Fix build break #

Unified diffs Side-by-side diffs Delta from patch set Stats (+1412 lines, -363 lines) Patch
M blimp/BUILD.gn View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +5 lines, -0 lines 0 comments Download
M blimp/client/BUILD.gn View 1 2 3 4 5 6 7 8 9 10 11 12 13 5 chunks +54 lines, -26 lines 0 comments Download
M blimp/client/DEPS View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 2 chunks +1 line, -6 lines 0 comments Download
M blimp/client/android/blimp_view.h View 1 3 chunks +5 lines, -0 lines 0 comments Download
M blimp/client/android/blimp_view.cc View 1 2 3 4 5 6 7 8 9 4 chunks +25 lines, -4 lines 0 comments Download
A blimp/client/blimp_client_export.h View 1 2 3 4 1 chunk +29 lines, -0 lines 0 comments Download
M blimp/client/compositor/blimp_compositor.h View 1 2 3 4 5 6 7 8 9 4 chunks +81 lines, -15 lines 0 comments Download
M blimp/client/compositor/blimp_compositor.cc View 1 2 3 4 5 6 7 8 9 10 11 12 9 chunks +159 lines, -41 lines 0 comments Download
M blimp/client/compositor/blimp_compositor_android.h View 1 3 chunks +0 lines, -7 lines 0 comments Download
M blimp/client/compositor/blimp_compositor_android.cc View 1 2 chunks +2 lines, -26 lines 0 comments Download
M blimp/client/compositor/blimp_layer_tree_settings.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 4 chunks +20 lines, -184 lines 0 comments Download
A blimp/client/compositor/render_widget_message_processor.h View 1 2 3 4 5 6 7 8 9 1 chunk +96 lines, -0 lines 0 comments Download
A blimp/client/compositor/render_widget_message_processor.cc View 1 2 3 4 5 6 7 8 9 10 11 12 1 chunk +134 lines, -0 lines 0 comments Download
A blimp/client/compositor/render_widget_message_processor_unittest.cc View 1 2 3 4 5 6 7 8 9 1 chunk +147 lines, -0 lines 0 comments Download
M blimp/common/proto/BUILD.gn View 1 2 3 4 5 6 7 8 9 1 chunk +2 lines, -1 line 0 comments Download
M blimp/common/proto/blimp_message.proto View 1 2 3 4 5 6 7 8 9 3 chunks +11 lines, -9 lines 0 comments Download
M blimp/common/proto/common.proto View 1 2 3 4 5 6 7 8 9 1 chunk +0 lines, -17 lines 0 comments Download
M blimp/common/proto/compositor.proto View 1 2 3 4 5 6 7 8 9 2 chunks +6 lines, -3 lines 0 comments Download
M blimp/common/proto/control.proto View 1 2 3 4 5 6 7 8 9 2 chunks +12 lines, -0 lines 0 comments Download
M blimp/common/proto/input.proto View 1 2 3 4 5 6 7 8 9 10 11 2 chunks +3 lines, -2 lines 0 comments Download
A + blimp/common/proto/render_widget.proto View 1 2 3 4 5 6 7 8 9 1 chunk +10 lines, -7 lines 0 comments Download
A + blimp/common/proto/size.proto View 1 2 3 4 5 6 7 8 9 2 chunks +5 lines, -5 lines 0 comments Download
M blimp/engine/BUILD.gn View 1 2 3 4 1 chunk +8 lines, -0 lines 0 comments Download
M blimp/engine/DEPS View 1 1 chunk +1 line, -0 lines 0 comments Download
M blimp/engine/browser/BUILD.gn View 1 2 3 4 5 6 7 8 9 2 chunks +22 lines, -0 lines 0 comments Download
M blimp/engine/browser/blimp_engine_session.h View 1 2 3 4 5 6 7 8 9 7 chunks +28 lines, -2 lines 0 comments Download
M blimp/engine/browser/blimp_engine_session.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 10 chunks +64 lines, -8 lines 0 comments Download
A blimp/engine/browser/engine_render_widget_message_processor.h View 1 2 3 4 5 6 7 8 9 1 chunk +91 lines, -0 lines 0 comments Download
A blimp/engine/browser/engine_render_widget_message_processor.cc View 1 2 3 4 5 6 7 8 9 1 chunk +136 lines, -0 lines 0 comments Download
A blimp/engine/browser/engine_render_widget_message_processor_unittest.cc View 1 2 3 4 5 6 7 8 9 1 chunk +208 lines, -0 lines 0 comments Download
M blimp/net/BUILD.gn View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1 chunk +2 lines, -0 lines 0 comments Download
A blimp/net/null_blimp_message_processor.h View 1 2 3 4 5 6 7 8 9 1 chunk +27 lines, -0 lines 0 comments Download
A blimp/net/null_blimp_message_processor.cc View 1 2 3 4 5 6 7 8 9 1 chunk +18 lines, -0 lines 0 comments Download

Dependent Patchsets:

Messages

Total messages: 38 (10 generated)
David Trainor- moved to gerrit
ptal! haibinlu@: blimp/engine and blimp/client/render_widget_message_processor kmarshall@: blimp/engine/browser/host_render_widget_message_processor, blimp/client/render_widget_message_processor, and *.proto. khushalsagar@ and nyquist@: blimp/client. cc'ed ...
5 years, 1 month ago (2015-11-18 00:34:40 UTC) #3
David Trainor- moved to gerrit
Oh I'll look into adding unit tests for the message processors. Sorry about that!
5 years, 1 month ago (2015-11-18 00:35:30 UTC) #4
haibinlu
minor comments for blimp/engine/ https://codereview.chromium.org/1450423002/diff/60001/blimp/client/compositor/blimp_compositor.cc File blimp/client/compositor/blimp_compositor.cc (right): https://codereview.chromium.org/1450423002/diff/60001/blimp/client/compositor/blimp_compositor.cc#newcode39 blimp/client/compositor/blimp_compositor.cc:39: class BlackHoleMessageProcessor : public BlimpMessageProcessor ...
5 years, 1 month ago (2015-11-19 01:08:16 UTC) #5
David Trainor- moved to gerrit
Okay made the changes based on the discussion yesterday. Also added unit tests and cleaned ...
5 years, 1 month ago (2015-11-19 03:29:36 UTC) #6
David Trainor- moved to gerrit
https://chromiumcodereview.appspot.com/1450423002/diff/120001/blimp/net/black_hole_blimp_message_processor.cc File blimp/net/black_hole_blimp_message_processor.cc (right): https://chromiumcodereview.appspot.com/1450423002/diff/120001/blimp/net/black_hole_blimp_message_processor.cc#newcode11 blimp/net/black_hole_blimp_message_processor.cc:11: const net::CompletionCallback& callback) {} Oh oops this needs to ...
5 years, 1 month ago (2015-11-19 17:01:21 UTC) #7
haibinlu
lgtm for blimp/engine https://codereview.chromium.org/1450423002/diff/80001/blimp/client/render_widget_message_processor_unittest.cc File blimp/client/render_widget_message_processor_unittest.cc (right): https://codereview.chromium.org/1450423002/diff/80001/blimp/client/render_widget_message_processor_unittest.cc#newcode26 blimp/client/render_widget_message_processor_unittest.cc:26: class MockBlimpMessageProcessor : public BlimpMessageProcessor { ...
5 years, 1 month ago (2015-11-19 19:21:17 UTC) #8
Khushal
https://codereview.chromium.org/1450423002/diff/120001/blimp/client/compositor/blimp_compositor.cc File blimp/client/compositor/blimp_compositor.cc (right): https://codereview.chromium.org/1450423002/diff/120001/blimp/client/compositor/blimp_compositor.cc#newcode121 blimp/client/compositor/blimp_compositor.cc:121: void BlimpCompositor::ReleaseAcceleratedWidget() { We should be able to simplify ...
5 years, 1 month ago (2015-11-19 19:28:24 UTC) #9
nyquist
https://codereview.chromium.org/1450423002/diff/140001/blimp/client/android/blimp_view.cc File blimp/client/android/blimp_view.cc (right): https://codereview.chromium.org/1450423002/diff/140001/blimp/client/android/blimp_view.cc#newcode89 blimp/client/android/blimp_view.cc:89: if (window_ != gfx::kNullAcceleratedWidget) { Optional nit: == and ...
5 years, 1 month ago (2015-11-20 08:14:59 UTC) #10
nyquist
5 years, 1 month ago (2015-11-20 08:15:00 UTC) #11
David Trainor- moved to gerrit
https://codereview.chromium.org/1450423002/diff/60001/blimp/common/proto/resize.proto File blimp/common/proto/resize.proto (right): https://codereview.chromium.org/1450423002/diff/60001/blimp/common/proto/resize.proto#newcode13 blimp/common/proto/resize.proto:13: message ResizeMessage { On 2015/11/19 01:08:15, haibinlu wrote: > ...
5 years, 1 month ago (2015-11-20 17:58:54 UTC) #12
haibinlu
https://codereview.chromium.org/1450423002/diff/80001/blimp/client/render_widget_message_processor_unittest.cc File blimp/client/render_widget_message_processor_unittest.cc (right): https://codereview.chromium.org/1450423002/diff/80001/blimp/client/render_widget_message_processor_unittest.cc#newcode26 blimp/client/render_widget_message_processor_unittest.cc:26: class MockBlimpMessageProcessor : public BlimpMessageProcessor { On 2015/11/20 17:58:53, ...
5 years, 1 month ago (2015-11-20 18:20:15 UTC) #13
Khushal
lgtm. Thanks! :) https://codereview.chromium.org/1450423002/diff/120001/blimp/client/compositor/blimp_compositor.cc File blimp/client/compositor/blimp_compositor.cc (right): https://codereview.chromium.org/1450423002/diff/120001/blimp/client/compositor/blimp_compositor.cc#newcode121 blimp/client/compositor/blimp_compositor.cc:121: void BlimpCompositor::ReleaseAcceleratedWidget() { On 2015/11/20 17:58:53, ...
5 years, 1 month ago (2015-11-23 17:40:11 UTC) #14
nyquist
https://codereview.chromium.org/1450423002/diff/160001/blimp/client/android/blimp_view.cc File blimp/client/android/blimp_view.cc (right): https://codereview.chromium.org/1450423002/diff/160001/blimp/client/android/blimp_view.cc#newcode89 blimp/client/android/blimp_view.cc:89: if (window_ != gfx::kNullAcceleratedWidget) { Optional nit: == and ...
5 years, 1 month ago (2015-11-24 08:55:44 UTC) #15
nyquist
https://codereview.chromium.org/1450423002/diff/160001/blimp/client/compositor/blimp_compositor.cc File blimp/client/compositor/blimp_compositor.cc (right): https://codereview.chromium.org/1450423002/diff/160001/blimp/client/compositor/blimp_compositor.cc#newcode153 blimp/client/compositor/blimp_compositor.cc:153: void BlimpCompositor::DidInitializeOutputSurface() {} Should this method reset output_surface_request_pending_?
5 years, 1 month ago (2015-11-24 08:59:39 UTC) #16
Kevin M
https://codereview.chromium.org/1450423002/diff/160001/blimp/client/render_widget_message_processor.cc File blimp/client/render_widget_message_processor.cc (right): https://codereview.chromium.org/1450423002/diff/160001/blimp/client/render_widget_message_processor.cc#newcode32 blimp/client/render_widget_message_processor.cc:32: blimp_message->set_type(BlimpMessage::INPUT); Can be omitted, the MultiplexedSender sets the type. ...
5 years ago (2015-11-24 18:39:59 UTC) #17
nyquist
https://codereview.chromium.org/1450423002/diff/160001/blimp/client/compositor/blimp_compositor.h File blimp/client/compositor/blimp_compositor.h (right): https://codereview.chromium.org/1450423002/diff/160001/blimp/client/compositor/blimp_compositor.h#newcode35 blimp/client/compositor/blimp_compositor.h:35: // LayerTreeHost (compositor). The rendering surface this compositor draws ...
5 years ago (2015-11-24 20:24:47 UTC) #18
David Trainor- moved to gerrit
rbyers@: can you look at blimp/engine/DEPS? mmenke@: Can you look at blimp/client/DEPS? Thanks! :) https://chromiumcodereview.appspot.com/1450423002/diff/140001/blimp/client/android/blimp_view.cc ...
5 years ago (2015-11-25 17:56:42 UTC) #20
Rick Byers
blink/engine/DEPS LGTM As discussed elsewhere, WebInputEvent will change over time and so won't be a ...
5 years ago (2015-11-25 18:30:52 UTC) #21
Kevin M
lgtm
5 years ago (2015-11-30 19:37:54 UTC) #22
David Trainor- moved to gerrit
mmenke@: Can you look at blimp/client/DEPS? Thanks! :) I think I forgot to actually add ...
5 years ago (2015-11-30 19:43:28 UTC) #24
mmenke
https://chromiumcodereview.appspot.com/1450423002/diff/260001/blimp/client/DEPS File blimp/client/DEPS (right): https://chromiumcodereview.appspot.com/1450423002/diff/260001/blimp/client/DEPS#newcode9 blimp/client/DEPS:9: "+net", Can we restrict this to net/base for now? ...
5 years ago (2015-11-30 19:50:08 UTC) #25
David Trainor- moved to gerrit
done thanks! https://chromiumcodereview.appspot.com/1450423002/diff/260001/blimp/client/DEPS File blimp/client/DEPS (right): https://chromiumcodereview.appspot.com/1450423002/diff/260001/blimp/client/DEPS#newcode9 blimp/client/DEPS:9: "+net", On 2015/11/30 19:50:08, mmenke wrote: > ...
5 years ago (2015-11-30 19:54:27 UTC) #26
mmenke
On 2015/11/30 19:54:27, David Trainor wrote: > done thanks! > > https://chromiumcodereview.appspot.com/1450423002/diff/260001/blimp/client/DEPS > File blimp/client/DEPS ...
5 years ago (2015-11-30 19:58:08 UTC) #27
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1450423002/300001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1450423002/300001
5 years ago (2015-11-30 21:18:03 UTC) #30
commit-bot: I haz the power
Try jobs failed on following builders: android_chromium_gn_compile_rel on tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/android_chromium_gn_compile_rel/builds/164069)
5 years ago (2015-11-30 21:55:25 UTC) #32
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1450423002/320001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1450423002/320001
5 years ago (2015-11-30 22:58:14 UTC) #35
commit-bot: I haz the power
Committed patchset #17 (id:320001)
5 years ago (2015-12-01 00:53:13 UTC) #36
commit-bot: I haz the power
5 years ago (2015-12-01 00:54:11 UTC) #38
Message was sent while issue was closed.
Patchset 17 (id:??) landed as
https://crrev.com/160f8eca573286f3bb369975ac2e9de63b0cc477
Cr-Commit-Position: refs/heads/master@{#362299}

Powered by Google App Engine
This is Rietveld 408576698