(Internal) zeplin: https://zpl.io/VkeZXQg

Unread messages
Scroll down / new messages
@bwindels or @ara4n we spoke in some detail about the read marker UX in Riot Web last year, with notes captured here: https://docs.google.com/document/d/1PAZYgCfrGJuDOYGTJ8HZH7Pd2LK0yUkW13C9FMwhWHw/edit#
Could either of you speak to the implementation we arrived at in the end?
Yes, riot web does the following with the read markers (mostly unrelated to read receipts) currently:

if the read marker is in the viewport, no button is shown, and the read marker is put after the last visible message after 1s of user activity*.
if the read marker is below the viewport, we don't change it automatically. If new messages arrive, we show a badge on the arrow button to scroll down, but I don't think this is based on the position of read marker, it is just something we reset when you scroll to the bottom.

Also see https://github.com/matrix-org/matrix-react-sdk/pull/2345#issue-237724855
Handle in #592
Most helpful comment
Yes, riot web does the following with the read markers (mostly unrelated to read receipts) currently:
if the read marker is in the viewport, no button is shown, and the read marker is put after the last visible message after 1s of user activity*.
if the read marker is below the viewport, we don't change it automatically. If new messages arrive, we show a badge on the arrow button to scroll down, but I don't think this is based on the position of read marker, it is just something we reset when you scroll to the bottom.