WebCore:
2008-09-26 David Hyatt <hyatt@apple.com>
https://bugs.webkit.org/show_bug.cgi?id=21149
Make the concept of scroll modes cross-platform. Move the scrollbars up into ScrollView as well.
Eliminate the unused isScrollable() method.
Reviewed by Sam Weinig
* WebCore.base.exp:
* page/FrameView.cpp:
(WebCore::FrameView::resetScrollbars):
(WebCore::FrameView::initScrollbars):
(WebCore::FrameView::layout):
* page/FrameView.h:
* page/mac/WebCoreFrameView.h:
* platform/ScrollView.cpp:
(WebCore::ScrollView::init):
(WebCore::ScrollView::setScrollbarModes):
(WebCore::ScrollView::scrollbarModes):
(WebCore::ScrollView::platformSetScrollbarModes):
(WebCore::ScrollView::platformScrollbarModes):
* platform/ScrollView.h:
(WebCore::ScrollView::horizontalScrollbar):
(WebCore::ScrollView::verticalScrollbar):
(WebCore::ScrollView::isScrollViewScrollbar):
(WebCore::ScrollView::setHorizontalScrollbarMode):
(WebCore::ScrollView::setVerticalScrollbarMode):
(WebCore::ScrollView::horizontalScrollbarMode):
(WebCore::ScrollView::verticalScrollbarMode):
(WebCore::ScrollView::convertSelfToChild):
* platform/gtk/ScrollViewGtk.cpp:
(WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate):
(WebCore::ScrollView::ScrollViewPrivate::setHasHorizontalScrollbar):
(WebCore::ScrollView::ScrollViewPrivate::setHasVerticalScrollbar):
(WebCore::ScrollView::ScrollViewPrivate::valueChanged):
(WebCore::ScrollView::updateScrollbars):
(WebCore::ScrollView::scrollbarUnderMouse):
(WebCore::ScrollView::isScrollViewScrollbar):
(WebCore::ScrollView::paint):
(WebCore::ScrollView::scroll):
* platform/mac/ScrollViewMac.mm:
(WebCore::ScrollView::platformSetScrollbarModes):
(WebCore::ScrollView::platformScrollbarModes):
* platform/qt/ScrollViewQt.cpp:
(WebCore::ScrollView::ScrollViewPrivate::setHasHorizontalScrollbar):
(WebCore::ScrollView::ScrollViewPrivate::setHasVerticalScrollbar):
(WebCore::ScrollView::ScrollViewPrivate::valueChanged):
(WebCore::ScrollView::horizontalScrollbar):
(WebCore::ScrollView::verticalScrollbar):
(WebCore::ScrollView::invalidateScrollbars):
(WebCore::ScrollView::updateScrollbars):
(WebCore::ScrollView::scrollbarUnderMouse):
(WebCore::ScrollView::paint):
(WebCore::ScrollView::scroll):
* platform/win/ScrollViewWin.cpp:
(WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate):
(WebCore::ScrollView::ScrollViewPrivate::setHasHorizontalScrollbar):
(WebCore::ScrollView::ScrollViewPrivate::setHasVerticalScrollbar):
(WebCore::ScrollView::ScrollViewPrivate::valueChanged):
(WebCore::ScrollView::ScrollViewPrivate::setAllowsScrolling):
(WebCore::ScrollView::ScrollViewPrivate::allowsScrolling):
(WebCore::ScrollView::suppressScrollbars):
(WebCore::ScrollView::updateScrollbars):
(WebCore::ScrollView::scrollbarUnderMouse):
(WebCore::ScrollView::paint):
(WebCore::ScrollView::scroll):
* platform/wx/ScrollViewWx.cpp:
(WebCore::ScrollView::platformSetScrollbarModes):
(WebCore::ScrollView::platformScrollbarModes):
WebKit/mac:
2008-09-26 David Hyatt <hyatt@apple.com>
https://bugs.webkit.org/show_bug.cgi?id=21149
More refactoring to make scrollbar modes cross-platform. Reduce the protocol that
WebDynamicScrollBarsView has to implement for communicating with WebCore to just three methods.
Reviewed by Sam Weinig
* WebView/WebDynamicScrollBarsView.m:
(-[WebDynamicScrollBarsView scrollingModes:WebCore::vertical:WebCore::]):
(-[WebDynamicScrollBarsView setHorizontalScrollingMode:andLock:]):
(-[WebDynamicScrollBarsView setVerticalScrollingMode:andLock:]):
(-[WebDynamicScrollBarsView setScrollingModes:vertical:andLock:]):
* WebView/WebDynamicScrollBarsViewInternal.h:
* WebView/WebFrameView.mm:
(-[WebFrameView setAllowsScrolling:]):
* WebView/WebView.mm:
(-[WebView setAlwaysShowVerticalScroller:]):
(-[WebView setAlwaysShowHorizontalScroller:]):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36962 268f45cc-cd09-0410-ab3c-d52691b4dbfc
17 files changed