-
Notifications
You must be signed in to change notification settings - Fork 24
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
fix: make login and sync loading smoother [AR-3001] #1567
Conversation
Build 1 failed. |
Build 2 succeeded. The build produced the following APK's: |
Build available here. Scroll down to Artifacts! |
Codecov Report
@@ Coverage Diff @@
## develop #1567 +/- ##
=============================================
+ Coverage 34.04% 34.06% +0.02%
Complexity 653 653
=============================================
Files 243 243
Lines 8989 8997 +8
Branches 1143 1144 +1
=============================================
+ Hits 3060 3065 +5
Misses 5632 5632
- Partials 297 300 +3
Continue to review full report in Codecov by Sentry.
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🪄✨
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
PR Submission Checklist for internal contributors
The PR Title
SQPIT-764
The PR Description
What's new in this PR?
Issues
Loading state UI is frozen during initial sync on Android 9.
Loading state when logging in is wrong and progress disappears after a split second.
Solutions
Login:
Remove turning off the loading flag on login screen right after the first call and let it be visible throughout the whole login flow.
Execute all important actions on IO to not block the main thread and let the loading be as smooth as possible.
Initial sync:
Call
waitUntilSyncIsCompleted
inLaunchedEffect
withUnit
key to make sure it's executed only once.Change
collect
tofirstOrNull
to not collect items when it's not needed anymore.Register device:
Open "initial sync" screen also after registering a device if the sync hasn't been done yet.
Testing
How to Test
Login and sync to see the difference.
Attachments (Optional)
Before:
login_sync_before.mp4
After:
login_sync_after.mp4
PR Post Submission Checklist for internal contributors (Optional)
PR Post Merge Checklist for internal contributors
References
feat(conversation-list): Sort conversations by most emojis in the title #SQPIT-764
.