Skip to content

Conversation

@cwillisf
Copy link
Contributor

@cwillisf cwillisf commented Oct 22, 2025

Resolves:

  • Fixes UEPR-396: For some iPads and iPhones, about 98% of the time, the project page doesn't load correctly on mobile Safari. The header and footer of the page load OK, but the center is just a big empty space.

Changes:

This appears to be a general timing issue. I'm not sure why it shows up as a problem on mobile Safari specifically.

Basically, we need to fetch project info in order for the project page to load correctly. Previously, that was only done when the session info changed to "FETCHED" from any other state (or when the project ID changes). This change also fetches project info when the session info when the session status is already "FETCHED" before the component is mounted.

In addition, I added a spinner that displays on the project page if the main content components don't load. That spinner should never appear for very long, but if it does, its className should provide a hint for whoever tries to debug the problem in the future. As part of this, I converted several a && <b /> constructs to if (a) { children.push(b) }, which changed indentation, so I recommend viewing the diff with "Hide whitespace" enabled.

Here's a screenshot of the spinner in action:

This appears to be a general timing issue. I'm not sure why it shows up
as a problem on mobile Safari specifically.

Basically, we need to fetch project info in order for the project page
to load correctly. Previously, that was only done when the session info
changed to "FETCHED" from any other state (or when the project ID
changes). This change also fetches project info when the session info
when the session status is already "FETCHED" before the <Preview>
component is mounted.
Comment on lines -286 to -287
/>}
{banner}
Copy link
Contributor Author

@cwillisf cwillisf Oct 22, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Note that the } in this />} is associated with the showEmailConfirmationBanner check, so {banner} is not affected by that conditional. IMO, the indentation makes that look confusing in the diff when "Hide whitespace" is enabled. :/

Copy link
Contributor

@KManolov3 KManolov3 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me!

@cwillisf cwillisf merged commit 34aa48d into master Oct 29, 2025
13 checks passed
@github-actions github-actions bot locked and limited conversation to collaborators Oct 29, 2025
@cwillisf cwillisf deleted the hotfix/react-18-fixes branch October 29, 2025 15:44
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants