Commit 92112981 authored by skobes@chromium.org's avatar skobes@chromium.org

Clamp scroll offset to min/max in PopupListBox::updateScrollbars.

This was previously done in ScrollView::setScrollOffsetFromUpdateScrollbars but
got lost with http://crrev.com/598093008.

BUG=424042

Review URL: https://codereview.chromium.org/662733002

git-svn-id: svn://svn.chromium.org/blink/trunk@183870 bbb929c8-8fbe-4397-9dbb-9b2b20218538
parent d1a366ca
......@@ -966,7 +966,7 @@ IntRect PopupListBox::visibleContentRect(IncludeScrollbarsInRect scrollbarInclus
return IntRect(m_scrollOffset, size);
}
void PopupListBox::updateScrollbars(const IntPoint& desiredOffset)
void PopupListBox::updateScrollbars(IntPoint desiredOffset)
{
IntSize oldVisibleSize = visibleContentRect().size();
adjustScrollbarExistence();
......@@ -979,6 +979,10 @@ void PopupListBox::updateScrollbars(const IntPoint& desiredOffset)
else
invalidateRect(IntRect(oldVisibleSize.width(), 0, newVisibleSize.width() - oldVisibleSize.width(), newVisibleSize.height()));
}
desiredOffset = desiredOffset.shrunkTo(maximumScrollPosition());
desiredOffset = desiredOffset.expandedTo(minimumScrollPosition());
if (desiredOffset != scrollPosition())
ScrollableArea::scrollToOffsetWithoutAnimation(desiredOffset);
}
......
......@@ -243,7 +243,7 @@ private:
int scrollX() const { return scrollPosition().x(); }
int scrollY() const { return scrollPosition().y(); }
void updateScrollbars(const IntPoint& desiredOffset);
void updateScrollbars(IntPoint desiredOffset);
void setHasVerticalScrollbar(bool);
Scrollbar* scrollbarAtWindowPoint(const IntPoint& windowPoint);
IntRect contentsToWindow(const IntRect&) const;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment