Skip to content

Commit

Permalink
Pin the segmented control to toolbar in AddSendScreen (#4093)
Browse files Browse the repository at this point in the history
  • Loading branch information
david-livefront authored Oct 15, 2024
1 parent 970a1e1 commit 8eb408b
Show file tree
Hide file tree
Showing 4 changed files with 187 additions and 158 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -21,10 +21,12 @@ import androidx.compose.ui.text.style.TextOverflow
import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.unit.dp
import com.x8bit.bitwarden.R
import com.x8bit.bitwarden.ui.platform.base.util.bottomDivider
import com.x8bit.bitwarden.ui.platform.base.util.mirrorIfRtl
import com.x8bit.bitwarden.ui.platform.base.util.scrolledContainerBottomDivider
import com.x8bit.bitwarden.ui.platform.components.appbar.color.bitwardenTopAppBarColors
import com.x8bit.bitwarden.ui.platform.components.button.BitwardenStandardIconButton
import com.x8bit.bitwarden.ui.platform.components.model.TopAppBarDividerStyle
import com.x8bit.bitwarden.ui.platform.components.util.rememberVectorPainter
import com.x8bit.bitwarden.ui.platform.theme.BitwardenTheme

Expand All @@ -47,6 +49,7 @@ fun BitwardenTopAppBar(
navigationIconContentDescription: String,
onNavigationIconClick: () -> Unit,
modifier: Modifier = Modifier,
dividerStyle: TopAppBarDividerStyle = TopAppBarDividerStyle.ON_SCROLL,
actions: @Composable RowScope.() -> Unit = { },
) {
BitwardenTopAppBar(
Expand All @@ -58,6 +61,7 @@ fun BitwardenTopAppBar(
onNavigationIconClick = onNavigationIconClick,
),
modifier = modifier,
dividerStyle = dividerStyle,
actions = actions,
)
}
Expand All @@ -82,6 +86,7 @@ fun BitwardenTopAppBar(
scrollBehavior: TopAppBarScrollBehavior,
navigationIcon: NavigationIcon?,
modifier: Modifier = Modifier,
dividerStyle: TopAppBarDividerStyle = TopAppBarDividerStyle.ON_SCROLL,
actions: @Composable RowScope.() -> Unit = {},
) {
var titleTextHasOverflow by remember {
Expand All @@ -102,6 +107,24 @@ fun BitwardenTopAppBar(
}
}
}
val customModifier = modifier
.testTag(tag = "HeaderBarComponent")
.scrolledContainerBottomDivider(
topAppBarScrollBehavior = scrollBehavior,
enabled = when (dividerStyle) {
TopAppBarDividerStyle.NONE -> false
TopAppBarDividerStyle.STATIC -> false
TopAppBarDividerStyle.ON_SCROLL -> true
},
)
.bottomDivider(
enabled = when (dividerStyle) {
TopAppBarDividerStyle.NONE -> false
TopAppBarDividerStyle.STATIC -> true
TopAppBarDividerStyle.ON_SCROLL -> false
},
thickness = (0.5).dp,
)

if (titleTextHasOverflow) {
MediumTopAppBar(
Expand All @@ -120,9 +143,7 @@ fun BitwardenTopAppBar(
modifier = Modifier.testTag(tag = "PageTitleLabel"),
)
},
modifier = modifier
.testTag(tag = "HeaderBarComponent")
.scrolledContainerBottomDivider(topAppBarScrollBehavior = scrollBehavior),
modifier = customModifier,
actions = actions,
)
} else {
Expand All @@ -144,9 +165,7 @@ fun BitwardenTopAppBar(
},
)
},
modifier = modifier
.testTag(tag = "HeaderBarComponent")
.scrolledContainerBottomDivider(topAppBarScrollBehavior = scrollBehavior),
modifier = customModifier,
actions = actions,
)
}
Expand Down
Loading

0 comments on commit 8eb408b

Please sign in to comment.