feat: custom status message — display + editor with emoji picker
CI / Build & Quality Checks (push) Successful in 10m23s

- MembersDrawer: show presence.status as small muted text below
  username in every member row (live via useUserPresence)
- UserHero/UserHeroName: accept optional status prop; render below
  the @username handle in user profile popouts
- UserRoomProfile: pass presence?.status down to UserHeroName
- Profile settings: new ProfileStatus tile below Display Name
  * Input with inline emoji picker (lazy-loaded EmojiBoard)
  * Cursor-aware emoji insertion (preserves caret position)
  * Save via mx.setPresence({ status_msg }) / Clear button
  * Pre-fills from current presence; syncs on remote update

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-05-27 12:39:51 -04:00
parent 1c6df604b1
commit c36401db7e
4 changed files with 186 additions and 3 deletions
+6 -1
View File
@@ -167,10 +167,15 @@ function MemberItem({
</>
}
>
<Box grow="Yes">
<Box grow="Yes" direction="Column">
<Text size="T400" truncate>
{name}
</Text>
{presence?.status && (
<Text size="T200" truncate style={{ opacity: 0.65 }}>
{presence.status}
</Text>
)}
</Box>
</MenuItem>
);