diff options
| author | David Göransson <david.goransson90@gmail.com> | 2023-10-05 14:54:08 +0200 |
|---|---|---|
| committer | Albin <albin@mullvad.net> | 2023-10-06 17:35:23 +0200 |
| commit | 7e28f789dadaa07950101058330757769a76e70d (patch) | |
| tree | 6548308aa794a079b2b36b5e96a6b17e7a8e8002 /android | |
| parent | f7db974d02db5398a40701cf4d731eb65bb28761 (diff) | |
| download | mullvadvpn-7e28f789dadaa07950101058330757769a76e70d.tar.xz mullvadvpn-7e28f789dadaa07950101058330757769a76e70d.zip | |
Fix split tunneling view and scrollable menu bar
Diffstat (limited to 'android')
3 files changed, 17 insertions, 14 deletions
diff --git a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/component/Scaffolding.kt b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/component/Scaffolding.kt index e2ba1d4f76..eb4d0d19a5 100644 --- a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/component/Scaffolding.kt +++ b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/component/Scaffolding.kt @@ -83,11 +83,9 @@ fun ScaffoldWithMediumTopBar( ) { val appBarState = rememberTopAppBarState() + val canScroll = lazyListState.canScrollForward || lazyListState.canScrollBackward val scrollBehavior = - TopAppBarDefaults.exitUntilCollapsedScrollBehavior( - appBarState, - canScroll = { lazyListState.canScrollBackward || lazyListState.canScrollForward } - ) + TopAppBarDefaults.exitUntilCollapsedScrollBehavior(appBarState, canScroll = { canScroll }) Scaffold( modifier = modifier.fillMaxSize().nestedScroll(scrollBehavior.nestedScrollConnection), topBar = { @@ -95,7 +93,7 @@ fun ScaffoldWithMediumTopBar( title = appBarTitle, navigationIcon = navigationIcon, actions, - scrollBehavior = scrollBehavior + scrollBehavior = if (canScroll) scrollBehavior else null ) }, content = { @@ -118,11 +116,9 @@ fun ScaffoldWithMediumTopBar( ) { val appBarState = rememberTopAppBarState() val scrollState = rememberScrollState() + val canScroll = scrollState.canScrollForward || scrollState.canScrollBackward val scrollBehavior = - TopAppBarDefaults.exitUntilCollapsedScrollBehavior( - appBarState, - canScroll = { scrollState.canScrollBackward || scrollState.canScrollForward } - ) + TopAppBarDefaults.exitUntilCollapsedScrollBehavior(appBarState, canScroll = { canScroll }) Scaffold( modifier = modifier.fillMaxSize().nestedScroll(scrollBehavior.nestedScrollConnection), topBar = { @@ -130,7 +126,12 @@ fun ScaffoldWithMediumTopBar( title = appBarTitle, navigationIcon = navigationIcon, actions, - scrollBehavior = scrollBehavior + scrollBehavior = + if (canScroll) { + scrollBehavior + } else { + null + } ) }, content = { diff --git a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/component/TopBar.kt b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/component/TopBar.kt index 2cab654e72..3c5e0e1bb7 100644 --- a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/component/TopBar.kt +++ b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/component/TopBar.kt @@ -85,7 +85,6 @@ private fun PreviewNothingTopBar() { } } -@OptIn(ExperimentalMaterial3Api::class) @Composable fun MullvadTopBar( containerColor: Color, @@ -189,7 +188,6 @@ private fun PreviewSlimMediumTopBar() { } } -@OptIn(ExperimentalMaterial3Api::class) @Composable fun MullvadMediumTopBar( title: String, diff --git a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/screen/SplitTunnelingScreen.kt b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/screen/SplitTunnelingScreen.kt index 28d5e05fb3..bf47a7a17f 100644 --- a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/screen/SplitTunnelingScreen.kt +++ b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/screen/SplitTunnelingScreen.kt @@ -87,8 +87,12 @@ fun SplitTunnelingScreen( modifier = Modifier.fillMaxSize(), appBarTitle = stringResource(id = R.string.split_tunneling), navigationIcon = { NavigateBackIconButton(onBackClick) } - ) { _, lazyListState -> - LazyColumn(horizontalAlignment = Alignment.CenterHorizontally, state = lazyListState) { + ) { modifier, lazyListState -> + LazyColumn( + modifier = modifier, + horizontalAlignment = Alignment.CenterHorizontally, + state = lazyListState + ) { item(key = CommonContentKey.DESCRIPTION, contentType = ContentType.DESCRIPTION) { Box(modifier = Modifier.fillMaxWidth()) { Text( |
