| Index: cc/output/output_surface.h
|
| diff --git a/cc/output/output_surface.h b/cc/output/output_surface.h
|
| index 9611ef4406e0fd18514c89a585d40f9f898085f2..863db2dcf22b697f85468c9652a58378c7d0a00d 100644
|
| --- a/cc/output/output_surface.h
|
| +++ b/cc/output/output_surface.h
|
| @@ -11,6 +11,7 @@
|
| #include "base/memory/ref_counted.h"
|
| #include "base/memory/scoped_ptr.h"
|
| #include "base/memory/weak_ptr.h"
|
| +#include "base/threading/thread_checker.h"
|
| #include "cc/base/cc_export.h"
|
| #include "cc/output/context_provider.h"
|
| #include "cc/output/overlay_candidate_validator.h"
|
| @@ -112,10 +113,14 @@ class CC_EXPORT OutputSurface {
|
|
|
| // Called by the compositor on the compositor thread. This is a place where
|
| // thread-specific data for the output surface can be initialized, since from
|
| - // this point on the output surface will only be used on the compositor
|
| - // thread.
|
| + // this point to when DetachFromClient() is called the output surface will
|
| + // only be used on the compositor thread.
|
| virtual bool BindToClient(OutputSurfaceClient* client);
|
|
|
| + // Called by the compositor on the compositor thread. This is a place where
|
| + // thread-specific data for the output surface can be uninitialized.
|
| + virtual void DetachFromClient();
|
| +
|
| virtual void EnsureBackbuffer();
|
| virtual void DiscardBackbuffer();
|
|
|
| @@ -176,6 +181,7 @@ class CC_EXPORT OutputSurface {
|
| scoped_ptr<SoftwareOutputDevice> software_device_;
|
| gfx::Size surface_size_;
|
| float device_scale_factor_;
|
| + base::ThreadChecker client_thread_checker_;
|
|
|
| void CommitVSyncParameters(base::TimeTicks timebase,
|
| base::TimeDelta interval);
|
|
|