diff --git a/composeApp/src/commonMain/composeResources/values/strings.xml b/composeApp/src/commonMain/composeResources/values/strings.xml
index 2fbae5e0..364d2231 100644
--- a/composeApp/src/commonMain/composeResources/values/strings.xml
+++ b/composeApp/src/commonMain/composeResources/values/strings.xml
@@ -319,6 +319,8 @@
Password (optional)
Client ID prefix
Used to identify this Spotube instance
+ Participant name
+ Your display name in jam rooms
Encrypt the broker connection
Check the current broker settings before starting a room.
Test connection
diff --git a/composeApp/src/commonMain/kotlin/org/spotube/spotube/modules/settings/JamSettingsScreen.kt b/composeApp/src/commonMain/kotlin/org/spotube/spotube/modules/settings/JamSettingsScreen.kt
index 0643cb4b..ac107939 100644
--- a/composeApp/src/commonMain/kotlin/org/spotube/spotube/modules/settings/JamSettingsScreen.kt
+++ b/composeApp/src/commonMain/kotlin/org/spotube/spotube/modules/settings/JamSettingsScreen.kt
@@ -58,6 +58,8 @@ import spotube.composeapp.generated.resources.settings_jam_broker_content_descri
import spotube.composeapp.generated.resources.settings_jam_broker_username_placeholder
import spotube.composeapp.generated.resources.settings_jam_broker_test_fail
import spotube.composeapp.generated.resources.jam_error_connection_failed
+import spotube.composeapp.generated.resources.settings_jam_participant_name
+import spotube.composeapp.generated.resources.settings_jam_participant_name_placeholder
@Composable
fun JamSettingsScreen(
@@ -197,6 +199,23 @@ internal fun JamSettingsContent(
settingsSectionHeader(Res.string.settings_jam_section_identity)
settingsSectionCard(
items = listOf(
+ {
+ TextInputSettingCard(
+ title = stringResource(Res.string.settings_jam_participant_name),
+ value = uiState.settings.jamParticipantName,
+ placeholder = stringResource(Res.string.settings_jam_participant_name_placeholder),
+ onValueSaved = { name ->
+ viewModel.update {
+ copy(jamParticipantName = name)
+ }
+ },
+ icon = {
+ SettingsItemIcon(
+ Iconsax.User,
+ stringResource(Res.string.settings_jam_participant_name)
+ )
+ })
+ },
{
TextInputSettingCard(
title = stringResource(Res.string.settings_jam_broker_client_id),
@@ -260,4 +279,4 @@ internal fun JamSettingsContent(
}
}
}
-}
+}
\ No newline at end of file