element-hq / element-android

A Matrix collaboration client for Android.
https://element.io/
GNU Affero General Public License v3.0
3.39k stars 731 forks source link

[UX/UI nitpick] Make sure that read markers dont "move" the timeline #2913

Open ShadowJonathan opened 3 years ago

ShadowJonathan commented 3 years ago

Currently, when read markers come in from sync, they are "shoved" under the message's text, i.e. they're placed on the bottom-right of a message model in the timeline, and then the message gets "moved" upwards to place this read indicator underneath it.

This is incredibly annoying, as it makes the timeline shift every time a message is read by someone else, and due to the federated nature of matrix, most often the read indicators are shown for earlier messages.

I'm also sure it violates a rule of UI somewhere, in the terms of how and when you can "move" the UI in response to what is happening, and im sure the changing of the read indicators aren't enough to make it move.

It is also a difference with element-web in this, as element-web previously had this behaviour (of "shoving" read indicators under messages), but gradually lost it (iirc), replacing it with a small strip of where read indicators can expand on the side.

Maybe a similar approach can be taken? To free a small vertical strip on the sides of messages, where read indicators are placed (without moving the UI), and stacked downwards (until "3+").

ShadowJonathan commented 3 years ago

1493 is sorta related to this, but that issue also hasn't been triaged

ShadowJonathan commented 3 years ago

2804 is also related to this, as it concerns some positioning of the read markers, and maybe it can inform this issue (e.g. for the "direction" of which the read indicators stack vertically, maybe then from bottom to top)