| Index: content/browser/aura/software_browser_compositor_output_surface.h
|
| diff --git a/content/browser/aura/software_browser_compositor_output_surface.h b/content/browser/aura/software_browser_compositor_output_surface.h
|
| index ac499da5eb2c75fdc82ef8e6b618e885ead75aff..758001db16ac32de6279079178bc3d5ed235afff 100644
|
| --- a/content/browser/aura/software_browser_compositor_output_surface.h
|
| +++ b/content/browser/aura/software_browser_compositor_output_surface.h
|
| @@ -5,27 +5,49 @@
|
| #ifndef CONTENT_BROWSER_AURA_SOFTWARE_OUTPUT_SURFACE_H_
|
| #define CONTENT_BROWSER_AURA_SOFTWARE_OUTPUT_SURFACE_H_
|
|
|
| +#include "base/memory/weak_ptr.h"
|
| #include "cc/output/output_surface.h"
|
| +#include "ui/compositor/compositor.h"
|
|
|
| -namespace cc { class SoftwareOutputDevice; }
|
| +namespace base {
|
| +class MessageLoopProxy;
|
| +}
|
| +
|
| +namespace cc {
|
| +class SoftwareOutputDevice;
|
| +}
|
|
|
| namespace content {
|
|
|
| +class VSyncListener;
|
| +
|
| // TODO(danakj): Inherit from BrowserCompositorOutputSurface to share stuff like
|
| // reflectors, when we split the GL-specific stuff out of the class.
|
| class SoftwareBrowserCompositorOutputSurface : public cc::OutputSurface {
|
| public:
|
| static scoped_ptr<SoftwareBrowserCompositorOutputSurface> Create(
|
| - scoped_ptr<cc::SoftwareOutputDevice> software_device) {
|
| + scoped_ptr<cc::SoftwareOutputDevice> software_device,
|
| + base::MessageLoopProxy* compositor_message_loop,
|
| + base::WeakPtr<ui::Compositor> compositor) {
|
| return make_scoped_ptr(
|
| - new SoftwareBrowserCompositorOutputSurface(software_device.Pass()));
|
| + new SoftwareBrowserCompositorOutputSurface(software_device.Pass(),
|
| + compositor_message_loop,
|
| + compositor));
|
| }
|
|
|
| + virtual ~SoftwareBrowserCompositorOutputSurface();
|
| +
|
| private:
|
| - explicit SoftwareBrowserCompositorOutputSurface(
|
| - scoped_ptr<cc::SoftwareOutputDevice> software_device);
|
| + friend class VSyncListener;
|
| +
|
| + SoftwareBrowserCompositorOutputSurface(
|
| + scoped_ptr<cc::SoftwareOutputDevice> software_device,
|
| + base::MessageLoopProxy* compositor_message_loop,
|
| + base::WeakPtr<ui::Compositor> compositor);
|
|
|
| virtual void SwapBuffers(cc::CompositorFrame* frame) OVERRIDE;
|
| +
|
| + scoped_refptr<VSyncListener> vsync_listener_;
|
| };
|
|
|
| } // namespace content
|
|
|