[go: nahoru, domu]

Define cc::RendererCapabilities in its own header, fix up includes

cc::RendererCapabilities was defined in cc/trees/layer_tree_host.h
which had a few subtle implications. First, cc/output/renderer.h needed
to #include layer_tree_host even though cc/output/ logically should not
depend on cc/trees/. Second, since layer_tree_host.h includes pretty
much the entire world, everything that was #including renderer.h was
implicitly pulling in many other headers that it may have used. In the
spirit of IWYU these files should either include or forward declare
types they use.

This puts RendererCapabilities in cc/output/renderer_capabilities and
fixes up includes in many other files.

R=danakj@chromium.org

Review URL: https://codereview.chromium.org/1007593002

Cr-Commit-Position: refs/heads/master@{#320767}
diff --git a/cc/BUILD.gn b/cc/BUILD.gn
index bf77c0e..2327db0 100644
--- a/cc/BUILD.gn
+++ b/cc/BUILD.gn
@@ -285,6 +285,8 @@
     "output/render_surface_filters.h",
     "output/renderer.cc",
     "output/renderer.h",
+    "output/renderer_capabilities.cc",
+    "output/renderer_capabilities.h",
     "output/renderer_settings.cc",
     "output/renderer_settings.h",
     "output/shader.cc",