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

Issue 9958100: Unobfuscate RWHVMac accelerated compositing code path by separating it from plugin code (Closed)

Created:
8 years, 8 months ago by jbates
Modified:
8 years, 8 months ago
CC:
chromium-reviews, Vangelis Kokkevis
Visibility:
Public.

Description

Unobfuscate RWHVMac accelerated compositing code path by separating it from plugin code. This simplification (and multi-race-condition-bug-fix) unfortunately comes with one subtle regression which is that as soon as a OSX chrome window renders accelerated content, it becomes permanently non-opaque. This causes the square gray lines to show up in the upper window corners that currently only show up if a tab has accelerated content. When I tried to support dynamically changing setOpaque, there were rare occurrences of black/transparent flashing when rapidly switching tabs between GPU and non-GPU content. Since we know that we have to fix the window border issue for real (crbug.com/56154) a little more of it is an acceptable trade-off for a reduction in flashing. This cleanup also seems to fix: - all black/transparent flashing (I can't repro it anymore) - window immobilization (104996) - slider widget jumps around during window resize (104996) BUG=121129, 56154, 104996, 119640, 81733 TEST=Open lots of webgl and software tabs and rapidly switch between them, make sure things update properly, resize window, etc. Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=130989

Patch Set 1 #

Patch Set 2 : checkpoint - about to remove underlaySurfaceAdded feature #

Patch Set 3 : . #

Patch Set 4 : cleanup #

Patch Set 5 : split IOSurfaceSupport stuff #

Patch Set 6 : cleanup #

Total comments: 12

Patch Set 7 : kbr feedback #

Patch Set 8 : update / merge #

Patch Set 9 : public APIs of CompositingIOSurface set context current #

Total comments: 1
Unified diffs Side-by-side diffs Delta from patch set Stats (+528 lines, -515 lines) Patch
M content/browser/gpu/gpu_process_host_ui_shim.cc View 1 2 3 4 5 6 7 3 chunks +2 lines, -31 lines 0 comments Download
M content/browser/renderer_host/accelerated_surface_container_manager_mac.h View 1 3 chunks +0 lines, -34 lines 0 comments Download
M content/browser/renderer_host/accelerated_surface_container_manager_mac.cc View 1 2 3 4 chunks +3 lines, -36 lines 0 comments Download
A content/browser/renderer_host/compositing_iosurface_mac.h View 1 2 3 4 5 6 7 8 1 chunk +115 lines, -0 lines 0 comments Download
A content/browser/renderer_host/compositing_iosurface_mac.mm View 1 2 3 4 5 6 7 8 1 chunk +228 lines, -0 lines 0 comments Download
M content/browser/renderer_host/render_widget_host_view_mac.h View 1 2 3 4 5 6 7 8 chunks +30 lines, -20 lines 0 comments Download
M content/browser/renderer_host/render_widget_host_view_mac.mm View 1 2 3 4 5 6 7 16 chunks +145 lines, -129 lines 1 comment Download
M content/common/gpu/image_transport_surface_mac.cc View 1 2 3 4 chunks +3 lines, -265 lines 0 comments Download
M content/content_browser.gypi View 1 2 3 4 5 6 7 1 chunk +2 lines, -0 lines 0 comments Download

Messages

Total messages: 28 (0 generated)
jbates
kbr: please review sky: content/browser/OWNERS avi: content/OWNERS
8 years, 8 months ago (2012-04-04 00:53:21 UTC) #1
Avi (use Gerrit)
This is way over my head, but you have owner approval. LGTM. Get approval from ...
8 years, 8 months ago (2012-04-04 02:54:43 UTC) #2
Nico
As discussed over irc, users seem to think the window shadow regression is a lot ...
8 years, 8 months ago (2012-04-04 03:18:45 UTC) #3
jbates
On 2012/04/04 03:18:45, Nico wrote: > As discussed over irc, users seem to think the ...
8 years, 8 months ago (2012-04-04 16:56:41 UTC) #4
Ken Russell (switch to Gerrit)
LGTM. Nice work. It's great that this fixes so many preexisting issues. A few minor ...
8 years, 8 months ago (2012-04-04 17:27:17 UTC) #5
Nico
On 2012/04/04 16:56:41, jbates wrote: > Are we talking about the shadow or the subtle ...
8 years, 8 months ago (2012-04-04 17:56:56 UTC) #6
Ken Russell (switch to Gerrit)
On 2012/04/04 17:56:56, Nico wrote: > On 2012/04/04 16:56:41, jbates wrote: > > Are we ...
8 years, 8 months ago (2012-04-04 18:32:12 UTC) #7
Nico
> are objectively (not subjectively) worse than the > shadow not being rounded. Uh huh.
8 years, 8 months ago (2012-04-04 18:37:35 UTC) #8
Ken Russell (switch to Gerrit)
On 2012/04/04 18:37:35, Nico wrote: > > are objectively (not subjectively) worse than the > ...
8 years, 8 months ago (2012-04-04 18:39:23 UTC) #9
Nico
On 2012/04/04 18:39:23, kbr wrote: > On 2012/04/04 18:37:35, Nico wrote: > > > are ...
8 years, 8 months ago (2012-04-04 18:41:22 UTC) #10
jbates
https://chromiumcodereview.appspot.com/9958100/diff/7001/content/browser/renderer_host/compositing_iosurface_mac.h File content/browser/renderer_host/compositing_iosurface_mac.h (right): https://chromiumcodereview.appspot.com/9958100/diff/7001/content/browser/renderer_host/compositing_iosurface_mac.h#newcode32 content/browser/renderer_host/compositing_iosurface_mac.h:32: void DrawIOSurface(uint64 io_surface_handle, NSView* view); On 2012/04/04 17:27:17, kbr ...
8 years, 8 months ago (2012-04-04 19:21:50 UTC) #11
sky
I'm rubber stamping this. The other reviews have you covered: LGTM
8 years, 8 months ago (2012-04-04 20:58:08 UTC) #12
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/jbates@chromium.org/9958100/9002
8 years, 8 months ago (2012-04-05 01:09:37 UTC) #13
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/jbates@chromium.org/9958100/22001
8 years, 8 months ago (2012-04-05 01:27:16 UTC) #14
commit-bot: I haz the power
Try job failure for 9958100-22001 (retry) on linux_chromeos for step "compile" (clobber build). It's a ...
8 years, 8 months ago (2012-04-05 01:52:21 UTC) #15
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/jbates@chromium.org/9958100/22001
8 years, 8 months ago (2012-04-05 16:15:03 UTC) #16
commit-bot: I haz the power
Change committed as 130989
8 years, 8 months ago (2012-04-05 19:39:34 UTC) #17
Nico
Does this do the right thing on 10.5 (which doesn't have IOSurfaces)? http://codereview.chromium.org/9958100/diff/22001/content/browser/renderer_host/render_widget_host_view_mac.mm File content/browser/renderer_host/render_widget_host_view_mac.mm ...
8 years, 8 months ago (2012-04-06 16:01:24 UTC) #18
jbates
On 2012/04/06 16:01:24, Nico wrote: > Does this do the right thing on 10.5 (which ...
8 years, 8 months ago (2012-04-06 16:41:32 UTC) #19
Nico
On Fri, Apr 6, 2012 at 9:41 AM, <jbates@chromium.org> wrote: > On 2012/04/06 16:01:24, Nico ...
8 years, 8 months ago (2012-04-06 16:42:46 UTC) #20
jbates
On 2012/04/06 16:42:46, Nico wrote: > On Fri, Apr 6, 2012 at 9:41 AM, <mailto:jbates@chromium.org> ...
8 years, 8 months ago (2012-04-06 16:45:58 UTC) #21
Nico
On Fri, Apr 6, 2012 at 9:45 AM, <jbates@chromium.org> wrote: > On 2012/04/06 16:42:46, Nico ...
8 years, 8 months ago (2012-04-06 17:38:42 UTC) #22
jbates
On 2012/04/06 17:38:42, Nico wrote: > On Fri, Apr 6, 2012 at 9:45 AM, <mailto:jbates@chromium.org> ...
8 years, 8 months ago (2012-04-06 17:54:58 UTC) #23
vangelis
On 2012/04/06 17:54:58, jbates wrote: > On 2012/04/06 17:38:42, Nico wrote: > > On Fri, ...
8 years, 8 months ago (2012-04-06 17:55:37 UTC) #24
Nico
On Fri, Apr 6, 2012 at 10:54 AM, <jbates@chromium.org> wrote: > On 2012/04/06 17:38:42, Nico ...
8 years, 8 months ago (2012-04-06 18:00:40 UTC) #25
vangelis
> I'm fine with not supporting WebGL on 10.5 (I voted for not supporting > ...
8 years, 8 months ago (2012-04-06 18:38:58 UTC) #26
Nico
On Fri, Apr 6, 2012 at 11:38 AM, <vangelis@google.com> wrote: > >> I'm fine with ...
8 years, 8 months ago (2012-04-06 18:43:22 UTC) #27
jbates
8 years, 8 months ago (2012-04-06 20:14:35 UTC) #28
On 2012/04/06 18:43:22, Nico wrote:
> On Fri, Apr 6, 2012 at 11:38 AM,  <mailto:vangelis@google.com> wrote:
> >
> >> I'm fine with not supporting WebGL on 10.5 (I voted for not supporting
> >> it on 10.5 when we wrote this code initially), but you might want to
> >> check with your PM if they see any issues with this. And the CL
> >> description should've mentioned this explicitly as it's a significant
> >> behavior change.
> >
> >
> > Do we know for a fact that anything changed for WebGL support with this
> > change?
> 
> I don't, that's why I'm asking :-)

This change only disables DIBImageTransportSurface for 10.5. But the 10.5 bots
did show WebGLAllowed failures after this CL landed, so it seems WebGL no longer
works. I guess WebGL was using DIBImageTransportSurface?

Powered by Google App Engine
This is Rietveld 408576698