-
Notifications
You must be signed in to change notification settings - Fork 19
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
Maintain stability of the timeline UI view after the ignore user list changes #103
Comments
#107 addresses this in part, but still doesn't preserve event IDs for the entire duration of this cycle:
We also likely need to track the focus status of the timeline's PortalList:
|
The |
Based on discussions with Rik, the Instead, we should:
|
In progress, see #134 |
#134 addresses this for all cases except a complete timeline clear, e.g., after a change in the ignored-user list. But we have to completely re-think how this works by instantiating a brand new Timeline, replacing the existing timeline and its UI-side subscriber, and then focusing the new Timeline on one of the many events that was previously visible before the timeline clear action. |
Currently, we maintain timeline view stability for live backwards pagination. This is realized by using the timeline diffs to figure out which offset we need to apply to the event indices.
However, this will not work for cases where the ignore user list changes, as that results in the entire timeline being cleared, so there is no offset to calculate from the timeline diffs.
One possible way to implement this is to save the unique ID of one (or more) event(s) that are currently being shown on each timeline, such that we can return the timeline to that point once the full re-pagination has completed. We may also want to store the "focused" state of the timeline -- whether it was focused on that event or in "live" mode (scrolled to the very bottom or very top).
Spun off from a commit comment in #102.
The text was updated successfully, but these errors were encountered: