cc: Make ContentLayerClient subclasses create the DisplayItemList.

The clients are now expected to return a cc::DisplayItemList which is
suitably "finalized" (in particular, ProcessAppendedItems and
CreateAndCacheSkPicture should have been called, as appropriate for the
settings used to create the display list).

This avoids plumbing constructor parameters for DisplayItemList, which I'm
about to add more of.

BUG=484943
CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel

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

Cr-Commit-Position: refs/heads/master@{#332034}
diff --git a/ui/compositor/layer.h b/ui/compositor/layer.h
index 8120197..623e56c 100644
--- a/ui/compositor/layer.h
+++ b/ui/compositor/layer.h
@@ -353,8 +353,7 @@
       SkCanvas* canvas,
       const gfx::Rect& clip,
       ContentLayerClient::PaintingControlSetting painting_control) override;
-  void PaintContentsToDisplayList(
-      cc::DisplayItemList* display_list,
+  scoped_refptr<cc::DisplayItemList> PaintContentsToDisplayList(
       const gfx::Rect& clip,
       ContentLayerClient::PaintingControlSetting painting_control) override;
   bool FillsBoundsCompletely() const override;