diff options
| author | Tom Pratt <tom.pratt@outlook.com> | 2026-05-12 16:13:05 -0700 |
|---|---|---|
| committer | Tom Pratt <tom.pratt@outlook.com> | 2026-07-07 23:26:06 +0200 |
| commit | 11cf49de069621d43b6cef47017ef4279efec637 (patch) | |
| tree | aa12321b7f87839f05c8964ef6f168df5a417528 | |
| parent | 774200dcf4ccea148ef357cc8cf86d8eab4446da (diff) | |
Android: Coloured netplay chat messages
| -rw-r--r-- | Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/netplay/ui/NetplayScreen.kt | 21 |
1 files changed, 20 insertions, 1 deletions
diff --git a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/netplay/ui/NetplayScreen.kt b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/netplay/ui/NetplayScreen.kt index 54ea403eeb..d3a05d3fcf 100644 --- a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/netplay/ui/NetplayScreen.kt +++ b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/netplay/ui/NetplayScreen.kt @@ -4,6 +4,7 @@ package org.dolphinemu.dolphinemu.features.netplay.ui import android.content.Intent import android.content.res.Configuration +import androidx.compose.foundation.isSystemInDarkTheme import androidx.compose.foundation.layout.Arrangement import androidx.compose.foundation.layout.Box import androidx.compose.foundation.layout.BoxWithConstraints @@ -87,6 +88,7 @@ import androidx.compose.ui.text.style.TextAlign import androidx.compose.ui.text.style.TextOverflow import androidx.compose.ui.tooling.preview.Preview import androidx.compose.ui.unit.dp +import androidx.compose.ui.graphics.Color import androidx.compose.ui.unit.sp import androidx.window.core.layout.WindowSizeClass import coil.compose.AsyncImage @@ -588,8 +590,10 @@ private fun Chat( fun LazyListScope.messages() { items(messages.size) { index -> + val message = messages[index] Text( - text = messages[index].message(context), + text = message.message(context), + color = message.color(), style = MaterialTheme.typography.bodyMedium.copy(lineHeight = 18.sp), modifier = Modifier .fillMaxWidth() @@ -1265,6 +1269,21 @@ private fun GameDigestPlayerRow( } } +@Composable +private fun NetplayMessage.color(): Color { + val isDark = isSystemInDarkTheme() + return when (this) { + is NetplayMessage.Chat -> Color.Unspecified + is NetplayMessage.GameChanged -> if (isDark) Color(0xFFCE93D8) else Color(0xFF8E24AA) + is NetplayMessage.HostInputAuthorityChanged -> if (isDark) Color(0xFF90CAF9) else Color( + 0xFF1565C0 + ) + + is NetplayMessage.BufferChanged -> if (isDark) Color(0xFF80CBC4) else Color(0xFF00897B) + is NetplayMessage.Desync -> if (isDark) Color(0xFFEF9A9A) else Color(0xFFC62828) + } +} + @Preview @Composable private fun NetplayScreenPreview() { |
