Return to feed after opening notes may return user to incorrect place in feed
- On your feed scroll down a few notes
- Open a note
- Wait a few seconds (or more if you don't follow a lot of people)
- Click on "< Home"
- You may or may not be redirected to the same place in your feed.
This looks to be related to new notes being published and bumping down the feed. That's my guess as the longer the note is open the more scrolling you will have to do to go back to where the original note was in the feed.
Ideal state: Return to the same note in the feed when clicking on "<Home", even if new notes have been posted.
Fixing this would be a quality of life improvement. This is not really annoying when just opening a note and quickly closing it as scrolling is minimal. This is mostly an issue when opening notes to participate in the thread. By the time the user returns to the home screen the feed is widely out of sync.
https://user-images.githubusercontent.com/109115349/223571766-ee261f78-3350-438c-8ec5-9e55b4c19202.mov
I have also experienced this.
@alltheseas @jb55 does this issue happen to you? I have tried closely following the steps and the video but I have not been able to replicate this issue on my end.
After talking to the team it seems like the problem is not with going back from an event, but switching between the notifications tab and the home feed tab
Sent a PR to fix this: https://github.com/damus-io/damus/pull/2459
As far as I have tested, this fixes the issue where scroll position is lost when crossing tab view boundaries (e.g. Viewing a thread from the notifications tab and going back to the home feed), which was the part of the issue that I could replicate.
I heard of reports which claimed that this issue was also present in other occasions, such as going back from a deeply nested thread (accessed from the home feed itself). I was not able to reproduce that one, but the changes should improve that type of behavior as it is now programmed to persist scroll position throughout the app session, even if the view is loaded or unloaded. We should probably pay attention to user's feedback when we put this on the Purple TestFlight, to be sure (cc @jb55 @alltheseas)
@jb55 please let me know if you have any questions, suggestions, or concerns. Thank you!
Descoped from 1.10 due to performance regressions that will need to be worked on.