Discover unread chats

When I get a new email, e.g. a newsletter, it moves corresponding chat to the top of the chatlist. But if I do not read it right away, it will move down and eventually be lost below a lot of read chats. Account badge then indicates that there are unread messages, but finding them requires scrolling through the whole chatlist.

Signal solves this by having a separate view for only unread chats, but the view itself is not easily discoverable as it is activated by pulling the chatlist down:

I think there should be a better solution.

One idea is to experiment with always placing unread chats between pinned chats and read chats, this should be easy to implement by changing only the core logic.

1 Like

I just noticed that in WhatsApp I never have this problem of not finding unread chats, while in Signal and DC I do.

I think that this is because in WA, unread chats stand out more:

  • The unread badge is green, which stands out more than our blue - maybe we can find a tone of blue that stands out more
  • The date view also becomes thicker and printed in green.
  • WA doesn’t have a thin line between chats and no “Request” badges, so that there aren’t many elements at the right of a chat except for the unread badge.

Also, scrolling through the chats list is simply smoother in WA than in DC.

The downside about this is that we’ll deviate from what all other messengers do, increasing the difficulty to get used to Delta Chat for new users.


The unread badge is green, which stands out more than our blue - maybe we can find a tone of blue that stands out more

or go back to green, we had that before. another blue tone - not sure. i find already the existing one too close to the “verified” color when scrolling really fast and only skimming over things (we changed to blue as every os had a different color, and we just picked one, blue was the one from desktop)

I just noticed that in WhatsApp I never have this problem of not finding unread chats

i agree. for me personally, the reason is that i have vastly more chats in Delta as in Whatsapp. also, there is at least one situation where unread chats are not sort up, i had that recently with the “wrong info message” - these kind of things are hard to find later

but also whatsapp has a function to show only unread chats, it is a little hidden when you tap on “search”, you have options to set some filters:

when selecting, this becomes a “filter tag”, this is nice, however, for Delta Chat, regarding our current resources, this seems a bit out of scope on all UIs.

but maybe we can start with core-only thing: we could offer entering a filter in the form read:no (or so, similar to github) - that could be just typed, and at least experienced users can use it.
as a simple subsequent step, to make things better discoverable, there could be a menu or so beside the search field, that just prepends that to the search field. in a later step, these filters could also be shown as “filter tags”.

advantage would be that the functionality would be available on all UI without the need to do anything iniitially effort - and things would be similar to what other advances searches have.

just an idea :slight_smile:

whatever, we do, however, i think, the “discover unread only” should not be in the primary UI (mainmenu eg. would be tempting, but i think, it is a too rare function and i would not clutter things there), i think, it is okay if it is a bit hidden and is discovered at some later point (when you search for it as you really have 500 chats). i think, it should somehow be related to “search”.


It is not so hidden in the iOS client of WhatsApp, there it is a button next to the search field. Though WhatsApp kinda wastes a bit space IMO around the search field there, but maybe that is an important design choice, who knows.

We now have a core api, now it would be possible to add a filter for this like WhatsApp and others do:

new ChatList Mode: Only Chats with unread messages · Issue #4738 · deltachat/deltachat-core-rust · GitHub

the issue was solved by @Septias, he added a search flag is:unread that you can add to your text query.

This does already work in ui somewhat in desktop, but desktop would need some different ui for the search, currently it takes up only a fraction of the available space because it also searches for contacts and messages:

Alternatively the UI could have a different view for this like it does already for archived chats. Having some button for this is useful anyway, because most normal people would not really use text filters as is:unread, I estimate.

1 Like

very nice feature, I don’t know if it is feasible, but it would be helpful if unread messages from all accounts were displayed instead of just the one currently in use, something like a unified view used in other email clients.

1 Like

likely because you don’t have so much chats as on Delta, for me the color is not a problem, nor the smoothness, in fact what I do is scroll fast and stop when I spot a badge, but even then it is hard because I have 500-800 chats in my accounts and that is quite some scrolling :face_exhaling:

we have a core API to search chats, and it already has a flag parameter IIRC, just adding a new flag meaning “unread chats only” would be enough core-wise then UI can experiment how to use it

already exists: is:unread, you can already experiment with it