From 1e5bbf38b920aaaa0bd4043d7c34336bc7326613 Mon Sep 17 00:00:00 2001 From: Bruno Deanoz Date: Wed, 24 Jun 2026 12:09:17 +0200 Subject: [PATCH] fix Live Call overlay: opaque MeshBackground instead of transparent scrim The overlay used a semi-transparent Color.White/Black scrim (alpha 0.85-0.88), letting the chat content bleed through. Replaced with MeshBackground (frozen blobs, no animation) for a proper opaque fullscreen call UI. --- .../dev/kaizen/app/live/LiveCallOverlay.kt | 29 +++++++++---------- 1 file changed, 14 insertions(+), 15 deletions(-) diff --git a/app/src/main/java/dev/kaizen/app/live/LiveCallOverlay.kt b/app/src/main/java/dev/kaizen/app/live/LiveCallOverlay.kt index d1370cb..659aba6 100644 --- a/app/src/main/java/dev/kaizen/app/live/LiveCallOverlay.kt +++ b/app/src/main/java/dev/kaizen/app/live/LiveCallOverlay.kt @@ -27,6 +27,7 @@ import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.sp import dev.kaizen.app.R import dev.kaizen.app.chat.KaizenOrb +import dev.kaizen.app.chat.MeshBackground import dev.kaizen.app.ui.effect.GlassSurface import dev.kaizen.app.ui.effect.KaizenShadows import dev.kaizen.app.ui.icon.KaizenIcons @@ -48,22 +49,19 @@ fun LiveCallOverlay( val accent = LocalKaizenAccent.current val cs = MaterialTheme.colorScheme - Box( - modifier - .fillMaxSize() - .background( - if (isDark) Color.Black.copy(alpha = 0.85f) - else Color.White.copy(alpha = 0.88f) - ) - .statusBarsPadding() - .navigationBarsPadding(), - contentAlignment = Alignment.Center, - ) { - Column( - horizontalAlignment = Alignment.CenterHorizontally, - verticalArrangement = Arrangement.spacedBy(24.dp), - modifier = Modifier.fillMaxWidth().padding(horizontal = 32.dp), + MeshBackground(animateBlobs = false) { + Box( + modifier + .fillMaxSize() + .statusBarsPadding() + .navigationBarsPadding(), + contentAlignment = Alignment.Center, ) { + Column( + horizontalAlignment = Alignment.CenterHorizontally, + verticalArrangement = Arrangement.spacedBy(24.dp), + modifier = Modifier.fillMaxWidth().padding(horizontal = 32.dp), + ) { // ─── Duration ───────────────────────────────────────── val elapsed = elapsedMs / 1000 val min = elapsed / 60 @@ -146,6 +144,7 @@ fun LiveCallOverlay( // ─── End Call button ────────────────────────────────── EndCallButton(onClick = onEndCall) } + } } }