fix: Use nav bar color for the selection bar
This commit is contained in:
parent
02497233dc
commit
92718d2fab
@ -1,5 +1,6 @@
|
|||||||
package com.artemchep.keyguard.ui.selection
|
package com.artemchep.keyguard.ui.selection
|
||||||
|
|
||||||
|
import androidx.compose.foundation.background
|
||||||
import androidx.compose.foundation.layout.Column
|
import androidx.compose.foundation.layout.Column
|
||||||
import androidx.compose.foundation.layout.Row
|
import androidx.compose.foundation.layout.Row
|
||||||
import androidx.compose.foundation.layout.RowScope
|
import androidx.compose.foundation.layout.RowScope
|
||||||
@ -19,7 +20,6 @@ import androidx.compose.material3.Icon
|
|||||||
import androidx.compose.material3.IconButton
|
import androidx.compose.material3.IconButton
|
||||||
import androidx.compose.material3.LocalTextStyle
|
import androidx.compose.material3.LocalTextStyle
|
||||||
import androidx.compose.material3.MaterialTheme
|
import androidx.compose.material3.MaterialTheme
|
||||||
import androidx.compose.material3.Surface
|
|
||||||
import androidx.compose.runtime.Composable
|
import androidx.compose.runtime.Composable
|
||||||
import androidx.compose.runtime.CompositionLocalProvider
|
import androidx.compose.runtime.CompositionLocalProvider
|
||||||
import androidx.compose.ui.Alignment
|
import androidx.compose.ui.Alignment
|
||||||
@ -27,6 +27,7 @@ import androidx.compose.ui.Modifier
|
|||||||
import androidx.compose.ui.unit.dp
|
import androidx.compose.ui.unit.dp
|
||||||
import com.artemchep.keyguard.platform.leNavigationBars
|
import com.artemchep.keyguard.platform.leNavigationBars
|
||||||
import com.artemchep.keyguard.ui.icons.IconBox
|
import com.artemchep.keyguard.ui.icons.IconBox
|
||||||
|
import com.artemchep.keyguard.ui.surface.LocalBackgroundManager
|
||||||
import com.artemchep.keyguard.ui.theme.Dimens
|
import com.artemchep.keyguard.ui.theme.Dimens
|
||||||
import com.artemchep.keyguard.ui.util.HorizontalDivider
|
import com.artemchep.keyguard.ui.util.HorizontalDivider
|
||||||
|
|
||||||
@ -36,66 +37,62 @@ fun SelectionBar(
|
|||||||
trailing: (@Composable RowScope.() -> Unit)? = null,
|
trailing: (@Composable RowScope.() -> Unit)? = null,
|
||||||
onClear: (() -> Unit)?,
|
onClear: (() -> Unit)?,
|
||||||
) {
|
) {
|
||||||
Column {
|
Column(
|
||||||
Surface(
|
modifier = Modifier
|
||||||
|
.fillMaxWidth()
|
||||||
|
.background(LocalBackgroundManager.current.colorHighest),
|
||||||
|
) {
|
||||||
|
val navBarInsets = WindowInsets.leNavigationBars
|
||||||
|
.only(WindowInsetsSides.Bottom)
|
||||||
|
Row(
|
||||||
modifier = Modifier
|
modifier = Modifier
|
||||||
.fillMaxWidth(),
|
.heightIn(min = 56.dp)
|
||||||
tonalElevation = 3.dp,
|
.windowInsetsPadding(navBarInsets),
|
||||||
|
verticalAlignment = Alignment.CenterVertically,
|
||||||
) {
|
) {
|
||||||
val navBarInsets = WindowInsets.leNavigationBars
|
IconButton(
|
||||||
.only(WindowInsetsSides.Bottom)
|
enabled = onClear != null,
|
||||||
|
onClick = {
|
||||||
|
onClear?.invoke()
|
||||||
|
},
|
||||||
|
) {
|
||||||
|
// TODO: Consider using Icons.Outlined.Deselect
|
||||||
|
Icon(
|
||||||
|
Icons.Outlined.Clear,
|
||||||
|
null,
|
||||||
|
)
|
||||||
|
}
|
||||||
Row(
|
Row(
|
||||||
modifier = Modifier
|
modifier = Modifier
|
||||||
.heightIn(min = 56.dp)
|
.weight(1f),
|
||||||
.windowInsetsPadding(navBarInsets),
|
|
||||||
verticalAlignment = Alignment.CenterVertically,
|
|
||||||
) {
|
) {
|
||||||
IconButton(
|
Button(
|
||||||
enabled = onClear != null,
|
onClick = { /*TODO*/ },
|
||||||
onClick = {
|
|
||||||
onClear?.invoke()
|
|
||||||
},
|
|
||||||
) {
|
) {
|
||||||
// TODO: Consider using Icons.Outlined.Deselect
|
IconBox(
|
||||||
Icon(
|
main = Icons.Outlined.ViewList,
|
||||||
Icons.Outlined.Clear,
|
secondary = null, // Icons.Outlined.PanoramaFishEye,
|
||||||
null,
|
|
||||||
)
|
)
|
||||||
}
|
if (title != null) {
|
||||||
Row(
|
Spacer(
|
||||||
modifier = Modifier
|
modifier = Modifier
|
||||||
.weight(1f),
|
.width(Dimens.buttonIconPadding),
|
||||||
) {
|
|
||||||
Button(
|
|
||||||
onClick = { /*TODO*/ },
|
|
||||||
) {
|
|
||||||
IconBox(
|
|
||||||
main = Icons.Outlined.ViewList,
|
|
||||||
secondary = null, // Icons.Outlined.PanoramaFishEye,
|
|
||||||
)
|
)
|
||||||
if (title != null) {
|
title.invoke(this)
|
||||||
Spacer(
|
|
||||||
modifier = Modifier
|
|
||||||
.width(Dimens.buttonIconPadding),
|
|
||||||
)
|
|
||||||
title.invoke(this)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
val textStyle = MaterialTheme.typography.titleMedium
|
|
||||||
CompositionLocalProvider(
|
|
||||||
LocalTextStyle provides textStyle,
|
|
||||||
) {
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Spacer(
|
val textStyle = MaterialTheme.typography.titleMedium
|
||||||
modifier = Modifier
|
CompositionLocalProvider(
|
||||||
.width(16.dp),
|
LocalTextStyle provides textStyle,
|
||||||
)
|
) {
|
||||||
trailing?.invoke(this)
|
}
|
||||||
}
|
}
|
||||||
|
Spacer(
|
||||||
|
modifier = Modifier
|
||||||
|
.width(16.dp),
|
||||||
|
)
|
||||||
|
trailing?.invoke(this)
|
||||||
}
|
}
|
||||||
HorizontalDivider(
|
HorizontalDivider()
|
||||||
transparency = false,
|
|
||||||
)
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user