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

Issue 12545018: Move context-related callbacks into OutputSurface (Closed)

Created:
7 years, 9 months ago by jamesr
Modified:
7 years, 8 months ago
CC:
chromium-reviews, cc-bugs_chromium.org, enne (OOO), piman, danakj, slavi, Sami
Visibility:
Public.

Description

Move swapcomplete callback into OutputSurface Things like swap are concepts of an OutputSurface, not a context. Moving the callbacks to OutputSurface will also reduce cc's knowledge of the context guts and let us swap out the GL interface. Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=194394 Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=194700

Patch Set 1 #

Patch Set 2 : hook up lost context callback, fails one unit test #

Patch Set 3 : rebased #

Total comments: 2

Patch Set 4 : rebased to r187308 #

Patch Set 5 : fixes cc_unittests #

Patch Set 6 : works #

Total comments: 2

Patch Set 7 : suppress lost context notification before renderer initialized #

Total comments: 4

Patch Set 8 : add TODO #

Patch Set 9 : rebased #

Patch Set 10 : rebased harder #

Patch Set 11 : rebased #

Total comments: 1

Patch Set 12 : call OnSwapComplete when getting compositor frame ack #

Patch Set 13 : unit test #

Unified diffs Side-by-side diffs Delta from patch set Stats (+80 lines, -79 lines) Patch
M cc/output/delegating_renderer.h View 1 2 3 4 5 6 7 8 2 chunks +2 lines, -7 lines 0 comments Download
M cc/output/delegating_renderer.cc View 1 2 3 4 5 6 7 8 9 4 chunks +1 line, -12 lines 0 comments Download
M cc/output/gl_renderer.h View 1 2 3 4 5 6 7 8 9 4 chunks +5 lines, -21 lines 0 comments Download
M cc/output/gl_renderer.cc View 1 2 3 4 5 6 7 8 9 10 5 chunks +0 lines, -13 lines 0 comments Download
M cc/output/gl_renderer_unittest.cc View 1 2 3 4 5 6 7 8 9 10 1 chunk +0 lines, -2 lines 0 comments Download
M cc/output/output_surface.h View 1 2 3 4 5 6 7 8 9 10 2 chunks +3 lines, -0 lines 0 comments Download
M cc/output/output_surface.cc View 1 2 3 4 5 6 7 8 9 10 3 chunks +26 lines, -0 lines 0 comments Download
M cc/output/output_surface_client.h View 1 2 3 4 5 6 7 8 1 chunk +2 lines, -0 lines 0 comments Download
M cc/output/renderer.h View 1 2 3 4 5 6 7 8 9 10 1 chunk +0 lines, -2 lines 0 comments Download
M cc/output/software_renderer.cc View 1 2 3 4 5 6 7 8 9 10 1 chunk +0 lines, -2 lines 0 comments Download
M cc/output/software_renderer_unittest.cc View 1 2 3 4 5 6 7 8 9 10 1 chunk +0 lines, -2 lines 0 comments Download
M cc/test/fake_output_surface.h View 1 2 3 4 5 6 7 8 1 chunk +0 lines, -1 line 0 comments Download
M cc/test/fake_output_surface.cc View 1 2 3 4 5 6 7 8 1 chunk +0 lines, -9 lines 0 comments Download
M cc/test/pixel_test.cc View 1 2 3 4 5 6 7 8 9 10 1 chunk +0 lines, -2 lines 0 comments Download
M cc/trees/layer_tree_host_impl.cc View 1 2 3 4 5 6 7 8 9 10 11 2 chunks +8 lines, -1 line 0 comments Download
M cc/trees/layer_tree_host_impl_unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 4 chunks +32 lines, -2 lines 0 comments Download
M cc/trees/single_thread_proxy.h View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +1 line, -1 line 0 comments Download
M cc/trees/single_thread_proxy.cc View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +0 lines, -2 lines 0 comments Download

Messages

Total messages: 36 (0 generated)
jamesr
I've flubbed the lost context hookup somehow so a few cc_unittests in LayerTreeHostContextTest fail, but ...
7 years, 9 months ago (2013-03-08 03:07:35 UTC) #1
piman
https://codereview.chromium.org/12545018/diff/4004/cc/output_surface.h File cc/output_surface.h (right): https://codereview.chromium.org/12545018/diff/4004/cc/output_surface.h#newcode101 cc/output_surface.h:101: scoped_ptr<OutputSurfaceCallbacks> callbacks_; nit: we probably want to have the ...
7 years, 9 months ago (2013-03-08 05:11:56 UTC) #2
piman
By the way, this is cool.
7 years, 9 months ago (2013-03-08 05:12:28 UTC) #3
jamesr
This passes tests and seems to work in practice as far as I can tell. ...
7 years, 9 months ago (2013-03-14 23:39:29 UTC) #4
piman
https://codereview.chromium.org/12545018/diff/18001/cc/layer_tree_host_impl.cc File cc/layer_tree_host_impl.cc (right): https://codereview.chromium.org/12545018/diff/18001/cc/layer_tree_host_impl.cc#newcode1248 cc/layer_tree_host_impl.cc:1248: output_surface_->RegisterCallbacks(); It's rather unfortunate that we have this very ...
7 years, 9 months ago (2013-03-15 03:20:38 UTC) #5
jamesr
This passes tests. The difference in behavior was whether we fired lost context notifications before ...
7 years, 9 months ago (2013-03-24 23:42:23 UTC) #6
piman
lgtm
7 years, 9 months ago (2013-03-25 18:18:06 UTC) #7
enne (OOO)
Wow, this really cleans things up! https://codereview.chromium.org/12545018/diff/39001/cc/output/output_surface.cc File cc/output/output_surface.cc (right): https://codereview.chromium.org/12545018/diff/39001/cc/output/output_surface.cc#newcode28 cc/output/output_surface.cc:28: public WebKit::WebGraphicsContext3D::WebGraphicsSwapBuffersCompleteCallbackCHROMIUM, style ...
7 years, 9 months ago (2013-03-25 18:29:19 UTC) #8
danakj
https://codereview.chromium.org/12545018/diff/39001/cc/trees/layer_tree_host_impl.cc File cc/trees/layer_tree_host_impl.cc (right): https://codereview.chromium.org/12545018/diff/39001/cc/trees/layer_tree_host_impl.cc#newcode1055 cc/trees/layer_tree_host_impl.cc:1055: if (renderer_) On 2013/03/25 18:29:19, enne wrote: > Why ...
7 years, 9 months ago (2013-03-25 18:40:43 UTC) #9
jamesr
On 2013/03/25 18:40:43, danakj wrote: > https://codereview.chromium.org/12545018/diff/39001/cc/trees/layer_tree_host_impl.cc > File cc/trees/layer_tree_host_impl.cc (right): > > https://codereview.chromium.org/12545018/diff/39001/cc/trees/layer_tree_host_impl.cc#newcode1055 > ...
7 years, 9 months ago (2013-03-25 20:34:21 UTC) #10
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/jamesr@chromium.org/12545018/48002
7 years, 9 months ago (2013-03-25 21:10:05 UTC) #11
commit-bot: I haz the power
The commit queue went berserk retrying too often for a seemingly flaky test. Builder is ...
7 years, 9 months ago (2013-03-26 03:29:55 UTC) #12
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/jamesr@chromium.org/12545018/48002
7 years, 9 months ago (2013-03-26 03:40:46 UTC) #13
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/jamesr@chromium.org/12545018/48002
7 years, 9 months ago (2013-03-26 06:53:02 UTC) #14
commit-bot: I haz the power
The commit queue went berserk retrying too often for a seemingly flaky test. Builder is ...
7 years, 9 months ago (2013-03-26 12:47:52 UTC) #15
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/jamesr@chromium.org/12545018/48002
7 years, 9 months ago (2013-03-26 15:04:19 UTC) #16
jamesr
Patch appears to do something weird on android. Will attempt to figure what that is ...
7 years, 9 months ago (2013-03-26 19:44:33 UTC) #17
jamesr
This still fails on android trybots in contentshell_instrumentation_tests with failures like this: C 246s Main ...
7 years, 8 months ago (2013-04-12 22:21:56 UTC) #18
aelias_OOO_until_Jul13
[+aruslan who wrote this part of the test infra] That code waits until the page ...
7 years, 8 months ago (2013-04-15 04:36:55 UTC) #19
aruslan
On 2013/04/15 04:36:55, aelias wrote: > [+aruslan who wrote this part of the test infra] ...
7 years, 8 months ago (2013-04-15 13:47:50 UTC) #20
aruslan
On 2013/04/12 22:21:56, jamesr wrote: > This still fails on android trybots in contentshell_instrumentation_tests with ...
7 years, 8 months ago (2013-04-16 15:04:37 UTC) #21
jamesr
On 2013/04/16 15:04:37, aruslan wrote: > jamesr@ -- the trybot failures are NOT related to ...
7 years, 8 months ago (2013-04-16 18:03:11 UTC) #22
jamesr
Committed patchset #11 manually as r194394 (presubmit successful).
7 years, 8 months ago (2013-04-16 18:07:23 UTC) #23
aruslan
7 years, 8 months ago (2013-04-16 22:03:56 UTC) #24
aelias_OOO_until_Jul13
This patch got reverted because it does break the bots after all. Sorry about the ...
7 years, 8 months ago (2013-04-16 22:10:24 UTC) #25
jamesr
On 2013/04/16 22:10:24, aelias wrote: > This patch got reverted because it does break the ...
7 years, 8 months ago (2013-04-16 22:30:05 UTC) #26
jamesr
https://codereview.chromium.org/12545018/diff/92001/cc/output/gl_renderer.cc File cc/output/gl_renderer.cc (left): https://codereview.chromium.org/12545018/diff/92001/cc/output/gl_renderer.cc#oldcode1893 cc/output/gl_renderer.cc:1893: onSwapBuffersComplete(); aha! This is the change that broke Android. ...
7 years, 8 months ago (2013-04-17 00:15:34 UTC) #27
jamesr
On 2013/04/17 00:15:34, jamesr wrote: > 2.) How is Android set up to swap this ...
7 years, 8 months ago (2013-04-17 00:20:58 UTC) #28
aelias_OOO_until_Jul13
[+sievers and skyostil who are currently working in this area]
7 years, 8 months ago (2013-04-17 00:22:04 UTC) #29
jamesr
Rest of the mysteries appear to be answered in content/renderer/gpu/compositor_output_surface.cc, assuming android's using composite-to-mailbox currently.
7 years, 8 months ago (2013-04-17 00:28:19 UTC) #30
aelias_OOO_until_Jul13
Yes, Android is using --composite-to-mailbox and will continue to do so until we switch to ...
7 years, 8 months ago (2013-04-17 00:54:23 UTC) #31
no sievers
On 2013/04/17 00:20:58, jamesr wrote: > On 2013/04/17 00:15:34, jamesr wrote: > > 2.) How ...
7 years, 8 months ago (2013-04-17 01:11:54 UTC) #32
jamesr
On 2013/04/17 01:11:54, Daniel Sievers wrote: > On 2013/04/17 00:20:58, jamesr wrote: > > On ...
7 years, 8 months ago (2013-04-17 01:15:19 UTC) #33
no sievers
On 2013/04/17 00:15:34, jamesr wrote:> > 2.) How is Android set up to swap this ...
7 years, 8 months ago (2013-04-17 01:27:58 UTC) #34
jamesr
This adds a (somewhat dumb) unit test to make sure acking the compositor frame data ...
7 years, 8 months ago (2013-04-17 01:38:22 UTC) #35
jamesr
7 years, 8 months ago (2013-04-17 22:06:07 UTC) #36
Message was sent while issue was closed.
Committed patchset #13 manually as r194700.

Powered by Google App Engine
This is Rietveld 408576698