https://bugs.webkit.org/show_bug.cgi?id=82083
authorbdakin@apple.com <bdakin@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 23 Mar 2012 20:36:31 +0000 (20:36 +0000)
committerbdakin@apple.com <bdakin@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 23 Mar 2012 20:36:31 +0000 (20:36 +0000)
commit157bf182a6e01e11adf387b807fc1a64cc45bbf2
treebaa0db4e246526792e4e650b76e1db13dadaa7fc
parent9a76ee0907c687888b3feb3b7123f5071047ff3b
https://bugs.webkit.org/show_bug.cgi?id=82083
Too many ScrollAnimators are allocated on pages with frames

Reviewed by Geoffrey Garen.

This patch adds a new getter to ScrollableArea called
getExistingScrollAnimator() unlike scrollAnimator() this new function will
just return null if there is not already a ScrollAnimator. Callers should use
this new function when they have business with ScrollAnimator that does not
need to do anything when there are no scrollbars.
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::transitionToCommitted):
* page/EventHandler.cpp:
(WebCore::EventHandler::handleGestureTapDown):
* page/FrameView.cpp:
(WebCore::FrameView::setAnimatorsAreActive):
* platform/ScrollView.cpp:
(WebCore::ScrollView::updateScrollbars):
* platform/ScrollableArea.cpp:
(WebCore::ScrollableArea::willStartLiveResize):
(WebCore::ScrollableArea::willEndLiveResize):
(WebCore::ScrollableArea::contentAreaWillPaint):
(WebCore::ScrollableArea::mouseEnteredContentArea):
(WebCore::ScrollableArea::mouseExitedContentArea):
(WebCore::ScrollableArea::mouseMovedInContentArea):
(WebCore::ScrollableArea::contentAreaDidShow):
(WebCore::ScrollableArea::contentAreaDidHide):
(WebCore::ScrollableArea::willRemoveHorizontalScrollbar):
(WebCore::ScrollableArea::contentsResized):
(WebCore::ScrollableArea::serviceScrollAnimations):
* platform/ScrollableArea.h:
(ScrollableArea):
(WebCore::ScrollableArea::getExistingScrollAnimator):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@111896 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Source/WebCore/ChangeLog
Source/WebCore/loader/FrameLoader.cpp
Source/WebCore/page/EventHandler.cpp
Source/WebCore/page/FrameView.cpp
Source/WebCore/platform/ScrollView.cpp
Source/WebCore/platform/ScrollableArea.cpp
Source/WebCore/platform/ScrollableArea.h