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..72e49c9e704345464de4e23c68ada5098a3d79b2 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" |
@@ -14,6 +14,10 @@ namespace cc { |
class Layer; |
} |
+namespace ui { |
+class SystemUIResourceManager; |
+} |
+ |
namespace content { |
/* |EdgeEffect| mirrors its Android counterpart, EdgeEffect.java. |
@@ -24,7 +28,7 @@ namespace content { |
* All coordinates and dimensions are in device pixels. |
*/ |
class EdgeEffect { |
-public: |
+ public: |
enum Edge { |
EDGE_TOP = 0, |
EDGE_LEFT, |
@@ -33,7 +37,7 @@ public: |
EDGE_COUNT |
}; |
- EdgeEffect(scoped_refptr<cc::Layer> edge, scoped_refptr<cc::Layer> glow); |
+ explicit EdgeEffect(ui::SystemUIResourceManager* resource_manager); |
~EdgeEffect(); |
void Pull(base::TimeTicks current_time, float delta_distance); |
@@ -50,8 +54,9 @@ public: |
float glow_height, |
float offset); |
-private: |
+ void SetParent(cc::Layer* parent); |
+private: |
enum State { |
STATE_IDLE = 0, |
STATE_PULL, |
@@ -60,8 +65,10 @@ private: |
STATE_PULL_DECAY |
}; |
- scoped_refptr<cc::Layer> edge_; |
- scoped_refptr<cc::Layer> glow_; |
+ class EffectLayer; |
+ |
+ scoped_ptr<EffectLayer> edge_; |
+ scoped_ptr<EffectLayer> glow_; |
float edge_alpha_; |
float edge_scale_y_; |