feat: Adjust keyboard handling in ChatDetailScreen to improve input experience
This commit is contained in:
@@ -838,7 +838,7 @@ fun ChatDetailScreen(
|
|||||||
enter = fadeIn(tween(200)) + slideInVertically(initialOffsetY = { it }),
|
enter = fadeIn(tween(200)) + slideInVertically(initialOffsetY = { it }),
|
||||||
exit = fadeOut(tween(150)) + slideOutVertically(targetOffsetY = { it })
|
exit = fadeOut(tween(150)) + slideOutVertically(targetOffsetY = { it })
|
||||||
) {
|
) {
|
||||||
Column(modifier = Modifier.imePadding()) {
|
Column {
|
||||||
// Input bar с встроенным reply preview (как в React Native)
|
// Input bar с встроенным reply preview (как в React Native)
|
||||||
MessageInputBar(
|
MessageInputBar(
|
||||||
value = inputText,
|
value = inputText,
|
||||||
@@ -892,7 +892,7 @@ fun ChatDetailScreen(
|
|||||||
enter = fadeIn(tween(200)) + slideInVertically(initialOffsetY = { it }),
|
enter = fadeIn(tween(200)) + slideInVertically(initialOffsetY = { it }),
|
||||||
exit = fadeOut(tween(150)) + slideOutVertically(targetOffsetY = { it })
|
exit = fadeOut(tween(150)) + slideOutVertically(targetOffsetY = { it })
|
||||||
) {
|
) {
|
||||||
Column(modifier = Modifier.imePadding()) {
|
Column {
|
||||||
// Плоский контейнер как у инпута
|
// Плоский контейнер как у инпута
|
||||||
Column(
|
Column(
|
||||||
modifier = Modifier
|
modifier = Modifier
|
||||||
@@ -998,6 +998,7 @@ fun ChatDetailScreen(
|
|||||||
modifier = Modifier
|
modifier = Modifier
|
||||||
.fillMaxSize()
|
.fillMaxSize()
|
||||||
.padding(top = paddingValues.calculateTopPadding())
|
.padding(top = paddingValues.calculateTopPadding())
|
||||||
|
.imePadding() // 🔥 Поднимаем весь контент над клавиатурой
|
||||||
.background(backgroundColor)
|
.background(backgroundColor)
|
||||||
) {
|
) {
|
||||||
// Список сообщений - занимает всё доступное место
|
// Список сообщений - занимает всё доступное место
|
||||||
|
|||||||
Reference in New Issue
Block a user