-
-
Notifications
You must be signed in to change notification settings - Fork 2.1k
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
Top 'unread messages' banner doesn't appear until you scroll back far enough to paginate the relevant message #1146
Comments
how does this differ from #1192? |
Me and @dbkr had a discussion about this. The main points were:
The two scenarios from the clients perspective (with the user currently not reading the RoomView) are:
Interestingly, on the opposite side of the RoomView is the One solution could be to paginate up to the RR, but this could involve thousands of messages (and I guess that's why some apps display the number of unread messages alongside that arrow so that you can decide whether you actually want to read 999+ messages. |
i think the most recent conclusion on this is this that we should change how RM is implemented entirely, by maintaining it in the server and so synchronising it between clients. Therefore the client would use the existing permalink logic if needed to jump back to the point that the RM actually refers to. This is #1159. @lukebarnard1 - implementing #1159 could be a worthwhile mission to fix this and all the other crapness to do with RMs... |
The synchronized RMs are largely useless without this. However, surely this is simple to fix - if our RM points at an event ID that we don't recognise or is off the top of the screen, we show the "Jump to unread messages" prompt. Otherwise, we don't. What am I missing? |
The diff for this is hilariously small: - var showBar = (pos < 0);
+ var showBar = pos < 0 || pos === null; |
SHIP IT! :D |
wouldn't it be more consistent to show the bar whenever the read marker isn't on the screen?
? |
|
Woohoo, I just rebuilt |
the fix seems to have introduced another issue though |
yeah, i just hit @t3chguy's issue too. also, doesn't this need a synapse which supports the new RM stuff in order to work correctly? |
@ara4n actually it'll still work without the new RM endpoint, the position of it will still be based on the user's RR (which might refer to an event that hasn't been paginated) |
@richvdh yes, actually. In practice however, when scrolling down, the RM is repeatedly bumped off the bottom of the screen and scrolled up into the view-port. We could include some sort of padding but I have a feeling that wouldn't solve things for tall events. |
To help me understand current intended and future behaviours … Can the read receipt implementation allow the system to know that (for example):
(When I see RR, singular, I wonder whether the implementation is based upon a single point in time, rather than ranges of read messages.) |
The current behaviour is that RRs tell you the most recent message a given user has read; RM tracks the oldest message that you have read. There is no support for tracking ranges of read messages. It'd be better to ask this sort of thing via Matrix rather than adding sidebars to a bug like this one though :) |
(Thanks for steering/sorry for the sidebar.) |
This has been fixed by matrix-org/matrix-react-sdk@96e7479, matrix-org/matrix-react-sdk#845, matrix-org/matrix-react-sdk#846 and matrix-org/matrix-react-sdk#855 |
Created by @ richvdh:matrix.org.
This happens when you first open a room in Vector, and your read-receipt is a few pages earlier. We initialise the RM from your RR, but don't know when that was, so don't show the banner.
The text was updated successfully, but these errors were encountered: