feat: Replace Text with AppleEmojiText for reply previews and message input for enhanced emoji support
This commit is contained in:
@@ -288,15 +288,9 @@ fun ChatDetailScreen(
|
||||
var selectedMessages by remember { mutableStateOf<Set<String>>(emptySet()) }
|
||||
val isSelectionMode = selectedMessages.isNotEmpty()
|
||||
|
||||
// 🔥 Быстрое закрытие - СНАЧАЛА скрываем клавиатуру, ПОТОМ выходим
|
||||
// 🔥 Простое закрытие
|
||||
val hideKeyboardAndBack: () -> Unit = {
|
||||
// 1. Убираем фокус (это важно сделать первым!)
|
||||
focusManager.clearFocus(force = true)
|
||||
|
||||
// 2. Мгновенное синхронное скрытие клавиатуры через InputMethodManager
|
||||
keyboard.hideNow()
|
||||
|
||||
// 3. Теперь выходим - клавиатура уже скрыта
|
||||
keyboard.hide()
|
||||
onBack()
|
||||
}
|
||||
|
||||
@@ -377,13 +371,9 @@ fun ChatDetailScreen(
|
||||
// 🔥 Обработка системной кнопки назад
|
||||
BackHandler { hideKeyboardAndBack() }
|
||||
|
||||
// 🔥 Cleanup при выходе из экрана
|
||||
// 🔥 Cleanup при выходе из экрана - только закрываем диалог
|
||||
DisposableEffect(Unit) {
|
||||
onDispose {
|
||||
// Скрываем клавиатуру синхронно (backup если не скрыли раньше)
|
||||
focusManager.clearFocus(force = true)
|
||||
keyboard.hideNow()
|
||||
// 🔥 Закрываем диалог - сообщения больше не будут читаться автоматически
|
||||
viewModel.closeDialog()
|
||||
}
|
||||
}
|
||||
@@ -2079,6 +2069,7 @@ private fun MessageInputBar(
|
||||
maxLines = 1
|
||||
)
|
||||
Spacer(modifier = Modifier.height(2.dp))
|
||||
// Превью ответа
|
||||
Text(
|
||||
text = if (replyMessages.size == 1) {
|
||||
val msg = replyMessages.first()
|
||||
|
||||
Reference in New Issue
Block a user