Title: [107431] trunk/Source/WebCore
- Revision
- 107431
- Author
- ander...@apple.com
- Date
- 2012-02-10 13:00:27 -0800 (Fri, 10 Feb 2012)
Log Message
Minor ScrollAnimatorMac cleanup
https://bugs.webkit.org/show_bug.cgi?id=78375
Reviewed by Beth Dakin.
Get rid of adjustScrollXPositionIfNecessary and adjustScrollYPositionIfNecessary.
Also, reduce nesting in willAdd/didAdd functions by using early returns.
* platform/mac/ScrollAnimatorMac.h:
(ScrollAnimatorMac):
* platform/mac/ScrollAnimatorMac.mm:
(WebCore::ScrollAnimatorMac::didAddVerticalScrollbar):
(WebCore::ScrollAnimatorMac::willRemoveVerticalScrollbar):
(WebCore::ScrollAnimatorMac::didAddHorizontalScrollbar):
(WebCore::ScrollAnimatorMac::willRemoveHorizontalScrollbar):
(WebCore::ScrollAnimatorMac::immediateScrollBy):
Modified Paths
Diff
Modified: trunk/Source/WebCore/ChangeLog (107430 => 107431)
--- trunk/Source/WebCore/ChangeLog 2012-02-10 21:00:17 UTC (rev 107430)
+++ trunk/Source/WebCore/ChangeLog 2012-02-10 21:00:27 UTC (rev 107431)
@@ -1,5 +1,24 @@
2012-02-10 Anders Carlsson <ander...@apple.com>
+ Minor ScrollAnimatorMac cleanup
+ https://bugs.webkit.org/show_bug.cgi?id=78375
+
+ Reviewed by Beth Dakin.
+
+ Get rid of adjustScrollXPositionIfNecessary and adjustScrollYPositionIfNecessary.
+ Also, reduce nesting in willAdd/didAdd functions by using early returns.
+
+ * platform/mac/ScrollAnimatorMac.h:
+ (ScrollAnimatorMac):
+ * platform/mac/ScrollAnimatorMac.mm:
+ (WebCore::ScrollAnimatorMac::didAddVerticalScrollbar):
+ (WebCore::ScrollAnimatorMac::willRemoveVerticalScrollbar):
+ (WebCore::ScrollAnimatorMac::didAddHorizontalScrollbar):
+ (WebCore::ScrollAnimatorMac::willRemoveHorizontalScrollbar):
+ (WebCore::ScrollAnimatorMac::immediateScrollBy):
+
+2012-02-10 Anders Carlsson <ander...@apple.com>
+
Minor ScrollableArea cleanup
https://bugs.webkit.org/show_bug.cgi?id=78372
Modified: trunk/Source/WebCore/platform/mac/ScrollAnimatorMac.h (107430 => 107431)
--- trunk/Source/WebCore/platform/mac/ScrollAnimatorMac.h 2012-02-10 21:00:17 UTC (rev 107430)
+++ trunk/Source/WebCore/platform/mac/ScrollAnimatorMac.h 2012-02-10 21:00:27 UTC (rev 107431)
@@ -111,8 +111,6 @@
virtual bool shouldScrollbarParticipateInHitTesting(Scrollbar*);
- float adjustScrollXPositionIfNecessary(float) const;
- float adjustScrollYPositionIfNecessary(float) const;
FloatPoint adjustScrollPositionIfNecessary(const FloatPoint&) const;
void immediateScrollTo(const FloatPoint&);
Modified: trunk/Source/WebCore/platform/mac/ScrollAnimatorMac.mm (107430 => 107431)
--- trunk/Source/WebCore/platform/mac/ScrollAnimatorMac.mm 2012-02-10 21:00:17 UTC (rev 107430)
+++ trunk/Source/WebCore/platform/mac/ScrollAnimatorMac.mm 2012-02-10 21:00:27 UTC (rev 107431)
@@ -621,22 +621,6 @@
immediateScrollTo(offset);
}
-float ScrollAnimatorMac::adjustScrollXPositionIfNecessary(float position) const
-{
- if (!m_scrollableArea->constrainsScrollingToContentEdge())
- return position;
-
- return max<float>(min<float>(position, m_scrollableArea->contentsSize().width() - m_scrollableArea->visibleWidth()), 0);
-}
-
-float ScrollAnimatorMac::adjustScrollYPositionIfNecessary(float position) const
-{
- if (!m_scrollableArea->constrainsScrollingToContentEdge())
- return position;
-
- return max<float>(min<float>(position, m_scrollableArea->contentsSize().height() - m_scrollableArea->visibleHeight()), 0);
-}
-
FloatPoint ScrollAnimatorMac::adjustScrollPositionIfNecessary(const FloatPoint& position) const
{
if (!m_scrollableArea->constrainsScrollingToContentEdge())
@@ -803,68 +787,72 @@
void ScrollAnimatorMac::didAddVerticalScrollbar(Scrollbar* scrollbar)
{
- if (isScrollbarOverlayAPIAvailable()) {
- ScrollbarPainter painter = scrollbarPainterForScrollbar(scrollbar);
- if (!painter)
- return;
+ if (!isScrollbarOverlayAPIAvailable())
+ return;
- ASSERT(!m_verticalScrollbarPainterDelegate);
- m_verticalScrollbarPainterDelegate.adoptNS([[WebScrollbarPainterDelegate alloc] initWithScrollbar:scrollbar]);
+ ScrollbarPainter painter = scrollbarPainterForScrollbar(scrollbar);
+ if (!painter)
+ return;
- [painter setDelegate:m_verticalScrollbarPainterDelegate.get()];
- [m_scrollbarPainterController.get() setVerticalScrollerImp:painter];
- if (scrollableArea()->inLiveResize())
- [painter setKnobAlpha:1];
- }
+ ASSERT(!m_verticalScrollbarPainterDelegate);
+ m_verticalScrollbarPainterDelegate.adoptNS([[WebScrollbarPainterDelegate alloc] initWithScrollbar:scrollbar]);
+
+ [painter setDelegate:m_verticalScrollbarPainterDelegate.get()];
+ [m_scrollbarPainterController.get() setVerticalScrollerImp:painter];
+ if (scrollableArea()->inLiveResize())
+ [painter setKnobAlpha:1];
}
void ScrollAnimatorMac::willRemoveVerticalScrollbar(Scrollbar* scrollbar)
{
- if (isScrollbarOverlayAPIAvailable()) {
- ScrollbarPainter painter = scrollbarPainterForScrollbar(scrollbar);
- if (!painter)
- return;
+ if (!isScrollbarOverlayAPIAvailable())
+ return;
- ASSERT(m_verticalScrollbarPainterDelegate);
- [m_verticalScrollbarPainterDelegate.get() invalidate];
- m_verticalScrollbarPainterDelegate = nullptr;
+ ScrollbarPainter painter = scrollbarPainterForScrollbar(scrollbar);
+ if (!painter)
+ return;
- [painter setDelegate:nil];
- [m_scrollbarPainterController.get() setVerticalScrollerImp:nil];
- }
+ ASSERT(m_verticalScrollbarPainterDelegate);
+ [m_verticalScrollbarPainterDelegate.get() invalidate];
+ m_verticalScrollbarPainterDelegate = nullptr;
+
+ [painter setDelegate:nil];
+ [m_scrollbarPainterController.get() setVerticalScrollerImp:nil];
}
void ScrollAnimatorMac::didAddHorizontalScrollbar(Scrollbar* scrollbar)
{
- if (isScrollbarOverlayAPIAvailable()) {
- ScrollbarPainter painter = scrollbarPainterForScrollbar(scrollbar);
- if (!painter)
- return;
+ if (!isScrollbarOverlayAPIAvailable())
+ return;
- ASSERT(!m_horizontalScrollbarPainterDelegate);
- m_horizontalScrollbarPainterDelegate.adoptNS([[WebScrollbarPainterDelegate alloc] initWithScrollbar:scrollbar]);
+ ScrollbarPainter painter = scrollbarPainterForScrollbar(scrollbar);
+ if (!painter)
+ return;
- [painter setDelegate:m_horizontalScrollbarPainterDelegate.get()];
- [m_scrollbarPainterController.get() setHorizontalScrollerImp:painter];
- if (scrollableArea()->inLiveResize())
- [painter setKnobAlpha:1];
- }
+ ASSERT(!m_horizontalScrollbarPainterDelegate);
+ m_horizontalScrollbarPainterDelegate.adoptNS([[WebScrollbarPainterDelegate alloc] initWithScrollbar:scrollbar]);
+
+ [painter setDelegate:m_horizontalScrollbarPainterDelegate.get()];
+ [m_scrollbarPainterController.get() setHorizontalScrollerImp:painter];
+ if (scrollableArea()->inLiveResize())
+ [painter setKnobAlpha:1];
}
void ScrollAnimatorMac::willRemoveHorizontalScrollbar(Scrollbar* scrollbar)
{
- if (isScrollbarOverlayAPIAvailable()) {
- ScrollbarPainter painter = scrollbarPainterForScrollbar(scrollbar);
- if (!painter)
- return;
+ if (!isScrollbarOverlayAPIAvailable())
+ return;
- ASSERT(m_horizontalScrollbarPainterDelegate);
- [m_horizontalScrollbarPainterDelegate.get() invalidate];
- m_horizontalScrollbarPainterDelegate = nullptr;
+ ScrollbarPainter painter = scrollbarPainterForScrollbar(scrollbar);
+ if (!painter)
+ return;
- [painter setDelegate:nil];
- [m_scrollbarPainterController.get() setHorizontalScrollerImp:nil];
- }
+ ASSERT(m_horizontalScrollbarPainterDelegate);
+ [m_horizontalScrollbarPainterDelegate.get() invalidate];
+ m_horizontalScrollbarPainterDelegate = nullptr;
+
+ [painter setDelegate:nil];
+ [m_scrollbarPainterController.get() setHorizontalScrollerImp:nil];
}
bool ScrollAnimatorMac::shouldScrollbarParticipateInHitTesting(Scrollbar* scrollbar)
@@ -1034,14 +1022,12 @@
void ScrollAnimatorMac::immediateScrollBy(const FloatSize& delta)
{
- float newPosX = adjustScrollXPositionIfNecessary(m_currentPosX + delta.width());
- float newPosY = adjustScrollYPositionIfNecessary(m_currentPosY + delta.height());
-
- if (newPosX == m_currentPosX && newPosY == m_currentPosY)
+ FloatPoint newPos = adjustScrollPositionIfNecessary(FloatPoint(m_currentPosX, m_currentPosY) + delta);
+ if (newPos.x() == m_currentPosX && newPos.y() == m_currentPosY)
return;
- m_currentPosX = newPosX;
- m_currentPosY = newPosY;
+ m_currentPosX = newPos.x();
+ m_currentPosY = newPos.y();
notifyPositionChanged();
}
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes