Bugfix FXIOS-15617 Prevent skeleton bars from not being shown when launching with address bar on top then moving it to bottom#33837
Bugfix FXIOS-15617 Prevent skeleton bars from not being shown when launching with address bar on top then moving it to bottom#33837yxm4nsy wants to merge 4 commits into
Conversation
🧹 Tidy commitJust 1 file(s) touched. Thanks for keeping it clean and review-friendly! 💬 Description craftsmanGreat PR description! Reviewers salute you 🫡 ✅ New file code coverageNo new file detected so code coverage gate wasn't ran. ✅ Existing file code coverageNo modified file had significant enough changes for the coverage gate to run. Client.app: Coverage: 40.73
Generated by 🚫 Danger Swift against 3bc8890 |
|
I remember some performance issues with constraints on skeleton tabs on iPads that can't have this functionality — I can try to look up the tickets to see if this has any potential to regress what has been worked around at some point in past, but thinking mainly #31437 et al… |
Hey 👋 Thanks for the context! I did test it on iPad it seemed to be working fine but ill look into it the complications that may arise in relation to this ticket. |
|
💯 You have the right reviewer assigned to glance over the impact related to previous efforts (:) I'm only leaving the breadcrumbs to e.g. #30365 and similar to follow the tickets — I have a faint recollection of some nasty autolayout hangs over this, happy to dig up more tickets for context in the meantime. |
…barContainer (still need to make sure that this is the correct approach, will probably need to change the approach to the solution anyways)
…e toolbar is at the bottom, if the toolbar is at the top then they remain unadded until the first time the toolbar is moved to the bottom in which case they are added and remain added regardless of toolbar position
📜 Tickets
Jira ticket
Github issue
💡 Description
The app only adds skeleton bars to the layout at startup when the address bar is positioned at the bottom. This means that if the app launches with the address bar at the top and is later moved to the bottom, the skeleton bars are never added and therefore missing. The fix introduces a flag on the container that tracks whether the skeletons have been added. The function responsible for updating skeleton visibility now checks this flag and lazily adds them if needed. Once added, they persist regardless of address bar position until the app is restarted.
Note: The initial approach was to always keep the skeletons in the layout and toggle visibility, but given the UI hang issues from a few months ago, this lazy-add workaround was chosen to avoid regressing that work.
Note: IMO the toolbar is probably due for a refactor at some point for a cleaner solution 😄
📝 Checklist