element-hq / element-meta

Shared/meta documentation and project artefacts for Element clients
67 stars 11 forks source link

Add ability to mark messages unread #347

Open colans opened 7 years ago

colans commented 7 years ago

As in other messaging applications, it would be nice to mark a particular message in a room as unread, returning to the state before it was read. This is helpful for when you need a future reminder to do something, or you didn't have a chance to read everything up to the present, and would like to move the unread marker back.

So when clicking on the 3 dots to open the message menu, ideally there would be an item entitled Mark unread.

Amendment (2021-11-30): I'd be fine with being able to mark the entire room/conversation unread. Signal did this, and it works well enough for me so I believe it could work here as well, even though it would be slightly less than optimal.

Remaining tasks:

SethFalco commented 2 years ago

One thing to also think about, how will this impact read receipts? Could we have an option to take back read receipts, or for the read receipt to have an effect on it if it was marked unread after?

In my opinion, it'd be great if read receipts turned gray if the message was opened then marked as unread.

This should probably be an option, not sure if it would be enabled or disabled by default.

The motivation is for cases where we want to come back to a message later, but in some cases, the other user may feel like they were "left on read".

t3chguy commented 2 years ago

Mark as read in Matrix is the read receipt, I haven't read the MSC but I'd presume it'd back pedal the RR. The RM on the other hand is the last point in history you've read everything up to.

ShadowJonathan commented 2 years ago

but I'd presume it'd back pedal the RR.

@t3chguy MSC2867 doesn't do that, it just adds an extra bit of information to room account data to mark it being unread, it doesn't revert read receipts, which would be a much more difficult task.

mcg-matrix commented 2 years ago

but I'd presume it'd back pedal the RR.

[...], it doesn't revert read receipts, which would be a much more difficult task.

Just a thought: If the status of a message having been marked unread is stored for the account but does not affect anybody else's view of the world, it's just one special application of being able to mark (or flag or star or pick-a-verb) messages somehow, isn't it?

I think it would be great if I could add an indicator to funny messages, a different indicator (different colour, shape, sign, ...) to messages that need a follow-up sometime later, a third style indicator to messages that need a follow-up soon (= mark as unread), and so on.

MightyCreak commented 2 years ago

Just a thought: If the status of a message having been marked unread is stored for the account but does not affect anybody else's view of the world, it's just one special application of being able to mark (or flag or star or pick-a-verb) messages somehow, isn't it?

Yes, but you want your unread marker to propagate across your different sessions (desktop, web, mobile, ...), that's why it has to be stored server-side (i.e. the account) and not only client-side (i.e. the application).

ChargingBulle commented 2 years ago

I would like to use this feature as "not yet read" because sometimes you accidentally "read" something. For example when you open the Element Electron app and it opens the last visited channel and thus marks that as "read".

Slack (and others) handle this much better. When someone sends me contract work to review perhaps I only have time for it in the next week. Slack offers a remind-me-again feature which works really great for "Yes I read it but no I'll act upon it later"

nailyk-fr commented 2 years ago

Hello,

I didn't read all but see that you are talking about a bounty. Is there one already in place ? If not, is it ok I start one ?

Thanks for your answer and sorry for my 'noisy' comment.

gabrc52 commented 1 year ago

Here's some random person's musings on the importance of this feature: https://matthewbischoff.com/mark-as-unread-for-messages/

yousefamar commented 1 year ago

This is one of the main reasons I use Schildichat

nerdoc commented 5 months ago

@yousefamar: Why? Schildichat does not provide this feature yet.

yousefamar commented 5 months ago

@nerdoc To clarify, I meant marking a room as unread, not an individual message, which Schildichat supports on both desktop and mobile. On mobile you even have the option "open without reading". Frankly, I can't believe Element still doesn't have mark unread -- would have hoped the feature could be pulled from Schildichat since it's a fork afaik.

nerdoc commented 5 months ago

ah, OK, I see. yes,, Schildichat can mark rooms as unread, which is IMHO the feature I need. individual messages doesn't make sense IMHO, as I don't want to mark the third-last message as unread. It's always the last one, hence the room.

gabrc52 commented 5 months ago

Yeah, tbh I just want to be able to mark conversations as unread just so that I can stop accidentally ignoring friends and classmates. Mark as unread is an indication that I should get back to it later.

Putting the burden on the user to remember to respond to conversations is just going to mean less conversations are going to be responded to, and overall less talking on the Matrix network.

MightyCreak commented 5 months ago

ah, OK, I see. yes,, Schildichat can mark rooms as unread, which is IMHO the feature I need. individual messages doesn't make sense IMHO, as I don't want to mark the third-last message as unread. It's always the last one, hence the room.

I do have a use case for "mark message as unread". I use it a lot in other apps (e.g. EMail, Teams, ...). It's especially useful in rooms with several people.

Example: you enter a room where you have 15 unread messages. Most of the time, you can skim through, but not this time: there's a message that picked your interest. You decide to mark the message as unread (from this point in time, not just this message especially), so you can close the app and come back when you'll have more time to read it and its responses, and think about it.

I'd say I do that at least once per day in the other apps.

gabrc52 commented 5 months ago

Yes, that use case does make sense for large rooms, and I do use it on Discord.

Although I think that the point is that having the feature is better than not at all. This issue has been open since 2017 and it appears to be blocked only because of this doubt of whether to mark rooms or messages as unread. It is now 2024.

Jerome-Herbinet commented 1 month ago

I don't understand at all how a feature as basic and essential as this isn't implemented in Element (whereas it is in Rocket.Chat). My colleagues and I who use Element on a daily basis find this very annoying.

t3chguy commented 1 month ago

Element Web & Desktop already have this.

image
nunoperalta commented 1 month ago

Thank you. But I think it would be much more convenient to allow choosing a message (either right-click or long-tap on a message I choose) and "Mark Unread from Here". Skype has this functionality.

Just marking a whole thread as unread is not as useful as marking the exact position of that thread that I need to read from.

t3chguy commented 1 month ago

Sure, then I suggest you open an issue in the Matrix spec to support that. Right now the read receipts/markers can only move forwards, the server will block movement backwards

nunoperalta commented 1 month ago

My understanding is that this is the one for that: https://github.com/matrix-org/synapse/issues/2632

t3chguy commented 1 month ago

No, that's just asking the server to provide a count of unread messages, nothing about allowing the markers to move backwards in time. https://github.com/matrix-org/matrix-spec is the repo you want

nunoperalta commented 1 month ago

Thank you. Submitted - https://github.com/matrix-org/matrix-spec/issues/1893

colans commented 4 weeks ago

Element Web & Desktop already have this.

Wow, amazing! When did that get in? Anyway, I'm happy with closing this as soon as it gets in the mobile clients.

RNLFoof commented 4 weeks ago

That's a screenshot of marking an entire room as unread, while this issue was about specific messages, no?

Jerome-Herbinet commented 4 weeks ago

That's a screenshot of marking an entire room as unread, while this issue was about specific messages, no?

@RNLFoof you are right ; marking the whole channel as unread is interesting, but not great (not enough from an UX point of view). Users need to mark specific messages as unread.

ShadowJonathan commented 4 weeks ago

User story: I have a workflow where I "peek" what a user has sent me, to quickly read through and get any important/critical points, and if its non-critical, I mark unread until the point that I haven't "processed" yet.

Basically, I make sure that I'll encounter it later, in exactly the same spot that I found it, so that next time, I can go through it with a better swing.

Marking the entire channel as unread does not allow me to mark a specific point of "read from here", and so there needs to be extra non-obvious context clues pointing to where I had already read, especially if its a quick discussion or a long back-n-forth DM that I needed to read in-depth at a later point.

nunoperalta commented 4 weeks ago

That's exactly my "story" as well. I check to see if there's anything urgent, or things I can reply quickly. Otherwise, mark as unread from the point I was before, so I can go back to it later.

(I use Element/Matrix with my small team, and not federated)

colans commented 4 weeks ago

I have the same story, but having the room unread is good enough for me because having something unprocessed in there is good enough for me. I'll figure out what it is when I get back there.

That's a screenshot of marking an entire room as unread, while this issue was about specific messages, no?

No. See my update in the issue description (as the issue creator).

Let's do this:

  1. Keep this open until you can mark the room unread in the mobile apps.
  2. Create another follow-up issue for marking specific messages unread, which is blocked by the . (Can you even have blockers here? I'm used to GitLab.)

I've updated the issue description with a list of remaining tasks. Let's just work through it now.

nunoperalta commented 4 weeks ago

Create another follow-up issue for marking specific messages unread

Ok, raised here, now: https://github.com/element-hq/element-meta/issues/2465

TheJJ commented 4 weeks ago

Element X on Android also supports the room unread-marking, so that's already good enough for now (I still have both apps, though).

t3chguy commented 4 weeks ago

Yeah the legacy apps won't be receiving new features such as this, only the X apps are in feature development

colans commented 4 weeks ago

Okay, so everything other than the mobile Apple stuff is checked off now. Thanks for the updates!

mcg-matrix commented 3 weeks ago

Create another follow-up issue for marking specific messages unread

Ok, raised here, now: #2465

Well, that one's not about marking specific messages (= any specific message, individual messages) unread. Is that being tracked somewhere?

nunoperalta commented 3 weeks ago

Create another follow-up issue for marking specific messages unread

Ok, raised here, now: #2465

Well, that one's not about marking specific messages (= any specific message, individual messages) unread. Is that being tracked somewhere?

I'm not sure it makes much sense to mark "specific/individual messages" as unread. I haven't seen that in any other app so far.

What I believe would make more sense is maybe some kind of "Private Pin" or "Star" functionality. There is already "Pin", but I believe that pins to everyone, and not just for you.

Jerome-Herbinet commented 3 weeks ago

Create another follow-up issue for marking specific messages unread

Ok, raised here, now: #2465

Well, that one's not about marking specific messages (= any specific message, individual messages) unread. Is that being tracked somewhere?

I'm not sure it makes much sense to mark "specific/individual messages" as unread. I haven't seen that in any other app so far.

What I believe would make more sense is maybe some kind of "Private Pin" or "Star" functionality. There is already "Pin", but I believe that pins to everyone, and not just for you.

@nunoperalta Unread message feature exists in Rocket Chat and it's very useful, everyday for my college and me.

mcg-matrix commented 3 weeks ago

I'm not sure it makes much sense to mark "specific/individual messages" as unread. I haven't seen that in any other app so far.

What I believe would make more sense is maybe some kind of "Private Pin" or "Star" functionality. [...]

Love that idea! Let me find that old post... and shamelessly drop a self-reference: https://github.com/element-hq/element-meta/issues/347#issuecomment-1136132666 :-)

Is that already being tracked anywhere?