cc: Stop blocking the main thread in CreateAndInitializeOutputSurface.
commitd30a3134bd4b8b2bce0afb390d263fe42de03e4f
authordanakj@chromium.org <danakj@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>
Fri, 13 Jun 2014 04:15:20 +0000 (13 04:15 +0000)
committerdanakj@chromium.org <danakj@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>
Fri, 13 Jun 2014 04:15:20 +0000 (13 04:15 +0000)
treef139af4deaeeca0db01427e8cc5fcb70ebedf64c
parent0afe6315617eb06d6633a4f0cc342720d7b2d463
cc: Stop blocking the main thread in CreateAndInitializeOutputSurface.

The ThreadProxy does not need to block the main thread anymore, instead
have it post back DidInitializeOutputSurface() with the result of the
process.

We would delete all contents textures on the compositor thread during
OutputSurface creation, which doesn't really make sense, cuz the
ResourceProvider won't be the same one anymore, and this required
blocking the thread.

We also notified the main thread that the OutputSurface was lost when
creating the new output surface.

Instead, post a DidLoseOutputSurface() to the main thread to inform
the LayerTreeHost right away, and have that block and clean up
the contents textures immediately (to be removed when we always do
impl-side painting).

R=enne
BUG=374287

Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=272276

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@276921 0039d316-1c4b-4281-b951-d872f2087c98
cc/scheduler/scheduler.h
cc/trees/thread_proxy.cc
cc/trees/thread_proxy.h