Planning
- Milestone: Phase 3
- Priority: P2
- Size: S
- Estimate: 2 SP
Goal
Manual Mark as read for a single room and for all channels under a space (Element-style), without opening each room.
Background
- Auto mark-read on open already exists (
useRoomUnread, markRoomAsRead).
- Missing: explicit user action from sidebar (room ⋯ menu / space header menu).
- Space-level: mark all descendant channels (via
m.space.child tree, same as unread rollup in spaceUnread.ts) as read.
Scope
- Room: "Mark as read" in
RoomCategoryList ellipsis menu when room has unread.
- Space: "Mark space as read" in space header / space menu when space has unread badge.
- Reuse
markRoomAsRead; add batch helper for space child room IDs (collectSpaceChildRoomIds).
- Update unread indicators immediately after success.
- i18n EN/DE.
Branch
feature/mark-as-read
Acceptance Criteria
Test Checklist
Unit
Manuell
Notes
Epic
Sub-issue of #3 (Phase 3).
Planning
Goal
Manual Mark as read for a single room and for all channels under a space (Element-style), without opening each room.
Background
useRoomUnread,markRoomAsRead).m.space.childtree, same as unread rollup inspaceUnread.ts) as read.Scope
RoomCategoryListellipsis menu when room has unread.markRoomAsRead; add batch helper for space child room IDs (collectSpaceChildRoomIds).Branch
feature/mark-as-readAcceptance Criteria
Test Checklist
Unit
spaceUnreadhelpers).Manuell
Notes
Epic
Sub-issue of #3 (Phase 3).