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