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

Issue 294023012: Use a separate NSView to draw browser composited content (Closed)

Created:
6 years, 7 months ago by ccameron
Modified:
6 years, 7 months ago
Reviewers:
piman
CC:
chromium-reviews, yusukes+watch_chromium.org, yukishiino+watch_chromium.org, jam, penghuang+watch_chromium.org, sievers+watch_chromium.org, jbauman+watch_chromium.org, nona+watch_chromium.org, darin-cc_chromium.org, kalyank, piman+watch_chromium.org, danakj+watch_chromium.org, James Su, miu+watch_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Visibility:
Public.

Description

Use a separate NSView to draw browser composited content Prior to this, the RenderWidgetHostViewMac was responsible for drawing (with its NSViews and CALayers) the contents coming from the renderer compositor or the browser compositor. This was was getting too messy (lots of state was shared unintentionally). This create a BrowserCompositorViewMac sub-NSView of the RenderWidgetHostViewMac, which is responsible for drawing delegated renderer content coming from the browser. This class still uses the SoftwareLayer and CompositingIOSurfaceLayer classes used to draw content from renderer. In order to make this clean, cut the dependencies from the CompositingIOSurfaceLayer to the RenderWidgetHostViewMac, and hide all needed communication behind a CompositingIOSurfaceLayerClient interface (which is likely to be needed by the BrowserCompositorViewMac). It would seem more reasonable to have BrowserCompositorViewMac live in the ui namespace and directories, but that is not an option yet, because it needs to share so much code with RenderWidgetHostViewMac. Once we switch to using only a delegated renderer, we can move all of this code over to ui. Also, start replacing instances of "composited" with "accelerated". It used to be that these were synonyms, but they are not anymore -- "composited" can be either "accelerated" or "software". BUG=314190 Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=272469

Patch Set 1 #

Patch Set 2 : Comments, clean-u #

Unified diffs Side-by-side diffs Delta from patch set Stats (+451 lines, -249 lines) Patch
A content/browser/compositor/browser_compositor_view_mac.h View 1 chunk +53 lines, -0 lines 0 comments Download
A content/browser/compositor/browser_compositor_view_mac.mm View 1 1 chunk +174 lines, -0 lines 0 comments Download
M content/browser/compositor/software_output_device_mac.mm View 1 chunk +1 line, -14 lines 0 comments Download
M content/browser/renderer_host/compositing_iosurface_layer_mac.h View 1 chunk +23 lines, -11 lines 0 comments Download
M content/browser/renderer_host/compositing_iosurface_layer_mac.mm View 1 7 chunks +48 lines, -54 lines 0 comments Download
M content/browser/renderer_host/compositing_iosurface_mac.h View 4 chunks +7 lines, -3 lines 0 comments Download
M content/browser/renderer_host/compositing_iosurface_mac.mm View 1 chunk +1 line, -1 line 0 comments Download
M content/browser/renderer_host/render_widget_helper_mac.mm View 2 chunks +4 lines, -13 lines 0 comments Download
M content/browser/renderer_host/render_widget_host_view_mac.h View 9 chunks +11 lines, -32 lines 0 comments Download
M content/browser/renderer_host/render_widget_host_view_mac.mm View 1 21 chunks +37 lines, -121 lines 0 comments Download
A content/browser/renderer_host/software_layer_mac.h View 1 chunk +22 lines, -0 lines 0 comments Download
A content/browser/renderer_host/software_layer_mac.mm View 1 chunk +66 lines, -0 lines 0 comments Download
M content/content_browser.gypi View 2 chunks +4 lines, -0 lines 0 comments Download

Messages

Total messages: 7 (0 generated)
ccameron
ptal. Lots of diffs, but mostly just moved code.
6 years, 7 months ago (2014-05-22 21:18:52 UTC) #1
piman
lgtm
6 years, 7 months ago (2014-05-22 22:36:49 UTC) #2
ccameron
Thanks!
6 years, 7 months ago (2014-05-22 22:44:37 UTC) #3
ccameron
The CQ bit was checked by ccameron@chromium.org
6 years, 7 months ago (2014-05-22 22:44:41 UTC) #4
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/ccameron@chromium.org/294023012/20001
6 years, 7 months ago (2014-05-22 22:46:10 UTC) #5
commit-bot: I haz the power
FYI, CQ is re-trying this CL (attempt #1). Please consider checking whether the failures are ...
6 years, 7 months ago (2014-05-23 00:27:56 UTC) #6
commit-bot: I haz the power
6 years, 7 months ago (2014-05-23 10:35:39 UTC) #7
Message was sent while issue was closed.
Change committed as 272469

Powered by Google App Engine
This is Rietveld 408576698