cc: Fix disabled vsync state freezing

Previously, when vsync was disabled the scheduler state machine would
never proactively request a new begin frame message.  This logic was
tightly coupled to commits not being aborted and causing a redraw,
incrementing the frame number, and allowing a number of the "only once
per frame" logic in the state machine to proceed.

Instead, treat disabled vsync like the synchronous compositor.  In both
cases, it's undesirable to proactively request a begin frame.  For the
synchronous compositor, this is because every begin frame results in a
draw.  For the unthrottled disabled vsync case, this is because if the
compositor can't draw it will get into a tight loop of continuing to
request new begin frames.  By lumping it with the synchronous compositor
logic, it will periodically poll to see if it needs to start a new frame
rather than freezing forever.

R=brianderson@chromium.org
BUG=303293

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@227060 0039d316-1c4b-4281-b951-d872f2087c98
4 files changed