Index: content/browser/android/edge_effect.h |
diff --git a/content/browser/android/edge_effect.h b/content/browser/android/edge_effect.h |
index b8febba22d2a77673be3198c46b4e6d26cc39c21..62498e095ed22903f9a6488fb13849f6eb09309a 100644 |
--- a/content/browser/android/edge_effect.h |
+++ b/content/browser/android/edge_effect.h |
@@ -6,7 +6,7 @@ |
#define CONTENT_BROWSER_ANDROID_EDGE_EFFECT_H_ |
#include "base/basictypes.h" |
-#include "base/memory/ref_counted.h" |
+#include "base/memory/scoped_ptr.h" |
#include "base/time/time.h" |
#include "ui/gfx/size_f.h" |
@@ -24,7 +24,14 @@ namespace content { |
* All coordinates and dimensions are in device pixels. |
*/ |
class EdgeEffect { |
-public: |
+ public: |
+ // A wrapper class over the cc::Layer. |
+ class LayerWrapper { |
+ public: |
+ virtual cc::Layer* layer() = 0; |
+ virtual ~LayerWrapper() {} |
+ }; |
+ |
enum Edge { |
EDGE_TOP = 0, |
EDGE_LEFT, |
@@ -33,7 +40,7 @@ public: |
EDGE_COUNT |
}; |
- EdgeEffect(scoped_refptr<cc::Layer> edge, scoped_refptr<cc::Layer> glow); |
+ EdgeEffect(scoped_ptr<LayerWrapper> edge, scoped_ptr<LayerWrapper> glow); |
~EdgeEffect(); |
void Pull(base::TimeTicks current_time, float delta_distance); |
@@ -60,8 +67,8 @@ private: |
STATE_PULL_DECAY |
}; |
- scoped_refptr<cc::Layer> edge_; |
- scoped_refptr<cc::Layer> glow_; |
+ scoped_ptr<LayerWrapper> edge_; |
+ scoped_ptr<LayerWrapper> glow_; |
float edge_alpha_; |
float edge_scale_y_; |