ScrollAnimatorMock.h [plain text]
#ifndef ScrollAnimatorMock_h
#define ScrollAnimatorMock_h
#include "ScrollAnimator.h"
namespace WebCore {
class ScrollAnimatorMock final : public ScrollAnimator {
public:
ScrollAnimatorMock(ScrollableArea&, std::function<void(const String&)>&&);
virtual ~ScrollAnimatorMock();
#if ENABLE(RUBBER_BANDING)
bool allowsHorizontalStretching(const PlatformWheelEvent&) override { return false; }
bool allowsVerticalStretching(const PlatformWheelEvent&) override { return false; }
IntSize stretchAmount() override { return IntSize(); }
bool pinnedInDirection(const FloatSize&) override { return false; }
bool canScrollHorizontally() override { return false; }
bool canScrollVertically() override { return false; }
bool shouldRubberBandInDirection(ScrollDirection) override { return false; }
void immediateScrollBy(const FloatSize&) override { }
void immediateScrollByWithoutContentEdgeConstraints(const FloatSize&) override { }
void adjustScrollPositionToBoundsIfNecessary() override { }
#endif
private:
void didAddVerticalScrollbar(Scrollbar*) override;
void didAddHorizontalScrollbar(Scrollbar*) override;
void willRemoveVerticalScrollbar(Scrollbar*) override;
void willRemoveHorizontalScrollbar(Scrollbar*) override;
void mouseEnteredContentArea() override;
void mouseMovedInContentArea() override;
void mouseExitedContentArea() override;
void mouseEnteredScrollbar(Scrollbar*) const override;
void mouseExitedScrollbar(Scrollbar*) const override;
void mouseIsDownInScrollbar(Scrollbar*, bool) const override;
std::function<void(const String&)> m_logger;
Scrollbar* m_verticalScrollbar { nullptr };
Scrollbar* m_horizontalScrollbar { nullptr };
};
}
#endif // ScrollAnimatorMock_h