diff options
author | Ben Murdoch <benm@google.com> | 2011-05-16 16:25:10 +0100 |
---|---|---|
committer | Ben Murdoch <benm@google.com> | 2011-05-23 18:54:14 +0100 |
commit | ab9e7a118cf1ea2e3a93dce683b2ded3e7291ddb (patch) | |
tree | db769fadd053248f85db67434a5b275224defef7 /Source/WebKit/win/WebScrollBar.cpp | |
parent | 52e2557aeb8477967e97fd24f20f8f407a10fa15 (diff) | |
download | external_webkit-ab9e7a118cf1ea2e3a93dce683b2ded3e7291ddb.zip external_webkit-ab9e7a118cf1ea2e3a93dce683b2ded3e7291ddb.tar.gz external_webkit-ab9e7a118cf1ea2e3a93dce683b2ded3e7291ddb.tar.bz2 |
Merge WebKit at r76408: Initial merge by git.
Change-Id: I5b91decbd693ccbf5c1b8354b37cd68cc9a1ea53
Diffstat (limited to 'Source/WebKit/win/WebScrollBar.cpp')
-rw-r--r-- | Source/WebKit/win/WebScrollBar.cpp | 21 |
1 files changed, 10 insertions, 11 deletions
diff --git a/Source/WebKit/win/WebScrollBar.cpp b/Source/WebKit/win/WebScrollBar.cpp index 8613c1c..45bc8f3 100644 --- a/Source/WebKit/win/WebScrollBar.cpp +++ b/Source/WebKit/win/WebScrollBar.cpp @@ -42,6 +42,7 @@ using namespace WebCore; WebScrollBar::WebScrollBar() : m_refCount(0) , m_containingWindow(0) + , m_currentPosition(0) { gClassCount++; gClassNameCount.add("WebScrollBar"); @@ -143,7 +144,7 @@ HRESULT STDMETHODCALLTYPE WebScrollBar::setRect( HRESULT STDMETHODCALLTYPE WebScrollBar::setValue( /* [in] */ int value) { - m_scrollBar->setValue(value, Scrollbar::NotFromScrollAnimator); + m_currentPosition = value; return S_OK; } @@ -152,7 +153,7 @@ HRESULT STDMETHODCALLTYPE WebScrollBar::value( { if (!value) return E_POINTER; - *value = m_scrollBar->value(); + *value = m_currentPosition; return S_OK; } @@ -247,27 +248,25 @@ HRESULT STDMETHODCALLTYPE WebScrollBar::scroll( { ScrollDirection webCoreScrollDirection = (ScrollDirection) direction; ScrollGranularity webCoreGranularity = (ScrollGranularity) granularity; - m_scrollBar->scroll(webCoreScrollDirection, webCoreGranularity, multiplier); + ScrollableArea::scroll(webCoreScrollDirection, webCoreGranularity, multiplier); return S_OK; } -// ScrollbarClient ------------------------------------------------------- +// ScrollableArea ------------------------------------------------------- + int WebScrollBar::scrollSize(ScrollbarOrientation orientation) const { return (orientation == m_scrollBar->orientation()) ? (m_scrollBar->totalSize() - m_scrollBar->visibleSize()) : 0; } -void WebScrollBar::setScrollOffsetFromAnimation(const IntPoint& offset) +int WebScrollBar::scrollPosition(Scrollbar*) const { - m_scrollBar->setValue((m_scrollBar->orientation() == HorizontalScrollbar) ? offset.x() : offset.y(), Scrollbar::FromScrollAnimator); + return m_currentPosition; } -void WebScrollBar::valueChanged(Scrollbar* scrollBar) +void WebScrollBar::setScrollOffset(const IntPoint& offset) { - if (m_scrollBar != scrollBar) { - ASSERT(false); // shouldn't happen - return; - } + m_currentPosition = (m_scrollBar->orientation() == HorizontalScrollbar) ? offset.x() : offset.y(); m_delegate->valueChanged(this); } |