Jumping forward and backward isn't stable and not completely seamless #120
Labels
A-archive-room-view
The view to look at a room day by day in the archive
T-Defect
Something isn't working. Bugs, crashes, or other reported issues.
Milestone
#114 mentioned "seamless navigation" with a caveat but jumping forward and backward in a normal room doesn't seem to land you in the same spot. And it's not obvious that you skipped over a couple messages in that gap either.
For example if I visit
/r/test-room1:my.synapse.server/date/2021/12/09
, jump to next, the jump back to previous, I'm now on/r/test-room1:my.synapse.server/date/2021/12/14
.This is caused because when we
/messages?dir=f
to jump forwards, the date picked is rounded to the end of the day and there are more messages in between than the limit. So we end up missing messages in the gap between the limit and where we jumped from.Example:
/r/foo:bar/date/<day1>
: Will render from day 1 going backwards 6 messages (only 4 messages to show until we hit the start of the room)/r/foo:bar/date/<day3>
: Will render from day 3 going backwards 6 messagesPotential solution
When jumping forwards (
/messages?dir=f&limit=100
), back track a bit until we can find a date boundary. This will guarantee some overlap with the previous page.We then need to adjust the
?continue=top
query parameter to take an event ID (?continue=$abc
) to continue from so we can start the scroll off there.Using the previous example, it would now look like this:
The text was updated successfully, but these errors were encountered: