feat: Update header icon color based on theme and adjust message bubble colors for better visibility
This commit is contained in:
@@ -199,6 +199,8 @@ fun ChatDetailScreen(
|
|||||||
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(0xFF666666)
|
val secondaryTextColor = if (isDarkTheme) Color(0xFF8E8E93) else Color(0xFF666666)
|
||||||
val inputBackgroundColor = if (isDarkTheme) Color(0xFF2A2A2A) else Color(0xFFF2F3F5)
|
val inputBackgroundColor = if (isDarkTheme) Color(0xFF2A2A2A) else Color(0xFFF2F3F5)
|
||||||
|
// Цвет иконок в хедере - синий как в React Native
|
||||||
|
val headerIconColor = if (isDarkTheme) Color.White else PrimaryBlue
|
||||||
|
|
||||||
// <20> Fade-in анимация для всего экрана
|
// <20> Fade-in анимация для всего экрана
|
||||||
var isVisible by remember { mutableStateOf(false) }
|
var isVisible by remember { mutableStateOf(false) }
|
||||||
@@ -498,7 +500,7 @@ fun ChatDetailScreen(
|
|||||||
Icon(
|
Icon(
|
||||||
Icons.Default.ArrowBack,
|
Icons.Default.ArrowBack,
|
||||||
contentDescription = "Back",
|
contentDescription = "Back",
|
||||||
tint = textColor
|
tint = headerIconColor
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -595,7 +597,7 @@ fun ChatDetailScreen(
|
|||||||
Icon(
|
Icon(
|
||||||
Icons.Default.Call,
|
Icons.Default.Call,
|
||||||
contentDescription = "Call",
|
contentDescription = "Call",
|
||||||
tint = textColor
|
tint = headerIconColor
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -612,7 +614,7 @@ fun ChatDetailScreen(
|
|||||||
Icon(
|
Icon(
|
||||||
Icons.Default.MoreVert,
|
Icons.Default.MoreVert,
|
||||||
contentDescription = "More",
|
contentDescription = "More",
|
||||||
tint = textColor
|
tint = headerIconColor
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -866,6 +868,8 @@ fun ChatDetailScreen(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// TODO: Временно отключена кнопка скролла вниз
|
||||||
|
/*
|
||||||
// Telegram-style "Scroll to Bottom" кнопка - Liquid Glass стиль
|
// Telegram-style "Scroll to Bottom" кнопка - Liquid Glass стиль
|
||||||
// Не показываем при отправке сообщения (чтобы не мигала)
|
// Не показываем при отправке сообщения (чтобы не мигала)
|
||||||
if (!isAtBottom && messages.isNotEmpty() && !isSendingMessage) {
|
if (!isAtBottom && messages.isNotEmpty() && !isSendingMessage) {
|
||||||
@@ -938,6 +942,7 @@ fun ChatDetailScreen(
|
|||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
*/
|
||||||
}
|
}
|
||||||
|
|
||||||
// 🔥 FLOATING INPUT BAR - плавает поверх сообщений, поднимается с клавиатурой
|
// 🔥 FLOATING INPUT BAR - плавает поверх сообщений, поднимается с клавиатурой
|
||||||
@@ -1372,12 +1377,13 @@ private fun MessageBubble(
|
|||||||
label = "selectionAlpha"
|
label = "selectionAlpha"
|
||||||
)
|
)
|
||||||
|
|
||||||
// Telegram colors
|
// Telegram colors (как в React Native themes.ts и Архив)
|
||||||
val bubbleColor =
|
val bubbleColor =
|
||||||
if (message.isOutgoing) {
|
if (message.isOutgoing) {
|
||||||
PrimaryBlue
|
PrimaryBlue
|
||||||
} else {
|
} else {
|
||||||
if (isDarkTheme) Color(0xFF212121) else Color(0xFFFFFFFF)
|
// Входящие: серый фон чтобы выделялись на белом фоне экрана (как в Архиве)
|
||||||
|
if (isDarkTheme) Color(0xFF212121) else Color(0xFFF5F5F5)
|
||||||
}
|
}
|
||||||
val textColor =
|
val textColor =
|
||||||
if (message.isOutgoing) Color.White
|
if (message.isOutgoing) Color.White
|
||||||
|
|||||||
Reference in New Issue
Block a user