nextcloud / nextcloud/mail

Improve UI for threads and conversations in message list

Open
#6,079 1 comment 3 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

1. to develop design enhancement
Dominant language
JavaScript
Stars
1k
Forks
348
Avg merge
12h 28m
Merged PRs (30d)
91

Description

Is your feature request related to a problem? Please describe.

Currently, it is hard to distinguish between single emails and conversations with multiple people. The only indication is the "Re:" in the subject, which can be easy to miss. It's also difficult to distinguish between an unread thread that has a lot of activity vs just one reply.

Describe the solution you'd like

@jancborchardt and I tried to improve this by showing more than one person in the sender list, and adding a count of how many messages in that thread are unread. Gmail, Outlook, Protonmail and Apple Mail all do some form of indicating these.

image
Some points to note:

  • Sender's names are unique and only the 2 most recent senders' names are shown
    For eg.
    Alice sent an email, Bob replied --> Alice and Bob
    Charlie replied --> Bob, Charlie & 1 more
    Alice replied --> Charlie, Alice & 1 more
    Dan replied --> Alice, Dan & 2 more
  • Only the most recent sender's avatar is shown
  • Unread counter bubble does not need to be shown in case of single emails and threads where all messages have been read
  • In case of email threads it shows only the number of unread messages in that thread
Describe alternatives you've considered

No response

Additional context

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the message list UI and review the design image in this issue, then check the related nextcloud-vue issue #2089 for timestamp guidance. Trace how sender names, avatars, thread state, and unread counts are currently rendered. Done means multi-person threads show the specified recent senders, the latest avatar, and an unread count only when appropriate.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript
Domain
frontend
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.