Reland: Add SharedImageRepresentationDawn

The reland adapts for recent changes to the SharedImageFactory and adds
SHARED_IMAGE_USAGE_WEBGPU for use in the test.

This will allow viewing shared images as Dawn textures, for example so
they can be rendered to via WebGPU. This representation is implemented
for IOSurface-backed shared images.

Also adds a test to render an IOSurface backed shared image using Dawn,
and reading it back with Skia.

BUG=chromium:938895

This reverts commit 69ee817d0843eea7e92d932dadf9b0f0bee1c0e0.

Change-Id: Ibd9a289145a137ea870404a7af20591b748f1c68
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1559144
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Auto-Submit: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Antoine Labour <piman@chromium.org>
Cr-Commit-Position: refs/heads/master@{#650239}
12 files changed