Белый цвет даты и пустого стейта при обоях, фикс обрезки имени в группах
- dateHeader и empty state текст белые при тёмной теме или обоях - Увеличена минимальная ширина бабла для групповых сообщений - Медиа-бабл расширяется для имени отправителя в группе Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -210,7 +210,7 @@ fun ChatDetailScreen(
|
|||||||
val chatWallpaperResId = remember(chatWallpaperId) { ThemeWallpapers.drawableResOrNull(chatWallpaperId) }
|
val chatWallpaperResId = remember(chatWallpaperId) { ThemeWallpapers.drawableResOrNull(chatWallpaperId) }
|
||||||
val textColor = if (isDarkTheme) Color.White else Color.Black
|
val textColor = if (isDarkTheme) Color.White else Color.Black
|
||||||
val secondaryTextColor = if (isDarkTheme) Color(0xFF8E8E93) else Color(0xFF8E8E93)
|
val secondaryTextColor = if (isDarkTheme) Color(0xFF8E8E93) else Color(0xFF8E8E93)
|
||||||
val dateHeaderTextColor = if (isDarkTheme) Color.White else secondaryTextColor
|
val dateHeaderTextColor = if (isDarkTheme || chatWallpaperResId != null) Color.White else secondaryTextColor
|
||||||
val headerIconColor = Color.White
|
val headerIconColor = Color.White
|
||||||
|
|
||||||
// 🔥 Keyboard & Emoji Coordinator
|
// 🔥 Keyboard & Emoji Coordinator
|
||||||
@@ -2399,7 +2399,7 @@ fun ChatDetailScreen(
|
|||||||
"No messages yet",
|
"No messages yet",
|
||||||
fontSize = 16.sp,
|
fontSize = 16.sp,
|
||||||
color =
|
color =
|
||||||
secondaryTextColor,
|
dateHeaderTextColor,
|
||||||
fontWeight =
|
fontWeight =
|
||||||
FontWeight
|
FontWeight
|
||||||
.Medium
|
.Medium
|
||||||
@@ -2419,7 +2419,7 @@ fun ChatDetailScreen(
|
|||||||
"Send a message to start the conversation",
|
"Send a message to start the conversation",
|
||||||
fontSize = 14.sp,
|
fontSize = 14.sp,
|
||||||
color =
|
color =
|
||||||
secondaryTextColor
|
dateHeaderTextColor
|
||||||
.copy(
|
.copy(
|
||||||
alpha =
|
alpha =
|
||||||
0.7f
|
0.7f
|
||||||
|
|||||||
@@ -752,18 +752,23 @@ fun MessageBubble(
|
|||||||
280.dp
|
280.dp
|
||||||
}
|
}
|
||||||
|
|
||||||
|
val hasGroupSenderName = showGroupSenderLabel && !message.isOutgoing && senderName.isNotBlank()
|
||||||
val bubbleWidthModifier =
|
val bubbleWidthModifier =
|
||||||
if (isSafeSystemMessage) {
|
if (isSafeSystemMessage) {
|
||||||
Modifier.widthIn(min = 220.dp, max = 320.dp)
|
Modifier.widthIn(min = 220.dp, max = 320.dp)
|
||||||
} else if (isStandaloneGroupInvite) {
|
} else if (isStandaloneGroupInvite) {
|
||||||
Modifier.widthIn(min = 180.dp, max = 260.dp)
|
Modifier.widthIn(min = 180.dp, max = 260.dp)
|
||||||
} else if (hasImageWithCaption || hasOnlyMedia) {
|
} else if (hasImageWithCaption || hasOnlyMedia) {
|
||||||
|
if (hasGroupSenderName) {
|
||||||
|
Modifier.widthIn(min = photoWidth)
|
||||||
|
} else {
|
||||||
Modifier.width(
|
Modifier.width(
|
||||||
photoWidth
|
photoWidth
|
||||||
) // 🔥 Фиксированная ширина = размер фото (убирает лишний
|
) // 🔥 Фиксированная ширина = размер фото (убирает лишний
|
||||||
// отступ)
|
// отступ)
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
Modifier.widthIn(min = 60.dp, max = 280.dp)
|
Modifier.widthIn(min = if (hasGroupSenderName) 120.dp else 60.dp, max = 280.dp)
|
||||||
}
|
}
|
||||||
|
|
||||||
Box(
|
Box(
|
||||||
|
|||||||
Reference in New Issue
Block a user