Repository navigation
Conversation
On iOS a tab you go back to opens as it was last drawn, straight from the tab bar. The skeleton frame then cut from those rows to a spinner, and back to the kept rows a frame or two later, which showed as a flicker on Notifications and Profile. iOS now opens on what it kept. Android keeps showing the tab you left until the new one draws, so the skeleton frame stays there as the sign your tap worked. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
On iOS, going back to a tab flashed a spinner for a frame or two. Notifications and Profile showed it most.
iOS keeps each tab's last frame and shows it the moment you tap the tab. The skeleton frame then replaced it with a spinner, and the kept rows came back about 17 ms later. On the iPhone, Notifications draws what it kept in about 10 ms and Profile in about 40 ms, so the skeleton frame bought nothing there. iOS now opens on what it kept, with no skeleton frame.
Android keeps the tab you left on screen until the new one draws, so the skeleton frame stays there as the sign your tap worked (#36).
A side effect: iOS tabs no longer dispatch
FirstFrame, so they don't depend on NativePHP/mobile-air#615 any more. That fix still matters for Android and for other apps.Reviewers: the first visit to a tab on iOS now shows the empty tab for the time it takes to draw what was kept, where it used to show a spinner first. A tab with nothing kept still shows its spinner while it loads.
Screenshots
Recordings to follow. The only change is the spinner flash on iOS tab switches, so still screenshots look the same before and after.
🤖 Generated with Claude Code