Annoyances:
I think we should consider the following improvements:
Another option would be to just have it skip to the most recent unread message (before your current block) rather than the oldest.
To be clear, when I do use (click on) it, it gets me to exactly where I want to be. But I find it's not very useful:
It'd be nice if it was less obtrusive in rooms that aren't being interacted with regularly. For instance, I rarely visit many rooms on my room list. When I do visit those rooms, it's because of a ping (usually) or I'm brought in for another reason. I often don't care too much about the history of the room and end up clearing the read marker just so I can more easily follow along in my short visit to the room before leaving it be for weeks/months/years.
The more I think about this, the more i think the solution is simply to have the 'jump to unread messages' banner take you up to wherever the RM is (if the RM is off the top of the page). And that's it - it shows you the most recent unread message since you were last in the room.
We might need to increase the delay or metric after which a room is considered read, so if you are just flipping through rapidly it doesn't reset the RM, but I think this is going to be the least unintuitive solution.
We should also give the option to disable it via granular settings as per #7225.
I think the only reason we didn't do this in the first place was because of concern that the RM gets flushed whenever you start reading a room, so you only get one shot to read the room - if you dip into it and decide not to hit the jump to old messages button, you then lose your place. Perhaps this is better than the current behaviour, though, especially if the prompt hangs around indefinitely until you click on it during a given view of the room (even though the underlying RM has faded away).
The only alternative i can see is the whole enchilada over at https://github.com/vector-im/riot-web/issues/6483.
bump. Please, please disable this "new message" screen nag. Chatrooms don't need a popup notification to tell you that someone has chatted.
A good solution is to offer the user an option to "never display this message again" in the notification itself. Every notification should include the option to permanently disable it, imho.
I am constantly confused about the RM. It basically never takes me to where I think it would take me. It most of the time takes me to some point days or weeks ago (basically the last time I clicked the X). When I am in a room, and go away for 5 min, I expect it to take me to the state of when I left the room. Irrespective of whether I have already reset the RM before I left the room or not. Every IRC client out there seems to get this right. But in Riot it seems I always have to manually reset the read marker even if I don't want go there every time I switch to a room, in order for it to track the correct new state next time I go away.
Yeh, it seems like its mandatory to click the x after pressing "Get to the last unread message".
Skim-reading is very frustrating because you have to scroll down, scroll up to catch the RM, scroll down...
Imho the "Get to last unread message" should also act as "X" and close the message.
The only alternative i can see is the whole enchilada over at #6483.
Another possibility (which is like a lightweight version of #6483) would be to track the previous RM locations in a list, and let you jump back through them. This might not be too bad, although unsure what the UX would be to differentiate between "you have unread stuff you really want to jump back to" and "jump back further".
So, turns out that experimenting with the proposed change is pretty much a oneliner; to switch m.fully_read at https://github.com/matrix-org/matrix-react-sdk/blob/49ce4ef117b854eff3ab26ae30a1b336a250532d/src/components/structures/TimelinePanel.js#L126 to m.read.
The problem turns out to be that users may want to send RRs more rapidly than they clear their RM, however. So there is perhaps an argument that the client should explicitly update the RM location as something like an m.last_read field once the client has decided that the user has read on sufficiently that it no longer wants the old bookmarked location.
EDIT: except multiple clients won't necessarily know how to merge together m.last_read fields together as they won't necessarily know all IDs. So perhaps it does have to be done serverside via a dedicated UI anyway.
So, turns out that experimenting with the proposed change is pretty much a oneliner; to switch
m.fully_readat https://github.com/matrix-org/matrix-react-sdk/blob/49ce4ef117b854eff3ab26ae30a1b336a250532d/src/components/structures/TimelinePanel.js#L126 tom.read.
Yep, almost, see https://github.com/matrix-org/matrix-react-sdk/commit/65db0fc15522a914686c020820f357cdc9722448
@ara4n & I just jumped on a call to explore different options for solving this issue, writing up notes here:
https://docs.google.com/document/d/1PAZYgCfrGJuDOYGTJ8HZH7Pd2LK0yUkW13C9FMwhWHw
How about this: give us an option to COMPLETELY DISABLE these spam notifications, forever.
COMPLETELY DISABLE these ... notifications
At least per room would be nice. there are some rooms where i don't care whats written before.
I disagree - it still shows up when I don't expect it to, just now it's on the far right instead of across the top of the room.
In all devices (Android, Web, Desktop, iOS, ...), is it possible that when I open a chat with a number of unread messages, we are auto-scrolled to the first/oldest unread message, instead of defaulting to being scrolled to the bottom?
Most helpful comment
It'd be nice if it was less obtrusive in rooms that aren't being interacted with regularly. For instance, I rarely visit many rooms on my room list. When I do visit those rooms, it's because of a ping (usually) or I'm brought in for another reason. I often don't care too much about the history of the room and end up clearing the read marker just so I can more easily follow along in my short visit to the room before leaving it be for weeks/months/years.