Skip to content

Feature: Unread message indicators for channels #34

@mjkatgithub

Description

@mjkatgithub

Goal

Make channels with unread messages clearly visible in the channel list.

Scope

  • Detect unread state per channel based on latest read marker.
  • Show a visible unread indicator in the channel list item.
  • Keep indicator state in sync on new messages and when channel is opened.
  • Persist and restore unread state correctly after reload.
  • Ensure unread indicator works alongside existing room ordering/filtering.

Branch

feature/unread-channel-indicators

Acceptance Criteria

  • A channel with unread messages is clearly marked in the list.
  • Opening/reading a channel clears the unread indicator correctly.
  • New incoming messages update unread state without manual reload.
  • Unread indicator state survives app reload with correct values.
  • Existing channel list behavior remains stable.

Test Checklist

Unit

  • Unread state calculation from read marker and latest event.
  • State transitions for read/unread updates.

Integration

  • Channel list rendering reflects unread state changes.
  • Sync/update flow applies unread state after incoming events.

E2E

  • Send message to a non-active channel and verify unread mark.
  • Open marked channel and verify unread state is cleared.
  • Reload app and verify unread markers are still correct.

Notes

  • Keep visual treatment accessible and noticeable in both themes.

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions