Changeset 246950 in webkit
- Timestamp:
- Jun 29, 2019 2:01:40 PM (5 years ago)
- Location:
- trunk
- Files:
-
- 2 added
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LayoutTests/ChangeLog
r246943 r246950 1 2019-06-29 Simon Fraser <simon.fraser@apple.com> 2 3 Remove a PLATFORM(IOS_FAMILY) related to repaint offsets in composited scrolling layers 4 https://bugs.webkit.org/show_bug.cgi?id=199342 5 6 Reviewed by Zalan Bujtas. 7 8 * fast/events/touch/ios/touch-event-regions/scrolled-overflow-expected.txt: Added. 9 * fast/events/touch/ios/touch-event-regions/scrolled-overflow.html: Added. 10 1 11 2019-06-28 Zalan Bujtas <zalan@apple.com> 2 12 -
trunk/Source/WebCore/ChangeLog
r246948 r246950 1 2019-06-29 Simon Fraser <simon.fraser@apple.com> 2 3 Remove a PLATFORM(IOS_FAMILY) related to repaint offsets in composited scrolling layers 4 https://bugs.webkit.org/show_bug.cgi?id=199342 5 6 Reviewed by Zalan Bujtas. 7 8 Code in RenderObject::shouldApplyCompositedContainerScrollsForRepaint() adds VisibleRectContextOption::ApplyCompositedContainerScrolls 9 only for iOS, and RenderLayerBacking::setContentsNeedDisplayInRect() subtracts out scroll position for only iOS, 10 so remove this iOS-specific code. 11 12 Blame for this code mentions touch event regions, so I tested these but they use absoluteBoundingBoxRect() 13 which doesn't hit this code. Still, I added a layout test for touch regions inside scrolled overflow. 14 15 Existing tests exist for repaint inside scrolled overflow. 16 17 Test: fast/events/touch/ios/touch-event-regions/scrolled-overflow.html 18 19 * rendering/RenderLayerBacking.cpp: 20 (WebCore::RenderLayerBacking::setContentsNeedDisplayInRect): 21 * rendering/RenderObject.cpp: 22 (WebCore::RenderObject::shouldApplyCompositedContainerScrollsForRepaint): Deleted. 23 (WebCore::RenderObject::visibleRectContextForRepaint): Deleted. 24 * rendering/RenderObject.h: 25 (WebCore::RenderObject::visibleRectContextForRepaint): 26 1 27 2019-06-28 Tim Horton <timothy_horton@apple.com> 2 28 -
trunk/Source/WebCore/rendering/RenderLayerBacking.cpp
r246845 r246950 2714 2714 FloatRect layerDirtyRect = pixelSnappedRectForPainting; 2715 2715 layerDirtyRect.move(-m_scrolledContentsLayer->offsetFromRenderer() + toLayoutSize(m_scrolledContentsLayer->scrollOffset()) - m_subpixelOffsetFromRenderer); 2716 #if PLATFORM(IOS_FAMILY)2717 // Account for the fact that RenderLayerBacking::updateGeometry() bakes scrollOffset into offsetFromRenderer on iOS,2718 // but the repaint rect is computed without taking the scroll position into account (see shouldApplyClipAndScrollPositionForRepaint()).2719 layerDirtyRect.moveBy(-m_owningLayer.scrollPosition());2720 #endif2721 2716 m_scrolledContentsLayer->setNeedsDisplayInRect(layerDirtyRect, shouldClip); 2722 2717 } -
trunk/Source/WebCore/rendering/RenderObject.cpp
r246490 r246950 976 976 } 977 977 978 bool RenderObject::shouldApplyCompositedContainerScrollsForRepaint()979 {980 #if PLATFORM(IOS_FAMILY)981 return false;982 #else983 return true;984 #endif985 }986 987 RenderObject::VisibleRectContext RenderObject::visibleRectContextForRepaint()988 {989 VisibleRectContext context(false, false, { VisibleRectContextOption::ApplyContainerClip });990 if (shouldApplyCompositedContainerScrollsForRepaint())991 context.m_options.add(VisibleRectContextOption::ApplyCompositedContainerScrolls);992 return context;993 }994 995 978 LayoutRect RenderObject::computeRectForRepaint(const LayoutRect& rect, const RenderLayerModelObject* repaintContainer) const 996 979 { -
trunk/Source/WebCore/rendering/RenderObject.h
r246432 r246950 803 803 static bool shouldApplyCompositedContainerScrollsForRepaint(); 804 804 805 static VisibleRectContext visibleRectContextForRepaint(); 805 static VisibleRectContext visibleRectContextForRepaint() 806 { 807 return VisibleRectContext(false, false, { VisibleRectContextOption::ApplyContainerClip, VisibleRectContextOption::ApplyCompositedContainerScrolls }); 808 } 806 809 807 810 private:
Note: See TracChangeset
for help on using the changeset viewer.