bottombar: убрана зелёная подложка под активной кнопкой
Фон кнопок всегда нейтральный (0x99FFFFFF); убраны highlight-подложка, BottomBarHighlightBrush и параметр highlighted слота. Зелёные варианты иконок чатов/бургера (при открытии) — это иконка, остаются.
This commit is contained in:
+2
-18
@@ -47,9 +47,6 @@ private val BottomBarButtonShape = RoundedCornerShape(100.dp)
|
|||||||
private val BottomBarBorderBrush = Brush.linearGradient(
|
private val BottomBarBorderBrush = Brush.linearGradient(
|
||||||
listOf(Color(0x33C0FF7B), Color(0x3370B62B)),
|
listOf(Color(0x33C0FF7B), Color(0x3370B62B)),
|
||||||
)
|
)
|
||||||
private val BottomBarHighlightBrush = Brush.linearGradient(
|
|
||||||
listOf(Color(0x33C0FF7B), Color(0x3370B62B)),
|
|
||||||
)
|
|
||||||
|
|
||||||
@Composable
|
@Composable
|
||||||
fun F7MobileBottomBar(
|
fun F7MobileBottomBar(
|
||||||
@@ -92,34 +89,29 @@ fun F7MobileBottomBar(
|
|||||||
"$base/themes/forbion/images/header/chat-icon-gray.svg"
|
"$base/themes/forbion/images/header/chat-icon-gray.svg"
|
||||||
},
|
},
|
||||||
contentDescription = "Чаты",
|
contentDescription = "Чаты",
|
||||||
highlighted = chatsHighlighted,
|
|
||||||
onClick = actions.onChatsClick,
|
onClick = actions.onChatsClick,
|
||||||
)
|
)
|
||||||
F7BottomBarSlot.NavBack -> F7BottomBarIconSlot(
|
F7BottomBarSlot.NavBack -> F7BottomBarIconSlot(
|
||||||
iconUrl = "$base/themes/forbion/images/header/sidebar-chevron-left.svg",
|
iconUrl = "$base/themes/forbion/images/header/sidebar-chevron-left.svg",
|
||||||
contentDescription = "Папки",
|
contentDescription = "Папки",
|
||||||
highlighted = navBackHighlighted,
|
|
||||||
iconRotation = if (navBackHighlighted) 180f else 0f,
|
iconRotation = if (navBackHighlighted) 180f else 0f,
|
||||||
onClick = actions.onNavBackClick,
|
onClick = actions.onNavBackClick,
|
||||||
)
|
)
|
||||||
F7BottomBarSlot.SectionMail -> F7BottomBarIconSlot(
|
F7BottomBarSlot.SectionMail -> F7BottomBarIconSlot(
|
||||||
iconUrl = "$base/themes/forbion/images/header/mail-header-icon.svg",
|
iconUrl = "$base/themes/forbion/images/header/mail-header-icon.svg",
|
||||||
contentDescription = "Почта",
|
contentDescription = "Почта",
|
||||||
highlighted = activeTabKey == "Mail",
|
|
||||||
iconSize = BottomBarSectionIconSize,
|
iconSize = BottomBarSectionIconSize,
|
||||||
onClick = actions.onMailClick,
|
onClick = actions.onMailClick,
|
||||||
)
|
)
|
||||||
F7BottomBarSlot.SectionCards -> F7BottomBarIconSlot(
|
F7BottomBarSlot.SectionCards -> F7BottomBarIconSlot(
|
||||||
iconUrl = "$base/themes/forbion/images/header/deck-header-icon.svg",
|
iconUrl = "$base/themes/forbion/images/header/deck-header-icon.svg",
|
||||||
contentDescription = "Карточки",
|
contentDescription = "Карточки",
|
||||||
highlighted = activeTabKey == "Deck",
|
|
||||||
iconSize = BottomBarSectionIconSize,
|
iconSize = BottomBarSectionIconSize,
|
||||||
onClick = actions.onCardsClick,
|
onClick = actions.onCardsClick,
|
||||||
)
|
)
|
||||||
F7BottomBarSlot.SectionConferences -> F7BottomBarIconSlot(
|
F7BottomBarSlot.SectionConferences -> F7BottomBarIconSlot(
|
||||||
iconUrl = "$base/themes/forbion/images/header/spreed-header-icon.svg",
|
iconUrl = "$base/themes/forbion/images/header/spreed-header-icon.svg",
|
||||||
contentDescription = "Конференции",
|
contentDescription = "Конференции",
|
||||||
highlighted = activeTabKey == "Talk",
|
|
||||||
iconSize = BottomBarSectionIconSize,
|
iconSize = BottomBarSectionIconSize,
|
||||||
onClick = actions.onConferencesClick,
|
onClick = actions.onConferencesClick,
|
||||||
)
|
)
|
||||||
@@ -130,7 +122,6 @@ fun F7MobileBottomBar(
|
|||||||
"$base/themes/forbion/images/header/menu-burger-gray.svg"
|
"$base/themes/forbion/images/header/menu-burger-gray.svg"
|
||||||
},
|
},
|
||||||
contentDescription = "Меню",
|
contentDescription = "Меню",
|
||||||
highlighted = menuOpen,
|
|
||||||
showBadge = showNotificationBadge,
|
showBadge = showNotificationBadge,
|
||||||
onClick = actions.onMenuClick,
|
onClick = actions.onMenuClick,
|
||||||
)
|
)
|
||||||
@@ -144,23 +135,16 @@ private fun F7BottomBarIconSlot(
|
|||||||
iconUrl: String,
|
iconUrl: String,
|
||||||
contentDescription: String,
|
contentDescription: String,
|
||||||
onClick: () -> Unit,
|
onClick: () -> Unit,
|
||||||
highlighted: Boolean = false,
|
|
||||||
iconRotation: Float = 0f,
|
iconRotation: Float = 0f,
|
||||||
showBadge: Boolean = false,
|
showBadge: Boolean = false,
|
||||||
iconSize: Dp = BottomBarIconSize,
|
iconSize: Dp = BottomBarIconSize,
|
||||||
) {
|
) {
|
||||||
val bg = if (highlighted) BottomBarHighlightBrush else null
|
// Зелёной подложки под активной кнопкой быть не должно — фон всегда нейтральный.
|
||||||
Box(
|
Box(
|
||||||
modifier = Modifier
|
modifier = Modifier
|
||||||
.size(BottomBarButtonSize)
|
.size(BottomBarButtonSize)
|
||||||
.clip(BottomBarButtonShape)
|
.clip(BottomBarButtonShape)
|
||||||
.then(
|
.background(Color(0x99FFFFFF), BottomBarButtonShape)
|
||||||
if (bg != null) {
|
|
||||||
Modifier.background(bg, BottomBarButtonShape)
|
|
||||||
} else {
|
|
||||||
Modifier.background(Color(0x99FFFFFF), BottomBarButtonShape)
|
|
||||||
},
|
|
||||||
)
|
|
||||||
.border(
|
.border(
|
||||||
width = 1.dp,
|
width = 1.dp,
|
||||||
brush = BottomBarBorderBrush,
|
brush = BottomBarBorderBrush,
|
||||||
|
|||||||
Reference in New Issue
Block a user