Android: Improve Composite-with-no-GPU-channel handling
The current code simply bails out of Composite() when the channel
is not established yet (or lost).
This seems to work in practice, but following the code it looks like
we would
- generally still think that the Composite task is pending
- in OnVSync think that we missed the window and post again
- further attempts to schedule, including when the channel eventually
gets established, will think it's already pending and going to happen
without the need to post a task
- but it will really only happen if OnVSync gets called again
(somebody happened to request vsync) and we think we missed the frame
and schedule again.
Improve this by
- tracking when we deferred Composite because we are waiting
for the channel
- bail out of PostComposite if we are in this condition
- when established unset and post Composite
Review URL: https://codereview.chromium.org/
750643003
Cr-Commit-Position: refs/heads/master@{#305298}