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

Issue 4815001: Use inner HWND for accelerated rendering on windows (Closed)

Created:
10 years, 1 month ago by nduca
Modified:
9 years, 3 months ago
CC:
chromium-reviews, brettw-cc_chromium.org, darin-cc_chromium.org, ben+cc_chromium.org, Nico, Vangelis Kokkevis
Visibility:
Public.

Description

When accelerated compositing is enabled, we create a plugin-like pair of windows, CompositorHostWindow and CompositorWindow inside the RenderWidgetHostView. The host-side HWND is used to position the compositor output relative to plugins; the GPU process creates the compositor window as a child of the CompositorHostWindow. Once we land webkit bugfix 49396, ANGLE issue 3038042, Chromium issue 4671003, this will fix bugs 54301 and 61516 for windows. BUG=none TEST=none Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=67495

Patch Set 1 #

Total comments: 30

Patch Set 2 : '' #

Total comments: 33

Patch Set 3 : '' #

Patch Set 4 : '' #

Patch Set 5 : '' #

Patch Set 6 : '' #

Total comments: 2

Patch Set 7 : '' #

Total comments: 29

Patch Set 8 : '' #

Total comments: 6

Patch Set 9 : '' #

Patch Set 10 : '' #

Total comments: 1

Patch Set 11 : '' #

Unified diffs Side-by-side diffs Delta from patch set Stats (+469 lines, -48 lines) Patch
M chrome/browser/gpu_process_host.h View 1 2 3 4 5 6 7 8 9 10 1 chunk +4 lines, -0 lines 0 comments Download
M chrome/browser/gpu_process_host.cc View 1 2 3 4 5 6 7 8 9 10 4 chunks +48 lines, -4 lines 0 comments Download
M chrome/browser/gpu_process_host_ui_shim.h View 1 2 3 4 5 6 7 8 9 10 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/gpu_process_host_ui_shim.cc View 1 2 3 4 5 6 7 8 9 10 3 chunks +14 lines, -0 lines 0 comments Download
M chrome/browser/renderer_host/render_widget_host.h View 1 2 3 4 5 6 7 8 9 10 3 chunks +5 lines, -3 lines 0 comments Download
M chrome/browser/renderer_host/render_widget_host.cc View 1 2 3 4 5 6 7 8 9 10 9 chunks +16 lines, -14 lines 0 comments Download
M chrome/browser/renderer_host/render_widget_host_view.h View 1 2 3 4 5 6 7 8 9 10 1 chunk +6 lines, -0 lines 0 comments Download
M chrome/browser/renderer_host/render_widget_host_view_gtk.cc View 1 2 3 4 5 6 7 8 9 10 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/renderer_host/render_widget_host_view_mac.mm View 1 2 3 4 5 6 7 8 9 10 4 chunks +7 lines, -6 lines 0 comments Download
M chrome/browser/renderer_host/render_widget_host_view_views.cc View 1 2 3 4 5 6 7 8 9 10 2 chunks +3 lines, -2 lines 0 comments Download
M chrome/browser/renderer_host/render_widget_host_view_win.h View 1 2 3 4 5 6 7 8 9 10 3 chunks +8 lines, -0 lines 0 comments Download
M chrome/browser/renderer_host/render_widget_host_view_win.cc View 1 2 3 4 5 6 7 8 9 10 6 chunks +160 lines, -1 line 0 comments Download
M chrome/browser/renderer_host/test/test_render_view_host.h View 1 2 3 4 5 6 7 8 9 10 1 chunk +4 lines, -0 lines 0 comments Download
M chrome/browser/renderer_host/test/test_render_view_host.cc View 1 2 3 4 5 6 7 8 9 10 1 chunk +11 lines, -0 lines 0 comments Download
M chrome/browser/tab_contents/tab_contents.cc View 1 2 3 4 5 6 7 8 9 10 1 chunk +6 lines, -1 line 0 comments Download
M chrome/common/gpu_messages_internal.h View 1 2 3 4 5 6 7 8 9 10 1 chunk +10 lines, -0 lines 0 comments Download
M chrome/common/render_messages_internal.h View 1 2 3 4 5 6 7 8 9 10 1 chunk +4 lines, -4 lines 0 comments Download
M chrome/gpu/gpu_channel.cc View 1 2 3 4 5 6 7 8 9 10 1 chunk +4 lines, -0 lines 0 comments Download
M chrome/gpu/gpu_command_buffer_stub.h View 1 2 3 4 5 6 7 8 9 10 2 chunks +8 lines, -2 lines 0 comments Download
M chrome/gpu/gpu_command_buffer_stub.cc View 1 2 3 4 5 6 7 8 9 10 6 chunks +147 lines, -6 lines 0 comments Download
M chrome/renderer/render_widget.cc View 1 2 3 4 5 6 7 8 9 10 2 chunks +2 lines, -3 lines 0 comments Download

Messages

Total messages: 17 (0 generated)
nduca
10 years, 1 month ago (2010-11-11 21:14:28 UTC) #1
apatrick_chromium
I looked at all the files with "gpu" in the filename. http://codereview.chromium.org/4815001/diff/1/chrome/browser/gpu_process_host.cc File chrome/browser/gpu_process_host.cc (right): ...
10 years, 1 month ago (2010-11-11 22:32:15 UTC) #2
darin (slow to review)
I would really like jam to review this change. -Darin On Thu, Nov 11, 2010 ...
10 years, 1 month ago (2010-11-11 23:33:14 UTC) #3
nduca
http://codereview.chromium.org/4815001/diff/1/chrome/browser/gpu_process_host.cc File chrome/browser/gpu_process_host.cc (right): http://codereview.chromium.org/4815001/diff/1/chrome/browser/gpu_process_host.cc#newcode354 chrome/browser/gpu_process_host.cc:354: void SendDelayedReply(IPC::Message* reply_msg) { I don't have any religion ...
10 years, 1 month ago (2010-11-11 23:53:33 UTC) #4
jam
http://codereview.chromium.org/4815001/diff/21001/chrome/browser/gpu_process_host.cc File chrome/browser/gpu_process_host.cc (right): http://codereview.chromium.org/4815001/diff/21001/chrome/browser/gpu_process_host.cc#newcode362 chrome/browser/gpu_process_host.cc:362: nit:extra line http://codereview.chromium.org/4815001/diff/21001/chrome/browser/gpu_process_host.cc#newcode365 chrome/browser/gpu_process_host.cc:365: DCHECK(host); this, and 368: we ...
10 years, 1 month ago (2010-11-12 18:08:00 UTC) #5
nduca
http://codereview.chromium.org/4815001/diff/21001/chrome/browser/gpu_process_host.cc File chrome/browser/gpu_process_host.cc (right): http://codereview.chromium.org/4815001/diff/21001/chrome/browser/gpu_process_host.cc#newcode362 chrome/browser/gpu_process_host.cc:362: On 2010/11/12 18:08:00, John Abd-El-Malek wrote: > nit:extra line ...
10 years, 1 month ago (2010-11-12 19:45:32 UTC) #6
jam
http://codereview.chromium.org/4815001/diff/21001/chrome/browser/gpu_process_host.cc File chrome/browser/gpu_process_host.cc (right): http://codereview.chromium.org/4815001/diff/21001/chrome/browser/gpu_process_host.cc#newcode373 chrome/browser/gpu_process_host.cc:373: // Have to reply from IO thread. On 2010/11/12 ...
10 years, 1 month ago (2010-11-12 20:34:41 UTC) #7
jonathan.backer
http://codereview.chromium.org/4815001/diff/80001/chrome/renderer/render_view.cc File chrome/renderer/render_view.cc (right): http://codereview.chromium.org/4815001/diff/80001/chrome/renderer/render_view.cc#newcode677 chrome/renderer/render_view.cc:677: Send(new ViewHostMsg_ShowCompositorHostWindow(routing_id(), show)); Need to #if defined(OS_WIN) this so ...
10 years, 1 month ago (2010-11-19 15:01:31 UTC) #8
nduca
http://codereview.chromium.org/4815001/diff/80001/chrome/renderer/render_view.cc File chrome/renderer/render_view.cc (right): http://codereview.chromium.org/4815001/diff/80001/chrome/renderer/render_view.cc#newcode677 chrome/renderer/render_view.cc:677: Send(new ViewHostMsg_ShowCompositorHostWindow(routing_id(), show)); On 2010/11/19 15:01:31, jonathan.backer wrote: > ...
10 years, 1 month ago (2010-11-19 18:52:36 UTC) #9
nduca
http://codereview.chromium.org/4815001/diff/21001/chrome/browser/gpu_process_host.h File chrome/browser/gpu_process_host.h (right): http://codereview.chromium.org/4815001/diff/21001/chrome/browser/gpu_process_host.h#newcode101 chrome/browser/gpu_process_host.h:101: void OnCreateCompositorHostWindow(int32 renderer_id, So, for this CL, I will ...
10 years, 1 month ago (2010-11-19 19:02:23 UTC) #10
nduca
Hey folks - I need some LGTMs, or reasons we're not there yet. - Nat
10 years, 1 month ago (2010-11-19 22:43:11 UTC) #11
apatrick_chromium
I looked at all files with "gl" or "gpu" in the name. http://codereview.chromium.org/4815001/diff/99001/app/gfx/gl/gl_context.h File app/gfx/gl/gl_context.h ...
10 years, 1 month ago (2010-11-19 23:09:51 UTC) #12
nduca
http://codereview.chromium.org/4815001/diff/99001/app/gfx/gl/gl_context.h File app/gfx/gl/gl_context.h (right): http://codereview.chromium.org/4815001/diff/99001/app/gfx/gl/gl_context.h#newcode42 app/gfx/gl/gl_context.h:42: virtual void SetSize(gfx::Size) { } On 2010/11/19 23:09:51, apatrick_chromium ...
10 years, 1 month ago (2010-11-20 00:28:49 UTC) #13
jam
http://codereview.chromium.org/4815001/diff/21001/chrome/browser/gpu_process_host.h File chrome/browser/gpu_process_host.h (right): http://codereview.chromium.org/4815001/diff/21001/chrome/browser/gpu_process_host.h#newcode101 chrome/browser/gpu_process_host.h:101: void OnCreateCompositorHostWindow(int32 renderer_id, On 2010/11/19 19:02:29, nduca wrote: > ...
10 years, 1 month ago (2010-11-20 00:36:59 UTC) #14
apatrick_chromium
LGTM for my part with a few nits. http://codereview.chromium.org/4815001/diff/124001/chrome/gpu/gpu_command_buffer_stub.cc File chrome/gpu/gpu_command_buffer_stub.cc (right): http://codereview.chromium.org/4815001/diff/124001/chrome/gpu/gpu_command_buffer_stub.cc#newcode63 chrome/gpu/gpu_command_buffer_stub.cc:63: EndPaint(hwnd, ...
10 years, 1 month ago (2010-11-22 20:43:03 UTC) #15
nduca
http://codereview.chromium.org/4815001/diff/21001/chrome/browser/gpu_process_host.h File chrome/browser/gpu_process_host.h (right): http://codereview.chromium.org/4815001/diff/21001/chrome/browser/gpu_process_host.h#newcode101 chrome/browser/gpu_process_host.h:101: void OnCreateCompositorHostWindow(int32 renderer_id, On 2010/11/20 00:37:00, John Abd-El-Malek wrote: ...
10 years, 1 month ago (2010-11-22 22:37:44 UTC) #16
jam
10 years, 1 month ago (2010-11-24 19:51:13 UTC) #17
lgtm with the one comment

in another cl (and not necessarily you :) ), it would be great if
gpu_command_buffer_stub.h used ints everywhere instead of int32 for
render_process/render_view IDs

http://codereview.chromium.org/4815001/diff/161001/chrome/common/gpu_messages...
File chrome/common/gpu_messages_internal.h (right):

http://codereview.chromium.org/4815001/diff/161001/chrome/common/gpu_messages...
chrome/common/gpu_messages_internal.h:104: int32, /* renderer_id */
all the int32 here and below need to be int

Powered by Google App Engine
This is Rietveld 408576698