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 d5fdab900a..999746f0ea 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
@@ -192,15 +192,25 @@ private fun PLayersAndSettings(
MenuSpacer()
- PlayersTable(
- rows = buildList {
- add(listOf("Player", "Ping", "Mapping"))
- addAll(players.map { listOf(it.name, it.ping.toString(), it.mapping) })
- repeat(4 - players.size) { add(listOf("", "", "")) }
- },
- modifier = Modifier
- .fillMaxWidth()
- )
+ OutlinedBox(
+ label = { Text(stringResource(R.string.netplay_players_label)) },
+ ) {
+ PlayersTable(
+ rows = buildList {
+ add(
+ listOf(
+ stringResource(R.string.netplay_players_name),
+ stringResource(R.string.netplay_players_ping),
+ stringResource(R.string.netplay_players_mapping),
+ )
+ )
+ addAll(players.map { listOf(it.name, it.ping.toString(), it.mapping) })
+ repeat(4 - players.size) { add(listOf("", "", "")) }
+ },
+ modifier = Modifier
+ .fillMaxWidth()
+ )
+ }
}
}
diff --git a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/ui/theme/DolphinTheme.kt b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/ui/theme/DolphinTheme.kt
index d24b3d834f..cf768e6dc0 100644
--- a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/ui/theme/DolphinTheme.kt
+++ b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/ui/theme/DolphinTheme.kt
@@ -135,9 +135,10 @@ fun MenuSpacer() = Spacer(modifier = Modifier.height(16.dp))
@OptIn(ExperimentalMaterial3Api::class)
@Composable
fun OutlinedBox(
- onClick: () -> Unit,
label: @Composable () -> Unit,
modifier: Modifier = Modifier,
+ onClick: (() -> Unit)? = null,
+ fadeContentTop: Boolean = false,
content: @Composable () -> Unit,
) {
Box(
@@ -153,24 +154,30 @@ fun OutlinedBox(
.fillMaxSize()
) {
content()
- Box(
- modifier = Modifier
- .fillMaxWidth()
- .height(16.dp)
- .background(
- Brush.verticalGradient(
- colors = listOf(
- MaterialTheme.colorScheme.surface,
- Color.Transparent
+ if (fadeContentTop) {
+ Box(
+ modifier = Modifier
+ .fillMaxWidth()
+ .height(16.dp)
+ .background(
+ Brush.verticalGradient(
+ colors = listOf(
+ MaterialTheme.colorScheme.surface,
+ Color.Transparent
+ )
)
)
- )
- )
+ )
+ }
}
},
enabled = true,
singleLine = false,
- contentPadding = OutlinedTextFieldDefaults.contentPadding(top = 0.dp),
+ contentPadding = if (fadeContentTop) {
+ OutlinedTextFieldDefaults.contentPadding(top = 0.dp)
+ } else {
+ OutlinedTextFieldDefaults.contentPadding()
+ },
visualTransformation = VisualTransformation.None,
interactionSource = interactionSource,
label = { label() },
@@ -183,15 +190,17 @@ fun OutlinedBox(
)
}
)
- Box(
- modifier = Modifier
- .fillMaxSize()
- .clip(MaterialTheme.shapes.extraSmall)
- .clickable(
- interactionSource = interactionSource,
- indication = LocalIndication.current,
- onClick = onClick,
- )
- )
+ if (onClick != null) {
+ Box(
+ modifier = Modifier
+ .fillMaxSize()
+ .clip(MaterialTheme.shapes.extraSmall)
+ .clickable(
+ interactionSource = interactionSource,
+ indication = LocalIndication.current,
+ onClick = onClick,
+ )
+ )
+ }
}
}
diff --git a/Source/Android/app/src/main/res/values/strings.xml b/Source/Android/app/src/main/res/values/strings.xml
index fa2d588652..8383824940 100644
--- a/Source/Android/app/src/main/res/values/strings.xml
+++ b/Source/Android/app/src/main/res/values/strings.xml
@@ -1003,4 +1003,8 @@ It can efficiently compress both junk data and encrypted Wii data.
Buffer size changed to %1$d
"Host input authority %1$s"
Game
+ Players
+ Name
+ Ping
+ Mapping