| Index: Source/core/platform/ScrollAnimator.cpp
|
| diff --git a/Source/core/platform/ScrollAnimator.cpp b/Source/core/platform/ScrollAnimator.cpp
|
| index 0faa0c046e939e7aabe1d7bde49656b2a2b0616d..b867fffdd106713c2f21b54383ee874cfdd009ec 100644
|
| --- a/Source/core/platform/ScrollAnimator.cpp
|
| +++ b/Source/core/platform/ScrollAnimator.cpp
|
| @@ -55,7 +55,9 @@ ScrollAnimator::~ScrollAnimator()
|
| bool ScrollAnimator::scroll(ScrollbarOrientation orientation, ScrollGranularity, float step, float multiplier)
|
| {
|
| float* currentPos = (orientation == HorizontalScrollbar) ? &m_currentPosX : &m_currentPosY;
|
| - float newPos = std::max(std::min(*currentPos + (step * multiplier), static_cast<float>(m_scrollableArea->scrollSize(orientation))), 0.0f);
|
| + float minPos = (orientation == HorizontalScrollbar) ? m_scrollableArea->minimumScrollPosition().x() : m_scrollableArea->minimumScrollPosition().y();
|
| + float maxPos = (orientation == HorizontalScrollbar) ? m_scrollableArea->maximumScrollPosition().x() : m_scrollableArea->maximumScrollPosition().y();
|
| + float newPos = std::max(std::min(*currentPos + (step * multiplier), maxPos), minPos);
|
| float delta = *currentPos - newPos;
|
| if (*currentPos == newPos)
|
| return false;
|
|
|