From f82e721491ad8791548b6ee25cb853d2db61ae1b Mon Sep 17 00:00:00 2001 From: Jannis Braun <151788261+TheZwiss@users.noreply.github.com> Date: Tue, 10 Mar 2026 23:21:37 +0100 Subject: [PATCH] fix: perfect speaking ring circle and use real avatars/display names in voice tiles Add flex to speaking ring wrapper divs in VoiceUser and PictureInPicture to eliminate baseline descender space that made the ring oval. Extract useVoiceParticipantMeta hook to resolve real display names and avatars for voice participants instead of showing raw usernames with null avatars. --- .../src/components/voice/PictureInPicture.tsx | 2 +- .../web/src/components/voice/StreamTile.tsx | 8 ++-- .../web/src/components/voice/VoiceUser.tsx | 10 +++-- .../web/src/hooks/useVoiceParticipantMeta.ts | 43 +++++++++++++++++++ 4 files changed, 55 insertions(+), 8 deletions(-) create mode 100644 packages/web/src/hooks/useVoiceParticipantMeta.ts diff --git a/packages/web/src/components/voice/PictureInPicture.tsx b/packages/web/src/components/voice/PictureInPicture.tsx index 6902a5da..6c832f3b 100644 --- a/packages/web/src/components/voice/PictureInPicture.tsx +++ b/packages/web/src/components/voice/PictureInPicture.tsx @@ -347,7 +347,7 @@ export function PictureInPicture() { ) : (
{displayParticipant ? ( -
+
- +

- {participant.username} is streaming + {displayName} is streaming

{!isLocal && (