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 2738923002: Add DisplayClientCompositorFrameSink (Closed)

Created:
3 years, 9 months ago by Alex Z.
Modified:
3 years, 9 months ago
Reviewers:
Fady Samuel, msw
CC:
chromium-reviews, rjkroege, danakj, Eric Seckler
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Add DisplayClientCompositorFrameSink class. DisplayClientCompositorFrameSink can be understood as a ClientCompositorFrameSink that also has a DisplayPrivate interface pointer. This is part of the effort to make FrameGenerator mockable and unit test-able. DisplayClientCompositorFrameSink will be used by FrameGenerator in the future where FrameGenerator takes a cc::CompositorFrameSink* (DisplayClientCompositorFramesink by default) upon creation. We can then unit test FrameGenerator with a TestCompositorFrameSink. BUG=683732 Review-Url: https://codereview.chromium.org/2738923002 Cr-Commit-Position: refs/heads/master@{#456282} Committed: https://chromium.googlesource.com/chromium/src/+/72df4334a57fdd13b8dbbc7cd48895fcd79b3a63

Patch Set 1 #

Patch Set 2 : Implement DisplayClientCompositorFrameSink #

Total comments: 2

Patch Set 3 : Moved DisplayClientCompositorFrameSink to services/ui/ws #

Patch Set 4 : Fixed includes #

Patch Set 5 : Crashing mojo #

Total comments: 12

Patch Set 6 : Addressed comments #

Patch Set 7 : SetLocalSurfaceId before submitting CompositorFrame #

Patch Set 8 : Updated BeginFrame requests logic and other fixes from fsamuel@ #

Total comments: 23

Patch Set 9 : clean up #

Total comments: 16

Patch Set 10 : addressed comments #

Total comments: 20

Patch Set 11 : addressed nits #

Unified diffs Side-by-side diffs Delta from patch set Stats (+302 lines, -71 lines) Patch
M services/ui/ws/BUILD.gn View 1 2 3 4 5 1 chunk +2 lines, -0 lines 0 comments Download
A services/ui/ws/display_client_compositor_frame_sink.h View 1 2 3 4 5 6 7 8 9 10 1 chunk +71 lines, -0 lines 0 comments Download
A services/ui/ws/display_client_compositor_frame_sink.cc View 1 2 3 4 5 6 7 8 9 10 1 chunk +106 lines, -0 lines 0 comments Download
M services/ui/ws/frame_generator.h View 1 2 3 4 5 6 7 8 9 10 3 chunks +34 lines, -25 lines 0 comments Download
M services/ui/ws/frame_generator.cc View 1 2 3 4 5 6 7 8 9 4 chunks +67 lines, -44 lines 0 comments Download
M services/ui/ws/platform_display_default.h View 1 2 3 4 5 6 7 8 1 chunk +1 line, -0 lines 0 comments Download
M services/ui/ws/platform_display_default.cc View 1 2 3 4 5 6 7 8 2 chunks +21 lines, -2 lines 0 comments Download

Messages

Total messages: 39 (21 generated)
Alex Z.
fsamuel@: Please review DisplayClientCompositorFrameSink. msw@: Please review BUILD.gn.
3 years, 9 months ago (2017-03-09 18:44:28 UTC) #4
Fady Samuel
This looks good so far. Please move DisplayClientCompositorFrameSink into services/ui/ws. Please update FrameGenerator to use ...
3 years, 9 months ago (2017-03-09 18:50:10 UTC) #5
Alex Z.
https://codereview.chromium.org/2738923002/diff/20001/services/ui/public/cpp/display_client_compositor_frame_sink.h File services/ui/public/cpp/display_client_compositor_frame_sink.h (right): https://codereview.chromium.org/2738923002/diff/20001/services/ui/public/cpp/display_client_compositor_frame_sink.h#newcode24 services/ui/public/cpp/display_client_compositor_frame_sink.h:24: class DisplayClientCompositorFrameSink On 2017/03/09 18:50:10, Fady Samuel wrote: > ...
3 years, 9 months ago (2017-03-09 18:56:08 UTC) #7
Fady Samuel
https://codereview.chromium.org/2738923002/diff/80001/services/ui/ws/frame_generator.cc File services/ui/ws/frame_generator.cc (left): https://codereview.chromium.org/2738923002/diff/80001/services/ui/ws/frame_generator.cc#oldcode63 services/ui/ws/frame_generator.cc:63: compositor_frame_sink_->SetNeedsBeginFrame(true); What you want instead is to add an ...
3 years, 9 months ago (2017-03-09 21:25:19 UTC) #11
Fady Samuel
https://codereview.chromium.org/2738923002/diff/80001/services/ui/ws/platform_display_default.cc File services/ui/ws/platform_display_default.cc (right): https://codereview.chromium.org/2738923002/diff/80001/services/ui/ws/platform_display_default.cc#newcode253 services/ui/ws/platform_display_default.cc:253: cc::mojom::MojoCompositorFrameSinkAssociatedPtrInfo compositor_frame_sink; These need to be member variables in ...
3 years, 9 months ago (2017-03-09 21:27:49 UTC) #12
Alex Z.
https://codereview.chromium.org/2738923002/diff/80001/services/ui/ws/frame_generator.cc File services/ui/ws/frame_generator.cc (left): https://codereview.chromium.org/2738923002/diff/80001/services/ui/ws/frame_generator.cc#oldcode63 services/ui/ws/frame_generator.cc:63: compositor_frame_sink_->SetNeedsBeginFrame(true); On 2017/03/09 21:25:18, Fady Samuel wrote: > What ...
3 years, 9 months ago (2017-03-10 16:04:01 UTC) #13
Fady Samuel
https://codereview.chromium.org/2738923002/diff/150001/services/ui/ws/frame_generator.cc File services/ui/ws/frame_generator.cc (right): https://codereview.chromium.org/2738923002/diff/150001/services/ui/ws/frame_generator.cc#newcode29 services/ui/ws/frame_generator.cc:29: gfx::AcceleratedWidget widget, Remove this? https://codereview.chromium.org/2738923002/diff/150001/services/ui/ws/frame_generator.cc#newcode35 services/ui/ws/frame_generator.cc:35: DCHECK_NE(gfx::kNullAcceleratedWidget, widget); Remove ...
3 years, 9 months ago (2017-03-10 18:37:57 UTC) #20
Alex Z.
https://codereview.chromium.org/2738923002/diff/150001/services/ui/ws/frame_generator.cc File services/ui/ws/frame_generator.cc (right): https://codereview.chromium.org/2738923002/diff/150001/services/ui/ws/frame_generator.cc#newcode29 services/ui/ws/frame_generator.cc:29: gfx::AcceleratedWidget widget, On 2017/03/10 18:37:57, Fady Samuel wrote: > ...
3 years, 9 months ago (2017-03-10 19:08:39 UTC) #22
Fady Samuel
looks good once my remaining comments are addressed. https://codereview.chromium.org/2738923002/diff/170001/services/ui/ws/display_client_compositor_frame_sink.cc File services/ui/ws/display_client_compositor_frame_sink.cc (right): https://codereview.chromium.org/2738923002/diff/170001/services/ui/ws/display_client_compositor_frame_sink.cc#newcode77 services/ui/ws/display_client_compositor_frame_sink.cc:77: const ...
3 years, 9 months ago (2017-03-10 19:17:40 UTC) #24
Alex Z.
https://codereview.chromium.org/2738923002/diff/170001/services/ui/ws/display_client_compositor_frame_sink.cc File services/ui/ws/display_client_compositor_frame_sink.cc (right): https://codereview.chromium.org/2738923002/diff/170001/services/ui/ws/display_client_compositor_frame_sink.cc#newcode77 services/ui/ws/display_client_compositor_frame_sink.cc:77: const cc::BeginFrameArgs& begin_frame_args) { On 2017/03/10 19:17:39, Fady Samuel ...
3 years, 9 months ago (2017-03-10 19:28:50 UTC) #25
Fady Samuel
LGTM
3 years, 9 months ago (2017-03-10 19:30:38 UTC) #26
msw
Fady should probably be an owner here; I have far less familiarity in this area. ...
3 years, 9 months ago (2017-03-10 20:08:41 UTC) #27
Fady Samuel
https://codereview.chromium.org/2738923002/diff/190001/services/ui/ws/frame_generator.cc File services/ui/ws/frame_generator.cc (right): https://codereview.chromium.org/2738923002/diff/190001/services/ui/ws/frame_generator.cc#newcode190 services/ui/ws/frame_generator.cc:190: begin_frame_source_->AddObserver(this); On 2017/03/10 20:08:41, msw wrote: > Should this ...
3 years, 9 months ago (2017-03-10 20:17:58 UTC) #28
msw
https://codereview.chromium.org/2738923002/diff/190001/services/ui/ws/frame_generator.cc File services/ui/ws/frame_generator.cc (right): https://codereview.chromium.org/2738923002/diff/190001/services/ui/ws/frame_generator.cc#newcode190 services/ui/ws/frame_generator.cc:190: begin_frame_source_->AddObserver(this); On 2017/03/10 20:17:58, Fady Samuel wrote: > On ...
3 years, 9 months ago (2017-03-10 20:23:29 UTC) #29
Alex Z.
https://codereview.chromium.org/2738923002/diff/190001/services/ui/ws/frame_generator.cc File services/ui/ws/frame_generator.cc (right): https://codereview.chromium.org/2738923002/diff/190001/services/ui/ws/frame_generator.cc#newcode190 services/ui/ws/frame_generator.cc:190: begin_frame_source_->AddObserver(this); On 2017/03/10 20:23:29, msw wrote: > On 2017/03/10 ...
3 years, 9 months ago (2017-03-11 03:25:07 UTC) #30
Alex Z.
https://codereview.chromium.org/2738923002/diff/190001/services/ui/ws/display_client_compositor_frame_sink.cc File services/ui/ws/display_client_compositor_frame_sink.cc (right): https://codereview.chromium.org/2738923002/diff/190001/services/ui/ws/display_client_compositor_frame_sink.cc#newcode31 services/ui/ws/display_client_compositor_frame_sink.cc:31: thread_checker_.reset(new base::ThreadChecker()); On 2017/03/10 20:08:40, msw wrote: > nit: ...
3 years, 9 months ago (2017-03-11 03:52:20 UTC) #33
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2738923002/210001
3 years, 9 months ago (2017-03-11 03:52:50 UTC) #36
commit-bot: I haz the power
3 years, 9 months ago (2017-03-11 17:49:57 UTC) #39
Message was sent while issue was closed.
Committed patchset #11 (id:210001) as
https://chromium.googlesource.com/chromium/src/+/72df4334a57fdd13b8dbbc7cd488...

Powered by Google App Engine
This is Rietveld 408576698