diff --git a/tools/chatgui-android/app/src/main/java/com/utun/chat/ui/screens/MemberListScreen.kt b/tools/chatgui-android/app/src/main/java/com/utun/chat/ui/screens/MemberListScreen.kt index 228c3731..a90ff4e4 100644 --- a/tools/chatgui-android/app/src/main/java/com/utun/chat/ui/screens/MemberListScreen.kt +++ b/tools/chatgui-android/app/src/main/java/com/utun/chat/ui/screens/MemberListScreen.kt @@ -109,7 +109,6 @@ fun MemberListScreen( onClick = { viewModel.showMemberDetail(channel.id, m.nodeId) }, onCall = { viewModel.startCall(channel.id, m.nodeId, m.name) }, onRadioCall = { com.utun.chat.data.RadioCallController.start(channel.id, m.nodeId) }, - onMessage = { viewModel.startDm(channel.id, m.nodeId, m.name) }, onRadioMute = { viewModel.toggleMemberRadioMute(channel.id, m.nodeId) } ) } @@ -130,6 +129,7 @@ fun MemberListScreen( canEdit = member != null, onFiles = { onFiles(detail.nodeId) }, onInvite = { viewModel.showPmInvite(detail.nodeId, member?.name ?: detail.name, channel.id) }, + onMessage = { viewModel.startDm(channel.id, detail.nodeId, member?.name ?: detail.name) }, onConnect = { Log.i("utun-gui", "Member detail connect: channel=${channel.id} node=${detail.nodeId}") viewModel.connectMemberNode(channel.id, detail.nodeId) @@ -184,7 +184,6 @@ private fun MemberListItem( onClick: () -> Unit, onCall: () -> Unit, onRadioCall: () -> Unit, - onMessage: () -> Unit, onRadioMute: () -> Unit ) { val onlineColor = when { @@ -283,9 +282,6 @@ private fun MemberListItem( IconButton(onClick = onCall, enabled = member.online, modifier = actionModifier) { Icon(Icons.Filled.Call, stringResource(R.string.call)) } - IconButton(onClick = onMessage, modifier = actionModifier) { - Icon(Icons.AutoMirrored.Filled.Message, stringResource(R.string.message)) - } } } } @@ -307,6 +303,7 @@ private fun MemberDetailCard( canEdit: Boolean, onFiles: () -> Unit, onInvite: () -> Unit, + onMessage: () -> Unit, onConnect: () -> Unit, onEdit: () -> Unit ) { @@ -401,10 +398,17 @@ private fun MemberDetailCard( } if (!isSelf) { - TextButton(onClick = onInvite) { - Icon(Icons.Filled.Add, stringResource(R.string.invite_to_group)) - Spacer(Modifier.width(4.dp)) - Text(stringResource(R.string.invite_to_group)) + Row(verticalAlignment = Alignment.CenterVertically) { + TextButton(onClick = onMessage) { + Icon(Icons.AutoMirrored.Filled.Message, stringResource(R.string.message)) + Spacer(Modifier.width(4.dp)) + Text(stringResource(R.string.message)) + } + TextButton(onClick = onInvite) { + Icon(Icons.Filled.Add, stringResource(R.string.invite_to_group)) + Spacer(Modifier.width(4.dp)) + Text(stringResource(R.string.invite_to_group)) + } } } Spacer(Modifier.height(4.dp)) diff --git a/tools/chatgui-android/app/src/main/res/values-ru/strings.xml b/tools/chatgui-android/app/src/main/res/values-ru/strings.xml index 4a61b21a..f47b8047 100644 --- a/tools/chatgui-android/app/src/main/res/values-ru/strings.xml +++ b/tools/chatgui-android/app/src/main/res/values-ru/strings.xml @@ -1,5 +1,19 @@ + Вызов по рации + Вызвать по рации + Входящий вызов по рации + Канал: %1$s + Проверяем доступность абонента… + Примите вызов, чтобы включить рацию канала + Идёт вызов… + Включаем рацию канала… + Вызов по рации отклонён + Абонент занят + Абонент недоступен + Нет ответа + Вызов отменён + Не удалось включить рацию канала Удалить переписку Удалить переписку с %1$s и её локальные файлы? У собеседника история сохранится. Не удалось удалить переписку. Повторите попытку. diff --git a/tools/chatgui-android/app/src/main/res/values/strings.xml b/tools/chatgui-android/app/src/main/res/values/strings.xml index 71d58845..e4e8699a 100644 --- a/tools/chatgui-android/app/src/main/res/values/strings.xml +++ b/tools/chatgui-android/app/src/main/res/values/strings.xml @@ -1,5 +1,19 @@ + Radio call + Call by radio + Incoming radio call + Channel: %1$s + Checking subscriber availability… + Accept to join the channel radio + Ringing… + Starting channel radio… + Radio call declined + Subscriber is busy + Subscriber is unavailable + No answer + Call cancelled + Could not start channel radio Delete conversation Delete the conversation with %1$s and its local files? The other person keeps their history. Could not delete the conversation. Please try again.