Changeset 238576 in webkit
- Timestamp:
- Nov 27, 2018 2:03:19 PM (5 years ago)
- Location:
- trunk
- Files:
-
- 2 added
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LayoutTests/ChangeLog
r238575 r238576 1 2018-11-27 Simon Fraser <simon.fraser@apple.com> 2 3 Momentum scrolling ends at the wrong place when a scrolling overflow element has a non-zero border 4 https://bugs.webkit.org/show_bug.cgi?id=191322 5 6 Reviewed by Dean Jackson. 7 8 * fast/scrolling/momentum-scroll-with-borders-expected.txt: Added. 9 * fast/scrolling/momentum-scroll-with-borders.html: Added. 10 * platform/ios/TestExpectations: 11 1 12 2018-11-27 Simon Fraser <simon.fraser@apple.com> 2 13 -
trunk/LayoutTests/accessibility/ios-simulator/scroll-in-overflow-div-expected.txt
r187904 r238576 4 4 5 5 6 AXScrollByPage received: data: AXScroll [position: 0.00 22 4.00]6 AXScrollByPage received: data: AXScroll [position: 0.00 220.00] 7 7 scroll down 0 : success true 8 AXScrollByPage received: data: AXScroll [position: 0.00 44 8.00]8 AXScrollByPage received: data: AXScroll [position: 0.00 440.00] 9 9 scroll down 1 : success true 10 AXScrollByPage received: data: AXScroll [position: 0.00 6 72.00]10 AXScrollByPage received: data: AXScroll [position: 0.00 660.00] 11 11 scroll down 2 : success true 12 AXScrollByPage received: data: AXScroll [position: 0.00 71 2.00]12 AXScrollByPage received: data: AXScroll [position: 0.00 716.00] 13 13 scroll down 3 : success true 14 14 scroll down 4 : success false 15 AXScrollByPage received: data: AXScroll [position: 0.00 4 88.00]15 AXScrollByPage received: data: AXScroll [position: 0.00 496.00] 16 16 scroll up 0 : success true 17 AXScrollByPage received: data: AXScroll [position: 0.00 2 64.00]17 AXScrollByPage received: data: AXScroll [position: 0.00 276.00] 18 18 scroll up 1 : success true 19 AXScrollByPage received: data: AXScroll [position: 0.00 40.00]19 AXScrollByPage received: data: AXScroll [position: 0.00 56.00] 20 20 scroll up 2 : success true 21 21 AXScrollByPage received: data: AXScroll [position: 0.00 0.00] 22 22 scroll up 3 : success true 23 23 scroll up 4 : success false 24 AXScrollByPage received: data: AXScroll [position: 42 4.00 0.00]24 AXScrollByPage received: data: AXScroll [position: 420.00 0.00] 25 25 scroll left 0 : success true 26 AXScrollByPage received: data: AXScroll [position: 84 8.00 0.00]26 AXScrollByPage received: data: AXScroll [position: 840.00 0.00] 27 27 scroll left 1 : success true 28 AXScrollByPage received: data: AXScroll [position: 12 72.00 0.00]28 AXScrollByPage received: data: AXScroll [position: 1260.00 0.00] 29 29 scroll left 2 : success true 30 AXScrollByPage received: data: AXScroll [position: 16 96.00 0.00]30 AXScrollByPage received: data: AXScroll [position: 1680.00 0.00] 31 31 scroll left 3 : success true 32 AXScrollByPage received: data: AXScroll [position: 21 20.00 0.00]32 AXScrollByPage received: data: AXScroll [position: 2100.00 0.00] 33 33 scroll left 4 : success true 34 AXScrollByPage received: data: AXScroll [position: 16 96.00 0.00]34 AXScrollByPage received: data: AXScroll [position: 1680.00 0.00] 35 35 scroll right 0 : success true 36 AXScrollByPage received: data: AXScroll [position: 12 72.00 0.00]36 AXScrollByPage received: data: AXScroll [position: 1260.00 0.00] 37 37 scroll right 1 : success true 38 AXScrollByPage received: data: AXScroll [position: 84 8.00 0.00]38 AXScrollByPage received: data: AXScroll [position: 840.00 0.00] 39 39 scroll right 2 : success true 40 AXScrollByPage received: data: AXScroll [position: 42 4.00 0.00]40 AXScrollByPage received: data: AXScroll [position: 420.00 0.00] 41 41 scroll right 3 : success true 42 42 AXScrollByPage received: data: AXScroll [position: 0.00 0.00] -
trunk/LayoutTests/platform/ios/TestExpectations
r238409 r238576 666 666 fast/scrolling/arrow-key-scroll-in-rtl-document.html [ Skip ] 667 667 fast/scrolling/overflow-scroll-past-max.html [ Skip ] 668 fast/scrolling/momentum-scroll-with-borders.html [ Skip ] 668 669 fast/scrolling/scroll-animator-basic-events.html [ Skip ] 669 670 fast/scrolling/scroll-animator-overlay-scrollbars-clicked.html [ Skip ] -
trunk/Source/WebCore/ChangeLog
r238575 r238576 1 2018-11-27 Simon Fraser <simon.fraser@apple.com> 2 3 Momentum scrolling ends at the wrong place when a scrolling overflow element has a non-zero border 4 https://bugs.webkit.org/show_bug.cgi?id=191322 5 6 Reviewed by Dean Jackson. 7 8 The scrolling momentum logic in ScrollController::handleWheelEvent() which computes whether the scroll is pinned 9 to the end makes use of ScrollableArea::visibleContentRect(). RenderLayer's implementation of this was incorrect when 10 the layer's element had borders, causing the momentum scroll to stop early. 11 12 Fix by using the correct size (visible size, not layer size). 13 14 Test: fast/scrolling/momentum-scroll-with-borders.html 15 16 * rendering/RenderLayer.cpp: 17 (WebCore::RenderLayer::visibleContentRectInternal const): 18 1 19 2018-11-27 Simon Fraser <simon.fraser@apple.com> 2 20 -
trunk/Source/WebCore/rendering/RenderLayer.cpp
r238523 r238576 2805 2805 scrollbarSpace = scrollbarIntrusion(); 2806 2806 2807 // FIXME: This seems wrong: m_layerSize includes borders. Can we just use the ScrollableArea implementation?2808 return IntRect(scrollPosition(), IntSize(std::max(0, m_layerSize.width() - scrollbarSpace.width()), std::max(0, m_layerSize.height() - scrollbarSpace.height())));2807 auto visibleSize = this->visibleSize(); 2808 return { scrollPosition(), { std::max(0, visibleSize.width() - scrollbarSpace.width()), std::max(0, visibleSize.height() - scrollbarSpace.height()) } }; 2809 2809 } 2810 2810
Note: See TracChangeset
for help on using the changeset viewer.