OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2006, 2007, 2008 Apple Inc. All rights reserved. | 2 * Copyright (C) 2006, 2007, 2008 Apple Inc. All rights reserved. |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions | 5 * modification, are permitted provided that the following conditions |
6 * are met: | 6 * are met: |
7 * 1. Redistributions of source code must retain the above copyright | 7 * 1. Redistributions of source code must retain the above copyright |
8 * notice, this list of conditions and the following disclaimer. | 8 * notice, this list of conditions and the following disclaimer. |
9 * 2. Redistributions in binary form must reproduce the above copyright | 9 * 2. Redistributions in binary form must reproduce the above copyright |
10 * notice, this list of conditions and the following disclaimer in the | 10 * notice, this list of conditions and the following disclaimer in the |
(...skipping 598 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
609 if (hasHorizontalScrollbar != newHasHorizontalScrollbar || hasVerticalScroll
bar != newHasVerticalScrollbar) { | 609 if (hasHorizontalScrollbar != newHasHorizontalScrollbar || hasVerticalScroll
bar != newHasVerticalScrollbar) { |
610 // FIXME: Is frameRectsChanged really necessary here? Have any frame rec
ts changed? | 610 // FIXME: Is frameRectsChanged really necessary here? Have any frame rec
ts changed? |
611 frameRectsChanged(); | 611 frameRectsChanged(); |
612 positionScrollbarLayers(); | 612 positionScrollbarLayers(); |
613 updateScrollCorner(); | 613 updateScrollCorner(); |
614 if (!m_horizontalScrollbar && !m_verticalScrollbar) | 614 if (!m_horizontalScrollbar && !m_verticalScrollbar) |
615 invalidateScrollCornerRect(oldScrollCornerRect); | 615 invalidateScrollCornerRect(oldScrollCornerRect); |
616 } | 616 } |
617 | 617 |
618 IntPoint adjustedScrollPosition = IntPoint(desiredOffset); | 618 IntPoint adjustedScrollPosition = IntPoint(desiredOffset); |
619 if (!isRubberBandInProgress()) | 619 |
620 adjustedScrollPosition = adjustScrollPositionWithinRange(adjustedScrollP
osition); | 620 if (ScrollAnimator* scrollAnimator = existingScrollAnimator()) { |
| 621 if (!scrollAnimator->isRubberBandInProgress()) |
| 622 adjustedScrollPosition = adjustScrollPositionWithinRange(adjustedScr
ollPosition); |
| 623 } |
621 | 624 |
622 if (adjustedScrollPosition != scrollPosition() || scrollOriginChanged()) { | 625 if (adjustedScrollPosition != scrollPosition() || scrollOriginChanged()) { |
623 ScrollableArea::scrollToOffsetWithoutAnimation(adjustedScrollPosition +
IntSize(scrollOrigin().x(), scrollOrigin().y())); | 626 ScrollableArea::scrollToOffsetWithoutAnimation(adjustedScrollPosition +
IntSize(scrollOrigin().x(), scrollOrigin().y())); |
624 resetScrollOriginChanged(); | 627 resetScrollOriginChanged(); |
625 } | 628 } |
626 | 629 |
627 // Make sure the scrollbar offsets are up to date. | 630 // Make sure the scrollbar offsets are up to date. |
628 if (m_horizontalScrollbar) | 631 if (m_horizontalScrollbar) |
629 m_horizontalScrollbar->offsetDidChange(); | 632 m_horizontalScrollbar->offsetDidChange(); |
630 if (m_verticalScrollbar) | 633 if (m_verticalScrollbar) |
(...skipping 790 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1421 } | 1424 } |
1422 | 1425 |
1423 bool ScrollView::platformIsOffscreen() const | 1426 bool ScrollView::platformIsOffscreen() const |
1424 { | 1427 { |
1425 return false; | 1428 return false; |
1426 } | 1429 } |
1427 | 1430 |
1428 #endif | 1431 #endif |
1429 | 1432 |
1430 } | 1433 } |
OLD | NEW |