From 8d0a2e79212b77cafcc9af73e92c0f2b23f782e8 Mon Sep 17 00:00:00 2001 From: Samuel Susla Date: Sun, 26 Sep 2021 12:14:10 -0700 Subject: [PATCH] Stop subview clipping recursion at RCTScrollViewComponentView component Summary: changelog: [internal] Prevent `RCTScrollViewComponentView`'s children from being clipped by stopping clipping recursion. Reviewed By: fkgozali Differential Revision: D31196948 fbshipit-source-id: 09548ade9cf993730784f544b565b9fde77a6ee4 --- .../ScrollView/RCTScrollViewComponentView.mm | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/React/Fabric/Mounting/ComponentViews/ScrollView/RCTScrollViewComponentView.mm b/React/Fabric/Mounting/ComponentViews/ScrollView/RCTScrollViewComponentView.mm index 37468a85b1..603b76a7f6 100644 --- a/React/Fabric/Mounting/ComponentViews/ScrollView/RCTScrollViewComponentView.mm +++ b/React/Fabric/Mounting/ComponentViews/ScrollView/RCTScrollViewComponentView.mm @@ -133,15 +133,6 @@ static void RCTSendPaperScrollEvent_DEPRECATED(UIScrollView *scrollView, NSInteg [self.scrollViewDelegateSplitter removeAllDelegates]; } -- (void)layoutSubviews -{ - [super layoutSubviews]; - - if (_subviewClippingEnabled) { - [self _remountChildren]; - } -} - - (RCTGenericDelegateSplitter> *)scrollViewDelegateSplitter { return ((RCTEnhancedScrollView *)_scrollView).delegateSplitter; @@ -611,6 +602,11 @@ static void RCTSendPaperScrollEvent_DEPRECATED(UIScrollView *scrollView, NSInteg #pragma mark - Child views mounting +- (void)updateClippedSubviewsWithClipRect:(CGRect)clipRect relativeToView:(UIView *)clipView +{ + // Do nothing. ScrollView manages its subview clipping individually in `_remountChildren`. +} + - (void)_remountChildrenIfNeeded { CGPoint contentOffset = _scrollView.contentOffset;