From 5f71f60768e8869ccd8251e61a6b59fb2dcc016f Mon Sep 17 00:00:00 2001 From: Sylwester Zielinski Date: Wed, 25 Jan 2023 15:51:53 +0100 Subject: [PATCH] Update UART screen --- .../android/prx/view/PRXContentView.kt | 1 - .../android/rscs/view/RSCSContentView.kt | 2 -- .../android/rscs/view/SensorsReadingView.kt | 3 ++- .../android/uart/view/MacroSection.kt | 2 ++ .../android/uart/view/UARTContentView.kt | 18 ++++++--------- .../android/uart/view/UARTScreen.kt | 22 ++++++++++++------- 6 files changed, 25 insertions(+), 23 deletions(-) diff --git a/profile_prx/src/main/java/no/nordicsemi/android/prx/view/PRXContentView.kt b/profile_prx/src/main/java/no/nordicsemi/android/prx/view/PRXContentView.kt index c3e5afd9..d7da2a3b 100644 --- a/profile_prx/src/main/java/no/nordicsemi/android/prx/view/PRXContentView.kt +++ b/profile_prx/src/main/java/no/nordicsemi/android/prx/view/PRXContentView.kt @@ -54,7 +54,6 @@ import no.nordicsemi.android.ui.view.SectionTitle @Composable internal fun ContentView(state: PRXData, onEvent: (PRXScreenViewEvent) -> Unit) { Column( - modifier = Modifier.padding(16.dp), horizontalAlignment = Alignment.CenterHorizontally ) { SettingsSection(state, onEvent) diff --git a/profile_rscs/src/main/java/no/nordicsemi/android/rscs/view/RSCSContentView.kt b/profile_rscs/src/main/java/no/nordicsemi/android/rscs/view/RSCSContentView.kt index 0a18eafe..785429c7 100644 --- a/profile_rscs/src/main/java/no/nordicsemi/android/rscs/view/RSCSContentView.kt +++ b/profile_rscs/src/main/java/no/nordicsemi/android/rscs/view/RSCSContentView.kt @@ -34,7 +34,6 @@ package no.nordicsemi.android.rscs.view import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height -import androidx.compose.foundation.layout.padding import androidx.compose.material3.Button import androidx.compose.material3.Text import androidx.compose.runtime.Composable @@ -51,7 +50,6 @@ import no.nordicsemi.android.ui.view.BatteryLevelView internal fun RSCSContentView(state: RSCSData, onEvent: (RSCScreenViewEvent) -> Unit) { Column( horizontalAlignment = Alignment.CenterHorizontally, - modifier = Modifier.padding(16.dp) ) { SensorsReadingView(state = state) diff --git a/profile_rscs/src/main/java/no/nordicsemi/android/rscs/view/SensorsReadingView.kt b/profile_rscs/src/main/java/no/nordicsemi/android/rscs/view/SensorsReadingView.kt index 0d0b33ec..1c89e3f9 100644 --- a/profile_rscs/src/main/java/no/nordicsemi/android/rscs/view/SensorsReadingView.kt +++ b/profile_rscs/src/main/java/no/nordicsemi/android/rscs/view/SensorsReadingView.kt @@ -42,11 +42,12 @@ import androidx.compose.ui.unit.dp import no.nordicsemi.android.rscs.R import no.nordicsemi.android.rscs.data.RSCSData import no.nordicsemi.android.ui.view.KeyValueField +import no.nordicsemi.android.ui.view.ScreenSection import no.nordicsemi.android.ui.view.SectionTitle @Composable internal fun SensorsReadingView(state: RSCSData) { - OutlinedCard { + ScreenSection { SectionTitle(resId = R.drawable.ic_records, title = "Records") Spacer(modifier = Modifier.height(16.dp)) diff --git a/profile_uart/src/main/java/no/nordicsemi/android/uart/view/MacroSection.kt b/profile_uart/src/main/java/no/nordicsemi/android/uart/view/MacroSection.kt index 04b59c9f..477d0e50 100644 --- a/profile_uart/src/main/java/no/nordicsemi/android/uart/view/MacroSection.kt +++ b/profile_uart/src/main/java/no/nordicsemi/android/uart/view/MacroSection.kt @@ -37,6 +37,7 @@ import androidx.compose.foundation.layout.Row import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.fillMaxSize import androidx.compose.foundation.layout.height +import androidx.compose.foundation.layout.heightIn import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.size import androidx.compose.foundation.rememberScrollState @@ -86,6 +87,7 @@ internal fun MacroSection(viewState: UARTViewState, onEvent: (UARTViewEvent) -> .fillMaxSize() .verticalScroll(rememberScrollState()) .padding(16.dp) + .heightIn(min = 400.dp) ) { ScreenSection { Column( diff --git a/profile_uart/src/main/java/no/nordicsemi/android/uart/view/UARTContentView.kt b/profile_uart/src/main/java/no/nordicsemi/android/uart/view/UARTContentView.kt index 32b036e1..5527a910 100644 --- a/profile_uart/src/main/java/no/nordicsemi/android/uart/view/UARTContentView.kt +++ b/profile_uart/src/main/java/no/nordicsemi/android/uart/view/UARTContentView.kt @@ -31,18 +31,19 @@ package no.nordicsemi.android.uart.view +import androidx.compose.foundation.layout.Box import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.fillMaxSize import androidx.compose.foundation.layout.fillMaxWidth import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.size -import androidx.compose.material3.Card import androidx.compose.runtime.Composable import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.unit.dp import no.nordicsemi.android.uart.data.UARTData +import no.nordicsemi.android.ui.view.ScreenSection @Composable internal fun UARTContentView( @@ -56,16 +57,11 @@ internal fun UARTContentView( .fillMaxSize() ) { - Card( - modifier = Modifier - .weight(1f) - ) { - Column( - modifier = Modifier - .fillMaxWidth() - .padding(start = 16.dp, top = 16.dp, end = 16.dp) - ) { - OutputSection(state.displayMessages, onEvent) + Box(modifier = Modifier.weight(1f)) { + ScreenSection { + Column(modifier = Modifier.fillMaxWidth()) { + OutputSection(state.displayMessages, onEvent) + } } } diff --git a/profile_uart/src/main/java/no/nordicsemi/android/uart/view/UARTScreen.kt b/profile_uart/src/main/java/no/nordicsemi/android/uart/view/UARTScreen.kt index 088d2a9d..03e38bd9 100644 --- a/profile_uart/src/main/java/no/nordicsemi/android/uart/view/UARTScreen.kt +++ b/profile_uart/src/main/java/no/nordicsemi/android/uart/view/UARTScreen.kt @@ -32,6 +32,8 @@ package no.nordicsemi.android.uart.view import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.layout.PaddingValues +import androidx.compose.foundation.layout.fillMaxSize import androidx.compose.foundation.layout.padding import androidx.compose.foundation.rememberScrollState import androidx.compose.foundation.verticalScroll @@ -39,6 +41,7 @@ import androidx.compose.material3.ExperimentalMaterial3Api import androidx.compose.material3.Scaffold import androidx.compose.runtime.Composable import androidx.compose.runtime.collectAsState +import androidx.compose.runtime.remember import androidx.compose.ui.Modifier import androidx.compose.ui.res.stringResource import androidx.compose.ui.unit.dp @@ -77,10 +80,7 @@ fun UARTScreen() { topBar = { AppBar(state, navigateUp) { viewModel.onEvent(it) } } ) { Column( - modifier = Modifier - .padding(it) - .padding(16.dp) - .verticalScroll(rememberScrollState()) + modifier = Modifier.padding(it) ) { when (state.uartManagerState) { NoDeviceState -> DeviceConnectingView() @@ -116,17 +116,23 @@ private fun AppBar(state: UARTViewState, navigateUp: () -> Unit, onEvent: (UARTV @Composable private fun SuccessScreen(data: UARTData, state: UARTViewState, viewModel: UARTViewModel) { - val viewEntity = PagerViewEntity( + val input = stringResource(id = R.string.uart_input) + val macros = stringResource(id = R.string.uart_macros) + val viewEntity = remember { PagerViewEntity( listOf( - PagerViewItem(stringResource(id = R.string.uart_input)) { + PagerViewItem(input) { UARTContentView(data) { viewModel.onEvent(it) } }, - PagerViewItem(stringResource(id = R.string.uart_macros)) { + PagerViewItem(macros) { MacroSection(state) { viewModel.onEvent(it) } } ) + ) } + PagerView( + viewEntity = viewEntity, + modifier = Modifier.fillMaxSize(), + itemSpacing = 16.dp ) - PagerView(viewEntity) } @Composable