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

Issue 7205012: RendererGLContext supports reparenting a GL context. (Closed)

Created:
9 years, 6 months ago by apatrick_chromium
Modified:
9 years, 6 months ago
CC:
chromium-reviews, joi+watch-content_chromium.org, jam, darin-cc_chromium.org, apatrick_chromium, jbates
Visibility:
Public.

Description

RendererGLContext supports reparenting a GL context. This will allow the parenting of offscreen canvas contexts to be deferred until the compositor's view context exists, which in some cases needs to be deferred until the window is asynchronously created by the browser's UI thread. An example is JavaScript opening a popup window and then immediately using canvas to attempt to render to it. This patch alone does not fix the bug. BUG=80703 Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=89715

Patch Set 1 #

Patch Set 2 : '' #

Patch Set 3 : '' #

Patch Set 4 : '' #

Patch Set 5 : '' #

Total comments: 4
Unified diffs Side-by-side diffs Delta from patch set Stats (+202 lines, -182 lines) Patch
M content/common/gpu/gpu_channel.h View 1 2 3 4 2 chunks +2 lines, -2 lines 0 comments Download
M content/common/gpu/gpu_channel.cc View 1 2 3 4 3 chunks +6 lines, -9 lines 0 comments Download
M content/common/gpu/gpu_command_buffer_stub.h View 1 2 3 4 3 chunks +3 lines, -4 lines 0 comments Download
M content/common/gpu/gpu_command_buffer_stub.cc View 1 2 3 4 5 chunks +22 lines, -9 lines 0 comments Download
M content/common/gpu/gpu_messages.h View 1 2 3 4 2 chunks +9 lines, -7 lines 0 comments Download
M content/renderer/gpu/command_buffer_proxy.h View 1 2 3 4 1 chunk +7 lines, -0 lines 0 comments Download
M content/renderer/gpu/command_buffer_proxy.cc View 1 2 3 4 1 chunk +27 lines, -0 lines 0 comments Download
M content/renderer/gpu/gpu_channel_host.h View 1 2 3 4 1 chunk +0 lines, -2 lines 0 comments Download
M content/renderer/gpu/gpu_channel_host.cc View 1 2 3 4 2 chunks +1 line, -6 lines 0 comments Download
M content/renderer/gpu/renderer_gl_context.h View 1 2 3 4 2 chunks +5 lines, -3 lines 0 comments Download
M content/renderer/gpu/renderer_gl_context.cc View 1 2 3 4 8 chunks +45 lines, -31 lines 2 comments Download
M content/renderer/gpu/webgraphicscontext3d_command_buffer_impl.cc View 1 2 3 4 4 chunks +4 lines, -2 lines 0 comments Download
M content/renderer/pepper_platform_context_3d_impl.cc View 1 2 3 4 1 chunk +4 lines, -2 lines 2 comments Download
M gpu/command_buffer/client/gles2_demo.cc View 1 2 3 4 1 chunk +0 lines, -2 lines 0 comments Download
M gpu/command_buffer/service/gles2_cmd_decoder.h View 1 2 3 4 2 chunks +4 lines, -7 lines 0 comments Download
M gpu/command_buffer/service/gles2_cmd_decoder.cc View 1 2 3 4 7 chunks +41 lines, -34 lines 0 comments Download
M gpu/command_buffer/service/gles2_cmd_decoder_mock.h View 1 2 3 4 1 chunk +3 lines, -4 lines 0 comments Download
M gpu/command_buffer/service/gles2_cmd_decoder_unittest_base.cc View 1 2 3 4 1 chunk +1 line, -1 line 0 comments Download
M gpu/command_buffer/service/gpu_scheduler.h View 1 2 3 4 2 chunks +3 lines, -5 lines 0 comments Download
M gpu/command_buffer/service/gpu_scheduler.cc View 1 2 3 4 3 chunks +11 lines, -6 lines 0 comments Download
M gpu/command_buffer/service/gpu_scheduler_linux.cc View 1 2 3 4 2 chunks +1 line, -12 lines 0 comments Download
M gpu/command_buffer/service/gpu_scheduler_mac.cc View 1 2 3 4 2 chunks +1 line, -12 lines 0 comments Download
M gpu/command_buffer/service/gpu_scheduler_win.cc View 1 2 3 4 2 chunks +1 line, -12 lines 0 comments Download
M gpu/demos/framework/window.cc View 1 2 3 4 1 chunk +0 lines, -2 lines 0 comments Download
M gpu/gles2_conform_support/egl/display.cc View 1 2 3 4 1 chunk +1 line, -1 line 0 comments Download
M webkit/gpu/webgraphicscontext3d_in_process_command_buffer_impl.cc View 1 2 3 4 1 chunk +0 lines, -7 lines 0 comments Download

Messages

Total messages: 11 (0 generated)
apatrick_chromium
9 years, 6 months ago (2011-06-17 20:54:06 UTC) #1
Ken Russell (switch to Gerrit)
LGTM
9 years, 6 months ago (2011-06-17 23:12:43 UTC) #2
apatrick_chromium
+darin for change in content/renderer
9 years, 6 months ago (2011-06-17 23:17:06 UTC) #3
darin (slow to review)
LGTM
9 years, 6 months ago (2011-06-18 03:16:09 UTC) #4
commit-bot: I haz the power
Change committed as 89715
9 years, 6 months ago (2011-06-20 19:58:26 UTC) #5
piman
http://codereview.chromium.org/7205012/diff/1031/content/renderer/gpu/renderer_gl_context.cc File content/renderer/gpu/renderer_gl_context.cc (right): http://codereview.chromium.org/7205012/diff/1031/content/renderer/gpu/renderer_gl_context.cc#newcode225 content/renderer/gpu/renderer_gl_context.cc:225: new_parent_texture_id)) { Drive-by: since this happens out-of-band (with a ...
9 years, 6 months ago (2011-06-22 00:10:59 UTC) #6
apatrick_chromium
http://codereview.chromium.org/7205012/diff/1031/content/renderer/gpu/renderer_gl_context.cc File content/renderer/gpu/renderer_gl_context.cc (right): http://codereview.chromium.org/7205012/diff/1031/content/renderer/gpu/renderer_gl_context.cc#newcode225 content/renderer/gpu/renderer_gl_context.cc:225: new_parent_texture_id)) { On 2011/06/22 00:10:59, piman wrote: > Drive-by: ...
9 years, 6 months ago (2011-06-22 00:21:02 UTC) #7
piman
On Tue, Jun 21, 2011 at 5:21 PM, <apatrick@chromium.org> wrote: > > http://codereview.chromium.**org/7205012/diff/1031/content/** > renderer/gpu/renderer_gl_**context.cc<http://codereview.chromium.org/7205012/diff/1031/content/renderer/gpu/renderer_gl_context.cc> ...
9 years, 6 months ago (2011-06-22 00:36:07 UTC) #8
piman
http://codereview.chromium.org/7205012/diff/1031/content/renderer/pepper_platform_context_3d_impl.cc File content/renderer/pepper_platform_context_3d_impl.cc (right): http://codereview.chromium.org/7205012/diff/1031/content/renderer/pepper_platform_context_3d_impl.cc#newcode85 content/renderer/pepper_platform_context_3d_impl.cc:85: if (!command_buffer_->SetParent(parent_command_buffer, parent_texture_id_)) Actually this broke pepper. At this ...
9 years, 6 months ago (2011-06-22 00:53:27 UTC) #9
apatrick_chromium
http://codereview.chromium.org/7205012/diff/1031/content/renderer/pepper_platform_context_3d_impl.cc File content/renderer/pepper_platform_context_3d_impl.cc (right): http://codereview.chromium.org/7205012/diff/1031/content/renderer/pepper_platform_context_3d_impl.cc#newcode85 content/renderer/pepper_platform_context_3d_impl.cc:85: if (!command_buffer_->SetParent(parent_command_buffer, parent_texture_id_)) On 2011/06/22 00:53:27, piman wrote: > ...
9 years, 6 months ago (2011-06-22 17:53:14 UTC) #10
piman
9 years, 6 months ago (2011-06-22 17:55:44 UTC) #11
On Wed, Jun 22, 2011 at 10:53 AM, <apatrick@chromium.org> wrote:

>
> http://codereview.chromium.**org/7205012/diff/1031/content/**
>
renderer/pepper_platform_**context_3d_impl.cc<http://codereview.chromium.org/7205012/diff/1031/content/renderer/pepper_platform_context_3d_impl.cc>
> File content/renderer/pepper_**platform_context_3d_impl.cc (right):
>
> http://codereview.chromium.**org/7205012/diff/1031/content/**
>
renderer/pepper_platform_**context_3d_impl.cc#newcode85<http://codereview.chromium.org/7205012/diff/1031/content/renderer/pepper_platform_context_3d_impl.cc#newcode85>
> content/renderer/pepper_**platform_context_3d_impl.cc:**85: if
> (!command_buffer_->SetParent(**parent_command_buffer, parent_texture_id_))
> On 2011/06/22 00:53:27, piman wrote:
>
>> Actually this broke pepper. At this point the GpuCommandBufferStub is
>>
> created
>
>> but not yet Initialized (the CommandBufferProxy hasn't been
>>
> initialized). It
>
>> causes a crash in the gpu process in GpuCommandBufferStub::**OnSetParent
>> (scheduler_ is NULL).
>>
>
> Okay I'll look into it.


http://codereview.chromium.org/7190026/ fixes it.

Antoine


>
>
>
http://codereview.chromium.**org/7205012/<http://codereview.chromium.org/7205...
>

Powered by Google App Engine
This is Rietveld 408576698