diff options
Diffstat (limited to 'android/app/src/main')
3 files changed, 31 insertions, 24 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 3d23071e94..5020002bc7 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 @@ -1,5 +1,6 @@ package net.mullvad.mullvadvpn.compose.component +import androidx.compose.foundation.background import androidx.compose.foundation.layout.BoxWithConstraints import androidx.compose.foundation.layout.PaddingValues import androidx.compose.material.Scaffold @@ -49,7 +50,8 @@ fun ScaffoldWithTopBar( @Composable @OptIn(ExperimentalToolbarApi::class) fun CollapsableAwareToolbarScaffold( - modifier: Modifier, + backgroundColor: Color, + modifier: Modifier = Modifier, state: CollapsingToolbarScaffoldState, scrollStrategy: ScrollStrategy, isEnabledWhenCollapsable: Boolean = true, @@ -57,6 +59,10 @@ fun CollapsableAwareToolbarScaffold( toolbar: @Composable CollapsingToolbarScope.() -> Unit, body: @Composable CollapsingToolbarScaffoldScope.() -> Unit ) { + val systemUiController = rememberSystemUiController() + systemUiController.setStatusBarColor(backgroundColor) + systemUiController.setNavigationBarColor(backgroundColor) + var isCollapsable by remember { mutableStateOf(false) } LaunchedEffect(isCollapsable) { @@ -66,7 +72,7 @@ fun CollapsableAwareToolbarScaffold( } CollapsingToolbarScaffold( - modifier = modifier, + modifier = modifier.background(backgroundColor), state = state, scrollStrategy = scrollStrategy, enabled = isEnabledWhenCollapsable && isCollapsable, diff --git a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/screen/AdvancedSettingScreen.kt b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/screen/AdvancedSettingScreen.kt index ff0f471c88..bd115447d6 100644 --- a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/screen/AdvancedSettingScreen.kt +++ b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/screen/AdvancedSettingScreen.kt @@ -73,19 +73,19 @@ private fun PreviewAdvancedSettings() { @Composable fun AdvancedSettingScreen( uiState: AdvancedSettingsUiState, - onMtuCellClick: () -> Unit, - onMtuInputChange: (String) -> Unit, - onSaveMtuClick: () -> Unit, - onRestoreMtuClick: () -> Unit, - onCancelMtuDialogClicked: () -> Unit, - onSplitTunnelingNavigationClick: () -> Unit, - onToggleDnsClick: (Boolean) -> Unit, - onDnsClick: (index: Int?) -> Unit, - onDnsInputChange: (String) -> Unit, - onSaveDnsClick: () -> Unit, - onRemoveDnsClick: () -> Unit, - onCancelDnsDialogClick: () -> Unit, - onBackClick: () -> Unit + onMtuCellClick: () -> Unit = {}, + onMtuInputChange: (String) -> Unit = {}, + onSaveMtuClick: () -> Unit = {}, + onRestoreMtuClick: () -> Unit = {}, + onCancelMtuDialogClicked: () -> Unit = {}, + onSplitTunnelingNavigationClick: () -> Unit = {}, + onToggleDnsClick: (Boolean) -> Unit = {}, + onDnsClick: (index: Int?) -> Unit = {}, + onDnsInputChange: (String) -> Unit = {}, + onSaveDnsClick: () -> Unit = {}, + onRemoveDnsClick: () -> Unit = {}, + onCancelDnsDialogClick: () -> Unit = {}, + onBackClick: () -> Unit = {} ) { val cellVerticalSpacing = dimensionResource(id = R.dimen.cell_label_vertical_padding) val cellHorizontalSpacing = dimensionResource(id = R.dimen.cell_left_padding) @@ -124,7 +124,8 @@ fun AdvancedSettingScreen( val progress = state.toolbarState.progress CollapsableAwareToolbarScaffold( - modifier = Modifier.background(MullvadDarkBlue).fillMaxSize(), + backgroundColor = MullvadDarkBlue, + modifier = Modifier.fillMaxSize(), state = state, scrollStrategy = ScrollStrategy.ExitUntilCollapsed, isEnabledWhenCollapsable = true, diff --git a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/state/AdvancedSettingsUiState.kt b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/state/AdvancedSettingsUiState.kt index ce554115d2..59c3551eb3 100644 --- a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/state/AdvancedSettingsUiState.kt +++ b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/state/AdvancedSettingsUiState.kt @@ -17,18 +17,18 @@ sealed interface AdvancedSettingsUiState { ) : AdvancedSettingsUiState data class MtuDialogUiState( - override val mtu: String, - override val isCustomDnsEnabled: Boolean, - override val isAllowLanEnabled: Boolean, - override val customDnsItems: List<CustomDnsItem>, + override val mtu: String = "", + override val isCustomDnsEnabled: Boolean = false, + override val isAllowLanEnabled: Boolean = false, + override val customDnsItems: List<CustomDnsItem> = listOf(), val mtuEditValue: String ) : AdvancedSettingsUiState data class DnsDialogUiState( - override val mtu: String, - override val isCustomDnsEnabled: Boolean, - override val isAllowLanEnabled: Boolean, - override val customDnsItems: List<CustomDnsItem>, + override val mtu: String = "", + override val isCustomDnsEnabled: Boolean = false, + override val isAllowLanEnabled: Boolean = false, + override val customDnsItems: List<CustomDnsItem> = listOf(), val stagedDns: StagedDns, ) : AdvancedSettingsUiState } |
