Include primary surfaceIds in reference surfaces for CompositorFrameMetaData.

LayerTreeHost and LayerTreeImpl will now store a surface range instead of a fallback surface.
A SurfaceRange consists of two SurfaceIds |start|, and |end| defining a range of surfaces between
the two surfaces. Currently and until a followup CL is merged the primary surface Id is not being
used and fallback surfaceId is used whenever we need a SurfaceId from a SurfaceRange, specifically
when computing SurfaceReferneces. This behavior will change later and the goal would be to return
the latest in flight surface instead.

Bug: 857571
Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;master.tryserver.blink:linux_trusty_blink_rel
Change-Id: I6362008332fbdef260642a2d71d2b6512f901191
Reviewed-on: https://chromium-review.googlesource.com/1124978
Commit-Queue: Andre Kaba <akaba@google.com>
Reviewed-by: Fady Samuel <fsamuel@chromium.org>
Reviewed-by: Ken Buchanan <kenrb@chromium.org>
Reviewed-by: Antoine Labour <piman@chromium.org>
Reviewed-by: Bo <boliu@chromium.org>
Reviewed-by: Saman Sami <samans@chromium.org>
Cr-Commit-Position: refs/heads/master@{#574348}
38 files changed