docs: mark P2-1/2/3/5 complete; update README and landing page

- LOTUS_TODO.md: [x] P2-1 (upstream JumpToTime), P2-2 (custom sounds),
  P2-3 (sort rooms), P2-5 (quiet hours)
- README.md: new Notification Enhancements section (custom sounds, quiet
  hours); Room sort order added to UX & Composer section
- landing/index.html: three new comparison rows — custom notification
  sounds, quiet hours, room sort order

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-06-03 20:32:22 -04:00
parent 5ae84cbeaf
commit 6d0b778755
2 changed files with 18 additions and 4 deletions
+6
View File
@@ -140,6 +140,7 @@ Emoji reaction buttons styled for terminal mode via `button[data-reaction-key]`
- **Message length counter**: A muted character counter appears just left of the send button while typing, disappearing when the composer is empty. Resets on room switch.
- **Sidebar room filter**: A search-icon input at the top of the Home and DMs sidebar tabs filters rooms by display name in real time. Clears on tab switch. Styled to match the members-drawer search bar (`size="400"`, search prefix icon).
- **DM last message preview**: Each DM row in the sidebar shows a truncated message body (48 chars) and relative timestamp (`Xm`, `Xhr`, `Yesterday`, `D MMM`) below the room name, sourced reactively from `useRoomLatestRenderedEvent`. Encrypted rooms show "Encrypted message" only on actual decryption failure.
- **Room sort order**: Sort icon in the Rooms sidebar header lets users sort non-space rooms by Recent Activity (default), A→Z, or Unread First. Persists via `homeRoomSort` setting.
- **Favorite rooms**: Right-click any room → "Add to Favorites" / "Remove from Favorites". Favorited rooms (using the standard Matrix `m.favourite` tag) appear in a collapsible "Favorites" section above the main room list on the Home tab. Syncs across devices via account data.
- **Poll creation**: Polls can be created directly from the composer — `Icons.OrderList` button opens a modal with question field, 210 answer options (add/remove), and Single/Multiple choice toggle. Sends a stable `m.poll.start` event. (Poll display & voting were already supported.)
- **Voice message playback speed**: `0.75×``1×``1.5×``2×` speed toggle pill on voice message player — cycles on click via `playbackRate` on the `<audio>` element.
@@ -153,6 +154,11 @@ Emoji reaction buttons styled for terminal mode via `button[data-reaction-key]`
- **Night Light / Blue Light Filter**: Warm orange overlay (`rgba(255,140,0,N%)`) across the entire UI. Toggle + intensity slider (580%) in Settings → Appearance. `position:fixed; pointer-events:none; z-index:9998`. Persists across sessions.
### Notification Enhancements
- **Custom notification sounds**: `messageSoundId` / `inviteSoundId` settings select per-category notification sound (`notification.ogg`, `invite.ogg`, `call.ogg`, or None). Settings → Notifications expands the sound toggle with Message Sound + Invite Sound selects and ▶ preview buttons. Shared `notificationSounds.ts` module.
- **Notification quiet hours**: `quietHoursEnabled` / `quietHoursStart` / `quietHoursEnd` settings suppress all desktop notifications and sounds during a configured time window. Handles overnight spans (e.g. 23:0008:00). Settings → Notifications: Quiet Hours card with toggle + start/end time pickers.
### Calls (Extended)
- **Push-to-Deafen**: Press `M` during a call to toggle speaker mute (deafen). Configurable in Settings → General → Calls alongside the PTT key. Skips editable elements; guards `e.repeat`; uses `el.ownerDocument.body` for iframe safety.