Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Restore refresh spinner fix #30978

Closed
wants to merge 1 commit into from
Closed
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
17 changes: 5 additions & 12 deletions React/Views/RefreshControl/RCTRefreshControl.m
Expand Up @@ -41,6 +41,11 @@ - (void)layoutSubviews
{
[super layoutSubviews];

// Fix for bug #7976
if (self.backgroundColor == nil) {
self.backgroundColor = [UIColor clearColor];
}

// If the control is refreshing when mounted we need to call
// beginRefreshing in layoutSubview or it doesn't work.
if (_currentRefreshingState && _isInitialRender) {
Expand All @@ -49,18 +54,6 @@ - (void)layoutSubviews
_isInitialRender = false;
}

- (void)didMoveToWindow
{
[super didMoveToWindow];

// Since iOS 14 there seems to be a bug where refresh control becomes
// visible if the view gets removed from window then added back again.
// Calling endRefreshing fixes the layout.
if (!_currentRefreshingState) {
[super endRefreshing];
}
}

- (void)beginRefreshingProgrammatically
{
UInt64 beginRefreshingTimestamp = _currentRefreshingStateTimestamp;
Expand Down