Unreviewed, rolling out r126169.
[WebKit-https.git] / Source / WebCore / platform / ScrollAnimator.h
index 6698b63..0c5f32c 100644 (file)
 #ifndef ScrollAnimator_h
 #define ScrollAnimator_h
 
+#include "PlatformWheelEvent.h"
 #include "ScrollTypes.h"
 #include <wtf/Forward.h>
 
 namespace WebCore {
 
 class FloatPoint;
-class PlatformWheelEvent;
 class ScrollableArea;
 class Scrollbar;
 
-#if ENABLE(GESTURE_EVENTS)
-class PlatformGestureEvent;
-#endif
-
 class ScrollAnimator {
 public:
     static PassOwnPtr<ScrollAnimator> create(ScrollableArea*);
@@ -61,19 +57,26 @@ public:
 
     ScrollableArea* scrollableArea() const { return m_scrollableArea; }
 
-    virtual void handleWheelEvent(PlatformWheelEvent&);
-#if ENABLE(GESTURE_EVENTS)
-    virtual void handleGestureEvent(const PlatformGestureEvent&);
+    virtual void setIsActive() { }
+
+    virtual bool handleWheelEvent(const PlatformWheelEvent&);
+
+#if PLATFORM(MAC) || (PLATFORM(CHROMIUM) && OS(DARWIN))
+    virtual void handleWheelEventPhase(PlatformWheelEventPhase) { }
 #endif
 
+    void setCurrentPosition(const FloatPoint&);
     FloatPoint currentPosition() const;
 
     virtual void cancelAnimations() { }
+    virtual void serviceScrollAnimations() { }
 
     virtual void contentAreaWillPaint() const { }
     virtual void mouseEnteredContentArea() const { }
     virtual void mouseExitedContentArea() const { }
     virtual void mouseMovedInContentArea() const { }
+    virtual void mouseEnteredScrollbar(Scrollbar*) const { }
+    virtual void mouseExitedScrollbar(Scrollbar*) const { }
     virtual void willStartLiveResize() { }
     virtual void contentsResized() const { }
     virtual void willEndLiveResize() { }
@@ -85,10 +88,16 @@ public:
     virtual void didAddHorizontalScrollbar(Scrollbar*) { }
     virtual void willRemoveHorizontalScrollbar(Scrollbar*) { }
 
+    virtual bool shouldScrollbarParticipateInHitTesting(Scrollbar*) { return true; }
+
+    virtual void notifyContentAreaScrolled() { }
+
+    virtual bool isRubberBandInProgress() const { return false; }
+
 protected:
-    ScrollAnimator(ScrollableArea*);
+    explicit ScrollAnimator(ScrollableArea*);
 
-    virtual void notityPositionChanged();
+    virtual void notifyPositionChanged();
 
     ScrollableArea* m_scrollableArea;
     float m_currentPosX; // We avoid using a FloatPoint in order to reduce