Add support to delay sending SwapbufferAck as needed.
On platforms (i.e. ChromeOS using Ozone) where Chromium is responsible for
displaying the buffers, we want to delay SwapBufferAck till we know that
the buffer is displayed on screen. Currently, we block the GPU main thread till
that data is available. This patch introduces SwapBufferAsync apis, which are
similar to current SwapBuffer calls except that it adds a callback function
which can be used to delay sending SwapBufferAck as needed.
BUG=443543,chrome-os-partner:34292
Review URL: https://codereview.chromium.org/
797843005
Cr-Commit-Position: refs/heads/master@{#309602}