Index: content/browser/compositor/onscreen_display_client.h |
diff --git a/content/browser/compositor/onscreen_display_client.h b/content/browser/compositor/onscreen_display_client.h |
index afe2b39ada6d3bb0147eecdb2edcd1ed9180733d..58d76e55af36bbfbf8776188bfcc29eb5a3d7a98 100644 |
--- a/content/browser/compositor/onscreen_display_client.h |
+++ b/content/browser/compositor/onscreen_display_client.h |
@@ -9,6 +9,7 @@ |
#include "base/memory/ref_counted.h" |
#include "base/memory/scoped_ptr.h" |
+#include "base/single_thread_task_runner.h" |
#include "cc/surfaces/display.h" |
namespace cc { |
@@ -25,18 +26,26 @@ class OnscreenDisplayClient : cc::DisplayClient { |
OnscreenDisplayClient( |
const scoped_refptr<cc::ContextProvider>& onscreen_context_provider, |
scoped_ptr<cc::OutputSurface> software_surface, |
- cc::SurfaceManager* manager); |
+ cc::SurfaceManager* manager, |
+ scoped_refptr<base::SingleThreadTaskRunner> task_runner); |
virtual ~OnscreenDisplayClient(); |
cc::Display* display() { return display_.get(); } |
// cc::DisplayClient implementation. |
virtual scoped_ptr<cc::OutputSurface> CreateOutputSurface() OVERRIDE; |
+ virtual void DisplayDamaged() OVERRIDE; |
private: |
+ void Draw(); |
+ |
scoped_refptr<cc::ContextProvider> onscreen_context_provider_; |
scoped_ptr<cc::OutputSurface> software_surface_; |
scoped_ptr<cc::Display> display_; |
+ scoped_refptr<base::SingleThreadTaskRunner> task_runner_; |
+ bool scheduled_draw_; |
+ |
+ base::WeakPtrFactory<OnscreenDisplayClient> weak_ptr_factory_; |
DISALLOW_COPY_AND_ASSIGN(OnscreenDisplayClient); |
}; |