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

Issue 2551083003: Add Satisfy() and Require() to MojoCompositorFrameSink (Closed)

Created:
4 years ago by Alex Z.
Modified:
4 years ago
CC:
chromium-reviews, rjkroege, qsr+mojo_chromium.org, viettrungluu+watch_chromium.org, jam, yzshen+watch_chromium.org, abarth-chromium, Aaron Boodman, darin-cc_chromium.org, cc-bugs_chromium.org, darin (slow to review)
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Add Satisfy() and Require() to MojoCompositorFrameSink Sometimes Wayland client requires a surface before it is created by SubmitCompositorFrame() since the request and creation use different message pipes. This CL moves the implementation of Require and Satisfy to CompositorFrameSink so that they share one message pipe with SubmitCompositorFrame and things would happen in the correct order. This is a temporary fix. kylechar@'s change of surface reference (CL 2541683004) would formally address this issue. BUG=659601 CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_trusty_blink_rel Committed: https://crrev.com/e6b29c494898402e221db3ff490d219ca0bab9fe Cr-Commit-Position: refs/heads/master@{#436806}

Patch Set 1 #

Total comments: 2

Patch Set 2 : Added TODO: Remove the new methods comment to the mojo interface #

Total comments: 4

Patch Set 3 : Implemented Require() and Satisfy() in CompositorFrameSinkSupport #

Total comments: 6

Patch Set 4 : Addressed comments #

Total comments: 2

Patch Set 5 : Addressed a nit #

Total comments: 2

Patch Set 6 : Revert the DCHECK to if and LOG #

Patch Set 7 : Rebase; changed LOG to DLOG #

Unified diffs Side-by-side diffs Delta from patch set Stats (+59 lines, -0 lines) Patch
M cc/ipc/mojo_compositor_frame_sink.mojom View 1 2 3 4 5 6 2 chunks +11 lines, -0 lines 0 comments Download
M cc/surfaces/compositor_frame_sink_support.h View 1 2 3 4 5 6 1 chunk +3 lines, -0 lines 0 comments Download
M cc/surfaces/compositor_frame_sink_support.cc View 1 2 3 4 5 6 2 chunks +17 lines, -0 lines 0 comments Download
M content/browser/renderer_host/offscreen_canvas_compositor_frame_sink.h View 1 2 3 4 5 6 1 chunk +3 lines, -0 lines 0 comments Download
M content/browser/renderer_host/offscreen_canvas_compositor_frame_sink.cc View 1 2 3 4 5 6 1 chunk +13 lines, -0 lines 0 comments Download
M services/ui/surfaces/gpu_compositor_frame_sink.h View 1 2 3 4 5 6 1 chunk +3 lines, -0 lines 0 comments Download
M services/ui/surfaces/gpu_compositor_frame_sink.cc View 1 2 3 4 5 6 1 chunk +9 lines, -0 lines 0 comments Download

Messages

Total messages: 34 (10 generated)
Alex Z.
tsepez@: Please review the changes in mojo_compositor_frame_sink.mojom. fsamuel@: Please review the changes in gpu_compositor_frame_sink.* xidachen@: ...
4 years ago (2016-12-05 19:49:50 UTC) #4
Fady Samuel
Please provide an implementation of this in CompositorFrameSinkSupport. https://codereview.chromium.org/2551083003/diff/1/cc/ipc/mojo_compositor_frame_sink.mojom File cc/ipc/mojo_compositor_frame_sink.mojom (right): https://codereview.chromium.org/2551083003/diff/1/cc/ipc/mojo_compositor_frame_sink.mojom#newcode39 cc/ipc/mojo_compositor_frame_sink.mojom:39: // ...
4 years ago (2016-12-05 20:03:09 UTC) #5
Alex Z.
https://codereview.chromium.org/2551083003/diff/1/cc/ipc/mojo_compositor_frame_sink.mojom File cc/ipc/mojo_compositor_frame_sink.mojom (right): https://codereview.chromium.org/2551083003/diff/1/cc/ipc/mojo_compositor_frame_sink.mojom#newcode39 cc/ipc/mojo_compositor_frame_sink.mojom:39: // Add the provided |sequence| as a destruction dependency ...
4 years ago (2016-12-05 20:07:49 UTC) #6
Fady Samuel
https://codereview.chromium.org/2551083003/diff/20001/services/ui/surfaces/gpu_compositor_frame_sink.cc File services/ui/surfaces/gpu_compositor_frame_sink.cc (right): https://codereview.chromium.org/2551083003/diff/20001/services/ui/surfaces/gpu_compositor_frame_sink.cc#newcode52 services/ui/surfaces/gpu_compositor_frame_sink.cc:52: // TODO(staraz): Implement this. Please add an implementation to ...
4 years ago (2016-12-05 20:13:31 UTC) #7
Tom Sepez
mojom itself LGTM.
4 years ago (2016-12-05 21:00:20 UTC) #8
Alex Z.
https://codereview.chromium.org/2551083003/diff/20001/services/ui/surfaces/gpu_compositor_frame_sink.cc File services/ui/surfaces/gpu_compositor_frame_sink.cc (right): https://codereview.chromium.org/2551083003/diff/20001/services/ui/surfaces/gpu_compositor_frame_sink.cc#newcode52 services/ui/surfaces/gpu_compositor_frame_sink.cc:52: // TODO(staraz): Implement this. On 2016/12/05 20:13:31, Fady Samuel ...
4 years ago (2016-12-05 21:11:07 UTC) #9
Fady Samuel
lgtm
4 years ago (2016-12-05 22:13:24 UTC) #10
danakj
https://codereview.chromium.org/2551083003/diff/40001/cc/surfaces/compositor_frame_sink_support.cc File cc/surfaces/compositor_frame_sink_support.cc (right): https://codereview.chromium.org/2551083003/diff/40001/cc/surfaces/compositor_frame_sink_support.cc#newcode87 cc/surfaces/compositor_frame_sink_support.cc:87: LOG(ERROR) << "Attempting to require callback on nonexistent surface"; ...
4 years ago (2016-12-06 00:08:17 UTC) #11
Fady Samuel
https://codereview.chromium.org/2551083003/diff/40001/cc/surfaces/compositor_frame_sink_support.cc File cc/surfaces/compositor_frame_sink_support.cc (right): https://codereview.chromium.org/2551083003/diff/40001/cc/surfaces/compositor_frame_sink_support.cc#newcode87 cc/surfaces/compositor_frame_sink_support.cc:87: LOG(ERROR) << "Attempting to require callback on nonexistent surface"; ...
4 years ago (2016-12-06 00:12:14 UTC) #12
danakj
https://codereview.chromium.org/2551083003/diff/40001/cc/surfaces/compositor_frame_sink_support.cc File cc/surfaces/compositor_frame_sink_support.cc (right): https://codereview.chromium.org/2551083003/diff/40001/cc/surfaces/compositor_frame_sink_support.cc#newcode87 cc/surfaces/compositor_frame_sink_support.cc:87: LOG(ERROR) << "Attempting to require callback on nonexistent surface"; ...
4 years ago (2016-12-06 00:29:29 UTC) #13
xidachen
changes under renderer_host/ lgtm
4 years ago (2016-12-06 01:18:02 UTC) #16
Alex Z.
https://codereview.chromium.org/2551083003/diff/40001/cc/surfaces/compositor_frame_sink_support.cc File cc/surfaces/compositor_frame_sink_support.cc (right): https://codereview.chromium.org/2551083003/diff/40001/cc/surfaces/compositor_frame_sink_support.cc#newcode87 cc/surfaces/compositor_frame_sink_support.cc:87: LOG(ERROR) << "Attempting to require callback on nonexistent surface"; ...
4 years ago (2016-12-06 15:52:09 UTC) #17
Fady Samuel
lgtm + nit https://codereview.chromium.org/2551083003/diff/60001/cc/surfaces/compositor_frame_sink_support.cc File cc/surfaces/compositor_frame_sink_support.cc (right): https://codereview.chromium.org/2551083003/diff/60001/cc/surfaces/compositor_frame_sink_support.cc#newcode86 cc/surfaces/compositor_frame_sink_support.cc:86: DCHECK(surface); // Ensure the surface exists ...
4 years ago (2016-12-06 16:45:25 UTC) #18
Alex Z.
https://codereview.chromium.org/2551083003/diff/60001/cc/surfaces/compositor_frame_sink_support.cc File cc/surfaces/compositor_frame_sink_support.cc (right): https://codereview.chromium.org/2551083003/diff/60001/cc/surfaces/compositor_frame_sink_support.cc#newcode86 cc/surfaces/compositor_frame_sink_support.cc:86: DCHECK(surface); // Ensure the surface exists before requiring callback ...
4 years ago (2016-12-06 16:55:40 UTC) #19
danakj
https://codereview.chromium.org/2551083003/diff/80001/cc/surfaces/compositor_frame_sink_support.cc File cc/surfaces/compositor_frame_sink_support.cc (right): https://codereview.chromium.org/2551083003/diff/80001/cc/surfaces/compositor_frame_sink_support.cc#newcode87 cc/surfaces/compositor_frame_sink_support.cc:87: // If this fails then that implies that a ...
4 years ago (2016-12-06 21:12:45 UTC) #20
Alex Z.
https://codereview.chromium.org/2551083003/diff/80001/cc/surfaces/compositor_frame_sink_support.cc File cc/surfaces/compositor_frame_sink_support.cc (right): https://codereview.chromium.org/2551083003/diff/80001/cc/surfaces/compositor_frame_sink_support.cc#newcode87 cc/surfaces/compositor_frame_sink_support.cc:87: // If this fails then that implies that a ...
4 years ago (2016-12-06 21:39:52 UTC) #21
Fady Samuel
I think you're going to need to rebase.
4 years ago (2016-12-06 21:42:26 UTC) #22
danakj
On 2016/12/06 21:39:52, StarAZ1 wrote: > https://codereview.chromium.org/2551083003/diff/80001/cc/surfaces/compositor_frame_sink_support.cc > File cc/surfaces/compositor_frame_sink_support.cc (right): > > https://codereview.chromium.org/2551083003/diff/80001/cc/surfaces/compositor_frame_sink_support.cc#newcode87 > ...
4 years ago (2016-12-06 22:10:22 UTC) #23
Alex Z.
On 2016/12/06 21:42:26, Fady Samuel wrote: > I think you're going to need to rebase. ...
4 years ago (2016-12-06 22:31:20 UTC) #24
Alex Z.
On 2016/12/06 22:10:22, danakj wrote: > On 2016/12/06 21:39:52, StarAZ1 wrote: > > > https://codereview.chromium.org/2551083003/diff/80001/cc/surfaces/compositor_frame_sink_support.cc ...
4 years ago (2016-12-06 22:32:34 UTC) #25
danakj
LGTM
4 years ago (2016-12-06 22:39:10 UTC) #26
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/2551083003/120001
4 years ago (2016-12-06 22:41:08 UTC) #29
commit-bot: I haz the power
Committed patchset #7 (id:120001)
4 years ago (2016-12-07 01:04:13 UTC) #32
commit-bot: I haz the power
4 years ago (2016-12-07 01:09:05 UTC) #34
Message was sent while issue was closed.
Patchset 7 (id:??) landed as
https://crrev.com/e6b29c494898402e221db3ff490d219ca0bab9fe
Cr-Commit-Position: refs/heads/master@{#436806}

Powered by Google App Engine
This is Rietveld 408576698