feat(tui): chat rooms — browsable list, multiple open rooms, unread badges
Add a chat-rooms popup (open with 'c') satisfying the requested UX: - Browsable, /-filterable room list showing per-room user counts, busiest first; already-open rooms are marked. - Multiple rooms open at once as tabs; Tab/Shift-Tab switch, 'x' leaves. - Per-room chat log with a live member list and an inline compose line (Enter to type, Enter to send; the server echo renders the message). - Unread indicators: bold tab name + 'room (n)' badge per room, plus 'chat (n)' and 'inbox (n)' counters in the shortcut bar; viewing a room clears its badge. RoomsState is unit-tested (routing, unread accounting, tab lifecycle, filtering).
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
mod app_state;
|
||||
mod browse;
|
||||
mod file_display_data;
|
||||
mod rooms;
|
||||
|
||||
pub use app_state::{
|
||||
AppState, ChatMessage, CommandBarMode, DownloadEntry, FocusedPane,
|
||||
@@ -8,3 +9,4 @@ pub use app_state::{
|
||||
};
|
||||
pub use browse::{BrowseState, BrowseStatus, files_under, find_node};
|
||||
pub use file_display_data::FileDisplayData;
|
||||
pub use rooms::{RoomLine, RoomsState, RoomsView};
|
||||
|
||||
Reference in New Issue
Block a user