diff --git a/app/src/main/java/com/rosetta/messenger/ui/chats/ChatDetailScreen.kt b/app/src/main/java/com/rosetta/messenger/ui/chats/ChatDetailScreen.kt index c51c680..099ae69 100644 --- a/app/src/main/java/com/rosetta/messenger/ui/chats/ChatDetailScreen.kt +++ b/app/src/main/java/com/rosetta/messenger/ui/chats/ChatDetailScreen.kt @@ -1761,95 +1761,25 @@ private fun MessageInputBar( } } // End of else (not blocked) - // ๐Ÿ”ฅ TELEGRAM-STYLE EMOJI PICKER - ั„ะธะบัะธั€ะพะฒะฐะฝะฝะฐั ะฒั‹ัะพั‚ะฐ ะบะฐะบ ัƒ ะบะปะฐะฒะธะฐั‚ัƒั€ั‹ + // ๐Ÿ”ฅ APPLE EMOJI PICKER - ั ะบะฐั‚ะตะณะพั€ะธัะผะธ ะธ ั„ะพะฝะพะฒะพะน ะทะฐะณั€ัƒะทะบะพะน if (!isBlocked) { - // ะŸะพะบะฐะทั‹ะฒะฐะตะผ ะบะพะณะดะฐ showEmojiPicker = true ะ˜ะ›ะ˜ ะบะพะณะดะฐ ะบะปะฐะฒะธะฐั‚ัƒั€ะฐ ะทะฐะบั€ั‹ะฒะฐะตั‚ัั - // ะญั‚ะพ ะฟั€ะตะดะพั‚ะฒั€ะฐั‰ะฐะตั‚ ะฟั€ั‹ะถะพะบ ะธะฝะฟัƒั‚ะฐ - val shouldShowEmojiSpace = showEmojiPicker || (isKeyboardVisible && showEmojiPicker) - AnimatedVisibility( visible = showEmojiPicker, enter = fadeIn(tween(150)), exit = fadeOut(tween(100)) ) { - // Telegram-style simple emoji grid - ะฒั‹ัะพั‚ะฐ = ะฒั‹ัะพั‚ะฐ ะบะปะฐะฒะธะฐั‚ัƒั€ั‹ - Column( + AppleEmojiPickerPanel( + isDarkTheme = isDarkTheme, + onEmojiSelected = { emoji -> + onValueChange(value + emoji) + }, + onClose = { + showEmojiPicker = false + }, modifier = Modifier .fillMaxWidth() - .height(emojiPanelHeight) // ๐Ÿ”ฅ ะ”ะธะฝะฐะผะธั‡ะตัะบะฐั ะฒั‹ัะพั‚ะฐ - .background(if (isDarkTheme) Color(0xFF1C1C1E) else Color(0xFFF2F2F7)) - ) { - // ะขะพะฟ ะฑะฐั€ ั ะบะฝะพะฟะบะพะน ะทะฐะบั€ั‹ั‚ะธั (ะบะฐะบ ะฒ Telegram) - Row( - modifier = Modifier - .fillMaxWidth() - .padding(horizontal = 8.dp, vertical = 4.dp), - horizontalArrangement = Arrangement.End - ) { - IconButton( - onClick = { - showEmojiPicker = false - } - ) { - Icon( - Icons.Default.KeyboardArrowDown, - contentDescription = "Close", - tint = if (isDarkTheme) Color(0xFF8E8E93) else Color(0xFF8E8E93) - ) - } - } - - // ะŸั€ะพัั‚ะฐั ัะตั‚ะบะฐ ัะผะพะดะทะธ (ัะฐะผั‹ะต ะฟะพะฟัƒะปัั€ะฝั‹ะต) - val emojis = remember { - listOf( - "๐Ÿ˜€", "๐Ÿ˜ƒ", "๐Ÿ˜„", "๐Ÿ˜", "๐Ÿ˜†", "๐Ÿ˜…", "๐Ÿคฃ", "๐Ÿ˜‚", - "๐Ÿ™‚", "๐Ÿ™ƒ", "๐Ÿ˜‰", "๐Ÿ˜Š", "๐Ÿ˜‡", "๐Ÿฅฐ", "๐Ÿ˜", "๐Ÿคฉ", - "๐Ÿ˜˜", "๐Ÿ˜—", "๐Ÿ˜š", "๐Ÿ˜™", "๐Ÿ˜‹", "๐Ÿ˜›", "๐Ÿ˜œ", "๐Ÿคช", - "๐Ÿ˜", "๐Ÿค‘", "๐Ÿค—", "๐Ÿคญ", "๐Ÿคซ", "๐Ÿค”", "๐Ÿค", "๐Ÿคจ", - "๐Ÿ˜", "๐Ÿ˜‘", "๐Ÿ˜ถ", "๐Ÿ˜", "๐Ÿ˜’", "๐Ÿ™„", "๐Ÿ˜ฌ", "๐Ÿคฅ", - "๐Ÿ˜Œ", "๐Ÿ˜”", "๐Ÿ˜ช", "๐Ÿคค", "๐Ÿ˜ด", "๐Ÿ˜ท", "๐Ÿค’", "๐Ÿค•", - "๐Ÿคข", "๐Ÿคฎ", "๐Ÿคง", "๐Ÿฅต", "๐Ÿฅถ", "๐Ÿ˜ถ", "๐Ÿ˜ต", "๐Ÿคฏ", - "๐Ÿค ", "๐Ÿฅณ", "๐Ÿ˜Ž", "๐Ÿค“", "๐Ÿง", "๐Ÿ˜•", "๐Ÿ˜Ÿ", "๐Ÿ™", - "โ˜น๏ธ", "๐Ÿ˜ฎ", "๐Ÿ˜ฏ", "๐Ÿ˜ฒ", "๐Ÿ˜ณ", "๐Ÿฅบ", "๐Ÿ˜ฆ", "๐Ÿ˜ง", - "๐Ÿ˜จ", "๐Ÿ˜ฐ", "๐Ÿ˜ฅ", "๐Ÿ˜ข", "๐Ÿ˜ญ", "๐Ÿ˜ฑ", "๐Ÿ˜–", "๐Ÿ˜ฃ", - "๐Ÿ˜ž", "๐Ÿ˜“", "๐Ÿ˜ฉ", "๐Ÿ˜ซ", "๐Ÿฅฑ", "๐Ÿ˜ค", "๐Ÿ˜ก", "๐Ÿ˜ ", - "๐Ÿคฌ", "๐Ÿ˜ˆ", "๐Ÿ‘ฟ", "๐Ÿ’€", "โ˜ ๏ธ", "๐Ÿ’ฉ", "๐Ÿคก", "๐Ÿ‘น", - "๐Ÿ‘บ", "๐Ÿ‘ป", "๐Ÿ‘ฝ", "๐Ÿ‘พ", "๐Ÿค–", "๐Ÿ˜บ", "๐Ÿ˜ธ", "๐Ÿ˜น", - "๐Ÿ˜ป", "๐Ÿ˜ผ", "๐Ÿ˜ฝ", "๐Ÿ™€", "๐Ÿ˜ฟ", "๐Ÿ˜พ", "โค๏ธ", "๐Ÿงก", - "๐Ÿ’›", "๐Ÿ’š", "๐Ÿ’™", "๐Ÿ’œ", "๐Ÿ–ค", "๐Ÿค", "๐ŸคŽ", "๐Ÿ’”", - "โฃ๏ธ", "๐Ÿ’•", "๐Ÿ’ž", "๐Ÿ’“", "๐Ÿ’—", "๐Ÿ’–", "๐Ÿ’˜", "๐Ÿ’", - "๐Ÿ‘‹", "๐Ÿคš", "๐Ÿ–", "โœ‹", "๐Ÿ––", "๐Ÿ‘Œ", "๐Ÿค", "โœŒ๏ธ", - "๐Ÿคž", "๐ŸคŸ", "๐Ÿค˜", "๐Ÿค™", "๐Ÿ‘ˆ", "๐Ÿ‘‰", "๐Ÿ‘†", "๐Ÿ–•", - "๐Ÿ‘‡", "โ˜๏ธ", "๐Ÿ‘", "๐Ÿ‘Ž", "โœŠ", "๐Ÿ‘Š", "๐Ÿค›", "๐Ÿคœ", - "๐Ÿ‘", "๐Ÿ™Œ", "๐Ÿ‘", "๐Ÿคฒ", "๐Ÿค", "๐Ÿ™", "โœ๏ธ", "๐Ÿ’…" - ) - } - - LazyVerticalGrid( - columns = GridCells.Fixed(8), - modifier = Modifier - .fillMaxSize() - .padding(horizontal = 4.dp), - contentPadding = PaddingValues(vertical = 8.dp) - ) { - items(emojis) { emoji -> - Box( - modifier = Modifier - .aspectRatio(1f) - .clickable { - onValueChange(value + emoji) - } - .padding(2.dp), - contentAlignment = Alignment.Center - ) { - Text( - text = emoji, - fontSize = 28.sp - ) - } - } - } - } + .height(emojiPanelHeight) + ) } } // End of if (!isBlocked) for emoji picker }