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

Issue 7395020: Create new GLSurface for cross process image transport. (Closed)

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

Description

Create new GLSurface for cross process image transport. Currently cross process image transport (on OSX and TOUCH_UI) uses the WebGL code path to render to a texture via FBO. This makes a clean break with path and centralizes the GL context specific IPC communication in one location. By separating from the WebGL code, I was able to avoid wasting a texture attached to the FBO in the decoder (the old code ignored this attachment --- the new code makes no such attachment at the decoder level). As a test of the new architecture, I have also implemented XComposite/GLX_texture_from_pixmap image transport (i.e. it's now possible to use the --use-gl=desktop backend on touch_ui builds). BUG=none TEST=3D CSS and WebGL on TOUCH_UI. Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=93681

Patch Set 1 : "" #

Patch Set 2 : Added GLX_texture_from_pixmap image transport. #

Patch Set 3 : "" #

Total comments: 8

Patch Set 4 : Address reviewer comments. #

Patch Set 5 : "" #

Patch Set 6 : "" #

Unified diffs Side-by-side diffs Delta from patch set Stats (+896 lines, -344 lines) Patch
M chrome/browser/renderer_host/accelerated_surface_container_touch.h View 1 2 3 4 5 2 chunks +9 lines, -8 lines 0 comments Download
M chrome/browser/renderer_host/accelerated_surface_container_touch.cc View 1 2 3 4 5 3 chunks +195 lines, -12 lines 0 comments Download
M chrome/browser/renderer_host/render_widget_host_view_views_touch.cc View 1 2 1 chunk +1 line, -1 line 0 comments Download
M chrome/chrome_browser.gypi View 1 2 3 4 5 1 chunk +5 lines, -0 lines 0 comments Download
M content/browser/gpu/gpu_process_host.cc View 1 1 chunk +0 lines, -9 lines 0 comments Download
M content/browser/gpu/gpu_process_host_ui_shim.cc View 1 2 3 chunks +3 lines, -7 lines 0 comments Download
M content/common/gpu/gpu_channel.h View 1 2 3 4 5 1 chunk +1 line, -11 lines 0 comments Download
M content/common/gpu/gpu_channel.cc View 1 2 3 4 5 2 chunks +1 line, -21 lines 0 comments Download
M content/common/gpu/gpu_channel_manager.h View 1 2 3 4 5 chunks +9 lines, -16 lines 0 comments Download
M content/common/gpu/gpu_channel_manager.cc View 1 2 3 4 5 6 chunks +21 lines, -36 lines 0 comments Download
M content/common/gpu/gpu_command_buffer_stub.h View 1 2 3 4 5 4 chunks +9 lines, -11 lines 0 comments Download
M content/common/gpu/gpu_command_buffer_stub.cc View 1 2 3 4 5 10 chunks +58 lines, -61 lines 0 comments Download
M content/common/gpu/gpu_messages.h View 1 2 3 4 5 2 chunks +6 lines, -12 lines 0 comments Download
A content/common/gpu/image_transport_surface_linux.h View 1 2 3 1 chunk +67 lines, -0 lines 0 comments Download
A content/common/gpu/image_transport_surface_linux.cc View 1 2 3 4 5 1 chunk +448 lines, -0 lines 0 comments Download
M content/content_common.gypi View 1 2 1 chunk +14 lines, -0 lines 0 comments Download
M gpu/command_buffer/service/gles2_cmd_decoder.cc View 1 2 3 4 5 2 chunks +2 lines, -2 lines 0 comments Download
M gpu/command_buffer/service/gpu_scheduler.h View 1 2 3 4 5 9 chunks +13 lines, -41 lines 0 comments Download
M gpu/command_buffer/service/gpu_scheduler.cc View 1 2 3 4 5 5 chunks +4 lines, -17 lines 0 comments Download
M gpu/command_buffer/service/gpu_scheduler_linux.cc View 1 2 3 4 5 3 chunks +5 lines, -78 lines 0 comments Download
M ui/gfx/gl/generate_bindings.py View 1 2 3 4 5 1 chunk +4 lines, -0 lines 0 comments Download
M ui/gfx/gl/gl_context_cgl.cc View 1 chunk +1 line, -0 lines 0 comments Download
M ui/gfx/gl/gl_context_egl.cc View 1 2 3 4 5 1 chunk +1 line, -0 lines 0 comments Download
M ui/gfx/gl/gl_context_glx.cc View 1 chunk +1 line, -0 lines 0 comments Download
M ui/gfx/gl/gl_context_osmesa.cc View 1 chunk +1 line, -0 lines 0 comments Download
M ui/gfx/gl/gl_context_wgl.cc View 1 chunk +1 line, -0 lines 0 comments Download
M ui/gfx/gl/gl_surface.h View 1 2 3 4 5 1 chunk +3 lines, -0 lines 0 comments Download
M ui/gfx/gl/gl_surface.cc View 1 chunk +3 lines, -0 lines 0 comments Download
M ui/gfx/gl/gl_surface_glx.h View 1 1 chunk +5 lines, -1 line 0 comments Download
M ui/gfx/gl/gl_surface_glx.cc View 1 2 1 chunk +5 lines, -0 lines 0 comments Download

Messages

Total messages: 7 (0 generated)
jonathan.backer
This is a cut of some refactoring that I've wanted to do for a while. ...
9 years, 5 months ago (2011-07-16 18:54:11 UTC) #1
apatrick_chromium
I like the direction. One thing, GpuSurfaceStub already implements Listener and Sender and is assigned ...
9 years, 5 months ago (2011-07-18 18:24:10 UTC) #2
jonathan.backer
Ready for review. It needs a merging of GpuChildThread and GpuChannelManager to make deps happy. ...
9 years, 5 months ago (2011-07-21 20:33:39 UTC) #3
apatrick_chromium
http://codereview.chromium.org/7395020/diff/16001/chrome/browser/renderer_host/accelerated_surface_container_touch.cc File chrome/browser/renderer_host/accelerated_surface_container_touch.cc (right): http://codereview.chromium.org/7395020/diff/16001/chrome/browser/renderer_host/accelerated_surface_container_touch.cc#newcode167 chrome/browser/renderer_host/accelerated_surface_container_touch.cc:167: dpy, fbconfigs.get()[config], pixmap_, pixmapAttribs); This will be out of ...
9 years, 5 months ago (2011-07-21 21:03:02 UTC) #4
jonathan.backer
http://codereview.chromium.org/7395020/diff/16001/chrome/browser/renderer_host/accelerated_surface_container_touch.cc File chrome/browser/renderer_host/accelerated_surface_container_touch.cc (right): http://codereview.chromium.org/7395020/diff/16001/chrome/browser/renderer_host/accelerated_surface_container_touch.cc#newcode167 chrome/browser/renderer_host/accelerated_surface_container_touch.cc:167: dpy, fbconfigs.get()[config], pixmap_, pixmapAttribs); On 2011/07/21 21:03:02, apatrick_chromium wrote: ...
9 years, 5 months ago (2011-07-22 13:12:39 UTC) #5
jonathan.backer
I fixed the deps issue by realizing that GpuChannelManager didn't actually need a GpuChildThread* when ...
9 years, 5 months ago (2011-07-22 13:41:58 UTC) #6
apatrick_chromium
9 years, 5 months ago (2011-07-22 17:53:42 UTC) #7
LGTM

Powered by Google App Engine
This is Rietveld 408576698