From d3fca87c45b428e08958e5d51b2673a9b290e822 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sylwester=20Zieli=C5=84ski?= Date: Wed, 26 Jan 2022 12:29:21 +0100 Subject: [PATCH] Toolbox changes. --- .../android/nrftoolbox/FeatureButton.kt | 38 +++++++-------- .../nordicsemi/android/nrftoolbox/HomeView.kt | 14 ++---- build.gradle | 2 +- .../nordicsemi/android/bps/view/BPSScreen.kt | 13 ++++-- .../android/cgms/view/CGMContentView.kt | 15 +----- .../nordicsemi/android/cgms/view/CGMScreen.kt | 13 ++++-- .../android/csc/view/CSCContentView.kt | 46 ++++++++++--------- .../nordicsemi/android/csc/view/CSCScreen.kt | 13 ++++-- .../android/gls/main/view/GLSContentView.kt | 5 +- .../android/gls/main/view/GLSScreen.kt | 13 ++++-- .../android/hrs/view/HRSContentView.kt | 4 +- .../nordicsemi/android/hrs/view/HRSScreen.kt | 13 ++++-- .../android/hts/view/HTSContentView.kt | 10 +--- .../nordicsemi/android/hts/view/HTSScreen.kt | 13 ++++-- .../nordicsemi/android/prx/view/PRXScreen.kt | 13 ++++-- .../android/rscs/view/RSCSContentView.kt | 4 +- .../android/rscs/view/RSCSScreen.kt | 13 ++++-- .../android/uart/view/UARTContentView.kt | 4 +- .../android/uart/view/UARTScreen.kt | 13 ++++-- 19 files changed, 138 insertions(+), 121 deletions(-) diff --git a/app/src/main/java/no/nordicsemi/android/nrftoolbox/FeatureButton.kt b/app/src/main/java/no/nordicsemi/android/nrftoolbox/FeatureButton.kt index 11b1f5bd..080fbf0e 100644 --- a/app/src/main/java/no/nordicsemi/android/nrftoolbox/FeatureButton.kt +++ b/app/src/main/java/no/nordicsemi/android/nrftoolbox/FeatureButton.kt @@ -4,12 +4,7 @@ import androidx.annotation.DrawableRes import androidx.annotation.StringRes import androidx.compose.foundation.Image import androidx.compose.foundation.background -import androidx.compose.foundation.layout.Column -import androidx.compose.foundation.layout.Spacer -import androidx.compose.foundation.layout.fillMaxWidth -import androidx.compose.foundation.layout.height -import androidx.compose.foundation.layout.padding -import androidx.compose.foundation.layout.size +import androidx.compose.foundation.layout.* import androidx.compose.foundation.shape.CircleShape import androidx.compose.material3.MaterialTheme import androidx.compose.material3.Text @@ -37,14 +32,18 @@ fun FeatureButton( Column( modifier = Modifier .fillMaxWidth() - .height(150.dp) - .padding(16.dp), - horizontalAlignment = Alignment.CenterHorizontally + .height(160.dp), + horizontalAlignment = Alignment.CenterHorizontally, + verticalArrangement = Arrangement.Center ) { - Text( - text = stringResource(id = nameCode), - style = MaterialTheme.typography.labelMedium - ) + Box( modifier = Modifier.weight(1f)) { + Text( + text = stringResource(id = nameCode), + style = MaterialTheme.typography.labelMedium, + modifier = Modifier.fillMaxWidth().align(Alignment.BottomCenter), + textAlign = TextAlign.Center + ) + } Spacer(modifier = Modifier.height(8.dp)) @@ -62,11 +61,14 @@ fun FeatureButton( Spacer(modifier = Modifier.height(8.dp)) - Text( - text = stringResource(id = name), - style = MaterialTheme.typography.bodyMedium, - textAlign = TextAlign.Center - ) + Box( modifier = Modifier.weight(1f)) { + Text( + text = stringResource(id = name), + style = MaterialTheme.typography.bodyMedium, + modifier = Modifier.fillMaxWidth().align(Alignment.TopCenter), + textAlign = TextAlign.Center + ) + } } } } diff --git a/app/src/main/java/no/nordicsemi/android/nrftoolbox/HomeView.kt b/app/src/main/java/no/nordicsemi/android/nrftoolbox/HomeView.kt index e8519de3..30413644 100644 --- a/app/src/main/java/no/nordicsemi/android/nrftoolbox/HomeView.kt +++ b/app/src/main/java/no/nordicsemi/android/nrftoolbox/HomeView.kt @@ -1,21 +1,14 @@ package no.nordicsemi.android.nrftoolbox import android.app.Activity -import androidx.compose.foundation.layout.Arrangement -import androidx.compose.foundation.layout.Box -import androidx.compose.foundation.layout.Column -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.padding -import androidx.compose.foundation.layout.width +import androidx.compose.foundation.layout.* import androidx.compose.foundation.rememberScrollState import androidx.compose.foundation.verticalScroll import androidx.compose.runtime.Composable import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.platform.LocalContext +import androidx.compose.ui.platform.LocalUriHandler import androidx.compose.ui.res.stringResource import androidx.compose.ui.unit.dp import androidx.hilt.navigation.compose.hiltViewModel @@ -109,8 +102,9 @@ fun HomeScreen() { Spacer(modifier = Modifier.height(16.dp)) + val uriHandler = LocalUriHandler.current FeatureButton(R.drawable.ic_dfu, R.string.dfu_module, R.string.dfu_module_full) { - + uriHandler.openUri("https://github.com/NordicSemiconductor/Android-nRF-Toolbox") } Spacer(modifier = Modifier.height(16.dp)) diff --git a/build.gradle b/build.gradle index 162406c1..6c56f861 100644 --- a/build.gradle +++ b/build.gradle @@ -11,7 +11,7 @@ buildscript { mavenCentral() } dependencies { - classpath "com.android.tools.build:gradle:7.0.4" + classpath 'com.android.tools.build:gradle:7.1.0' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" classpath "io.spring.gradle:dependency-management-plugin:1.0.11.RELEASE" classpath "com.google.dagger:hilt-android-gradle-plugin:2.40.4" diff --git a/profile_bps/src/main/java/no/nordicsemi/android/bps/view/BPSScreen.kt b/profile_bps/src/main/java/no/nordicsemi/android/bps/view/BPSScreen.kt index 2aa1861e..fe601318 100644 --- a/profile_bps/src/main/java/no/nordicsemi/android/bps/view/BPSScreen.kt +++ b/profile_bps/src/main/java/no/nordicsemi/android/bps/view/BPSScreen.kt @@ -1,8 +1,11 @@ package no.nordicsemi.android.bps.view import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.rememberScrollState +import androidx.compose.foundation.verticalScroll import androidx.compose.runtime.Composable import androidx.compose.runtime.collectAsState +import androidx.compose.ui.Modifier import androidx.compose.ui.res.stringResource import androidx.hilt.navigation.compose.hiltViewModel import no.nordicsemi.android.bps.R @@ -21,9 +24,11 @@ fun BPSScreen() { viewModel.onEvent(DisconnectEvent) } - when (state) { - is DisplayDataState -> BPSContentView(state.data) { viewModel.onEvent(it) } - LoadingState -> DeviceConnectingView() - }.exhaustive + Column(modifier = Modifier.verticalScroll(rememberScrollState())) { + when (state) { + is DisplayDataState -> BPSContentView(state.data) { viewModel.onEvent(it) } + LoadingState -> DeviceConnectingView() + }.exhaustive + } } } diff --git a/profile_cgms/src/main/java/no/nordicsemi/android/cgms/view/CGMContentView.kt b/profile_cgms/src/main/java/no/nordicsemi/android/cgms/view/CGMContentView.kt index b8812ce5..5a7cca00 100644 --- a/profile_cgms/src/main/java/no/nordicsemi/android/cgms/view/CGMContentView.kt +++ b/profile_cgms/src/main/java/no/nordicsemi/android/cgms/view/CGMContentView.kt @@ -1,16 +1,6 @@ package no.nordicsemi.android.cgms.view -import androidx.compose.foundation.layout.Arrangement -import androidx.compose.foundation.layout.Column -import androidx.compose.foundation.layout.Row -import androidx.compose.foundation.layout.Spacer -import androidx.compose.foundation.layout.fillMaxSize -import androidx.compose.foundation.layout.fillMaxWidth -import androidx.compose.foundation.layout.height -import androidx.compose.foundation.layout.padding -import androidx.compose.foundation.layout.size -import androidx.compose.foundation.rememberScrollState -import androidx.compose.foundation.verticalScroll +import androidx.compose.foundation.layout.* import androidx.compose.material.icons.Icons import androidx.compose.material.icons.filled.Search import androidx.compose.material.icons.filled.Settings @@ -37,8 +27,7 @@ internal fun CGMContentView(state: CGMData, onEvent: (CGMViewEvent) -> Unit) { Column( modifier = Modifier .fillMaxSize() - .padding(16.dp) - .verticalScroll(rememberScrollState()), + .padding(16.dp), horizontalAlignment = Alignment.CenterHorizontally ) { SettingsView(state, onEvent) diff --git a/profile_cgms/src/main/java/no/nordicsemi/android/cgms/view/CGMScreen.kt b/profile_cgms/src/main/java/no/nordicsemi/android/cgms/view/CGMScreen.kt index 35cfbe4f..c3c57397 100644 --- a/profile_cgms/src/main/java/no/nordicsemi/android/cgms/view/CGMScreen.kt +++ b/profile_cgms/src/main/java/no/nordicsemi/android/cgms/view/CGMScreen.kt @@ -1,8 +1,11 @@ package no.nordicsemi.android.cgms.view import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.rememberScrollState +import androidx.compose.foundation.verticalScroll import androidx.compose.runtime.Composable import androidx.compose.runtime.collectAsState +import androidx.compose.ui.Modifier import androidx.compose.ui.res.stringResource import androidx.hilt.navigation.compose.hiltViewModel import no.nordicsemi.android.cgms.R @@ -21,9 +24,11 @@ fun CGMScreen() { viewModel.onEvent(DisconnectEvent) } - when (state) { - is DisplayDataState -> CGMContentView(state.data) { viewModel.onEvent(it) } - LoadingState -> DeviceConnectingView() - }.exhaustive + Column(modifier = Modifier.verticalScroll(rememberScrollState())) { + when (state) { + is DisplayDataState -> CGMContentView(state.data) { viewModel.onEvent(it) } + LoadingState -> DeviceConnectingView() + }.exhaustive + } } } diff --git a/profile_csc/src/main/java/no/nordicsemi/android/csc/view/CSCContentView.kt b/profile_csc/src/main/java/no/nordicsemi/android/csc/view/CSCContentView.kt index e9f87c58..0bae7678 100644 --- a/profile_csc/src/main/java/no/nordicsemi/android/csc/view/CSCContentView.kt +++ b/profile_csc/src/main/java/no/nordicsemi/android/csc/view/CSCContentView.kt @@ -4,8 +4,6 @@ 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.foundation.rememberScrollState -import androidx.compose.foundation.verticalScroll import androidx.compose.material.icons.Icons import androidx.compose.material.icons.filled.Settings import androidx.compose.material3.Button @@ -41,42 +39,46 @@ internal fun CSCContentView(state: CSCData, onEvent: (CSCViewEvent) -> Unit) { when (it) { FlowCanceled -> showDialog.value = false is ItemSelectedResult -> { - onEvent(OnWheelSizeSelected(WheelSize(wheelValues[it.index].toInt(), wheelEntries[it.index]))) + onEvent(OnWheelSizeSelected(WheelSize(wheelValues[it.index].toInt(), + wheelEntries[it.index]))) showDialog.value = false } }.exhaustive } } - Column(modifier = Modifier.verticalScroll(rememberScrollState())) { - Column( - horizontalAlignment = Alignment.CenterHorizontally, - modifier = Modifier.padding(16.dp) + Column( + horizontalAlignment = Alignment.CenterHorizontally, + modifier = Modifier.padding(16.dp) + ) { + SettingsSection(state, onEvent) { showDialog.value = true } + + Spacer(modifier = Modifier.height(16.dp)) + + SensorsReadingView(state = state) + + Spacer(modifier = Modifier.height(16.dp)) + + Button( + onClick = { onEvent(OnDisconnectButtonClick) } ) { - SettingsSection(state, onEvent) { showDialog.value = true } - - Spacer(modifier = Modifier.height(16.dp)) - - SensorsReadingView(state = state) - - Spacer(modifier = Modifier.height(16.dp)) - - Button( - onClick = { onEvent(OnDisconnectButtonClick) } - ) { - Text(text = stringResource(id = R.string.disconnect)) - } + Text(text = stringResource(id = R.string.disconnect)) } } } @Composable -private fun SettingsSection(state: CSCData, onEvent: (CSCViewEvent) -> Unit, onWheelButtonClick: () -> Unit) { +private fun SettingsSection( + state: CSCData, + onEvent: (CSCViewEvent) -> Unit, + onWheelButtonClick: () -> Unit, +) { ScreenSection { Column( horizontalAlignment = Alignment.CenterHorizontally ) { - SectionTitle(icon = Icons.Default.Settings, title = stringResource(R.string.csc_settings)) + SectionTitle(icon = Icons.Default.Settings, + title = stringResource(R.string.csc_settings)) Spacer(modifier = Modifier.height(16.dp)) diff --git a/profile_csc/src/main/java/no/nordicsemi/android/csc/view/CSCScreen.kt b/profile_csc/src/main/java/no/nordicsemi/android/csc/view/CSCScreen.kt index 5ddc51cc..c880d74e 100644 --- a/profile_csc/src/main/java/no/nordicsemi/android/csc/view/CSCScreen.kt +++ b/profile_csc/src/main/java/no/nordicsemi/android/csc/view/CSCScreen.kt @@ -1,8 +1,11 @@ package no.nordicsemi.android.csc.view import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.rememberScrollState +import androidx.compose.foundation.verticalScroll import androidx.compose.runtime.Composable import androidx.compose.runtime.collectAsState +import androidx.compose.ui.Modifier import androidx.compose.ui.res.stringResource import androidx.hilt.navigation.compose.hiltViewModel import no.nordicsemi.android.csc.R @@ -21,9 +24,11 @@ fun CSCScreen() { viewModel.onEvent(OnDisconnectButtonClick) } - when (state) { - is DisplayDataState -> CSCContentView(state.data) { viewModel.onEvent(it) } - LoadingState -> DeviceConnectingView() - }.exhaustive + Column(modifier = Modifier.verticalScroll(rememberScrollState())) { + when (state) { + is DisplayDataState -> CSCContentView(state.data) { viewModel.onEvent(it) } + LoadingState -> DeviceConnectingView() + }.exhaustive + } } } diff --git a/profile_gls/src/main/java/no/nordicsemi/android/gls/main/view/GLSContentView.kt b/profile_gls/src/main/java/no/nordicsemi/android/gls/main/view/GLSContentView.kt index e7ff7666..1ebb89a7 100644 --- a/profile_gls/src/main/java/no/nordicsemi/android/gls/main/view/GLSContentView.kt +++ b/profile_gls/src/main/java/no/nordicsemi/android/gls/main/view/GLSContentView.kt @@ -2,8 +2,6 @@ package no.nordicsemi.android.gls.main.view import androidx.compose.foundation.clickable import androidx.compose.foundation.layout.* -import androidx.compose.foundation.rememberScrollState -import androidx.compose.foundation.verticalScroll import androidx.compose.material.icons.Icons import androidx.compose.material.icons.filled.Search import androidx.compose.material.icons.filled.Settings @@ -32,8 +30,7 @@ internal fun GLSContentView(state: GLSData, onEvent: (GLSScreenViewEvent) -> Uni Column( modifier = Modifier .fillMaxSize() - .padding(horizontal = 16.dp) - .verticalScroll(rememberScrollState()), + .padding(horizontal = 16.dp), horizontalAlignment = Alignment.CenterHorizontally ) { Spacer(modifier = Modifier.height(16.dp)) diff --git a/profile_gls/src/main/java/no/nordicsemi/android/gls/main/view/GLSScreen.kt b/profile_gls/src/main/java/no/nordicsemi/android/gls/main/view/GLSScreen.kt index 14aa8051..47b91bd7 100644 --- a/profile_gls/src/main/java/no/nordicsemi/android/gls/main/view/GLSScreen.kt +++ b/profile_gls/src/main/java/no/nordicsemi/android/gls/main/view/GLSScreen.kt @@ -1,8 +1,11 @@ package no.nordicsemi.android.gls.main.view import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.rememberScrollState +import androidx.compose.foundation.verticalScroll import androidx.compose.runtime.Composable import androidx.compose.runtime.collectAsState +import androidx.compose.ui.Modifier import androidx.compose.ui.res.stringResource import androidx.hilt.navigation.compose.hiltViewModel import no.nordicsemi.android.gls.R @@ -21,9 +24,11 @@ fun GLSScreen() { viewModel.onEvent(DisconnectEvent) } - when (state) { - is DisplayDataState -> GLSContentView(state.data) { viewModel.onEvent(it) } - LoadingState -> DeviceConnectingView() - }.exhaustive + Column(modifier = Modifier.verticalScroll(rememberScrollState())) { + when (state) { + is DisplayDataState -> GLSContentView(state.data) { viewModel.onEvent(it) } + LoadingState -> DeviceConnectingView() + }.exhaustive + } } } diff --git a/profile_hrs/src/main/java/no/nordicsemi/android/hrs/view/HRSContentView.kt b/profile_hrs/src/main/java/no/nordicsemi/android/hrs/view/HRSContentView.kt index cc005afe..5a979710 100644 --- a/profile_hrs/src/main/java/no/nordicsemi/android/hrs/view/HRSContentView.kt +++ b/profile_hrs/src/main/java/no/nordicsemi/android/hrs/view/HRSContentView.kt @@ -22,10 +22,8 @@ import no.nordicsemi.android.theme.view.SectionTitle internal fun HRSContentView(state: HRSData, onEvent: (HRSScreenViewEvent) -> Unit) { Column( horizontalAlignment = Alignment.CenterHorizontally, - modifier = Modifier.padding(horizontal = 16.dp) + modifier = Modifier.padding(16.dp) ) { - Spacer(modifier = Modifier.height(16.dp)) - ScreenSection { SectionTitle(resId = R.drawable.ic_chart_line, title = "Data") diff --git a/profile_hrs/src/main/java/no/nordicsemi/android/hrs/view/HRSScreen.kt b/profile_hrs/src/main/java/no/nordicsemi/android/hrs/view/HRSScreen.kt index 4cbcd667..c69d86fc 100644 --- a/profile_hrs/src/main/java/no/nordicsemi/android/hrs/view/HRSScreen.kt +++ b/profile_hrs/src/main/java/no/nordicsemi/android/hrs/view/HRSScreen.kt @@ -1,8 +1,11 @@ package no.nordicsemi.android.hrs.view import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.rememberScrollState +import androidx.compose.foundation.verticalScroll import androidx.compose.runtime.Composable import androidx.compose.runtime.collectAsState +import androidx.compose.ui.Modifier import androidx.compose.ui.res.stringResource import androidx.hilt.navigation.compose.hiltViewModel import no.nordicsemi.android.hrs.R @@ -21,9 +24,11 @@ fun HRSScreen() { viewModel.onEvent(DisconnectEvent) } - when (state) { - is DisplayDataState -> HRSContentView(state.data) { viewModel.onEvent(it) } - LoadingState -> DeviceConnectingView() - }.exhaustive + Column(modifier = Modifier.verticalScroll(rememberScrollState())) { + when (state) { + is DisplayDataState -> HRSContentView(state.data) { viewModel.onEvent(it) } + LoadingState -> DeviceConnectingView() + }.exhaustive + } } } diff --git a/profile_hts/src/main/java/no/nordicsemi/android/hts/view/HTSContentView.kt b/profile_hts/src/main/java/no/nordicsemi/android/hts/view/HTSContentView.kt index e207b557..ee650d4b 100644 --- a/profile_hts/src/main/java/no/nordicsemi/android/hts/view/HTSContentView.kt +++ b/profile_hts/src/main/java/no/nordicsemi/android/hts/view/HTSContentView.kt @@ -1,10 +1,6 @@ package no.nordicsemi.android.hts.view -import androidx.compose.foundation.layout.Column -import androidx.compose.foundation.layout.Spacer -import androidx.compose.foundation.layout.fillMaxSize -import androidx.compose.foundation.layout.height -import androidx.compose.foundation.layout.padding +import androidx.compose.foundation.layout.* import androidx.compose.material3.Button import androidx.compose.material3.Text import androidx.compose.runtime.Composable @@ -26,11 +22,9 @@ internal fun HTSContentView(state: HTSData, onEvent: (HTSScreenViewEvent) -> Uni Column( modifier = Modifier .fillMaxSize() - .padding(horizontal = 16.dp), + .padding(16.dp), horizontalAlignment = Alignment.CenterHorizontally ) { - Spacer(modifier = Modifier.height(16.dp)) - ScreenSection { SectionTitle(resId = R.drawable.ic_thermometer, title = "Settings") diff --git a/profile_hts/src/main/java/no/nordicsemi/android/hts/view/HTSScreen.kt b/profile_hts/src/main/java/no/nordicsemi/android/hts/view/HTSScreen.kt index d2b10fbc..ded13285 100644 --- a/profile_hts/src/main/java/no/nordicsemi/android/hts/view/HTSScreen.kt +++ b/profile_hts/src/main/java/no/nordicsemi/android/hts/view/HTSScreen.kt @@ -1,8 +1,11 @@ package no.nordicsemi.android.hts.view import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.rememberScrollState +import androidx.compose.foundation.verticalScroll import androidx.compose.runtime.Composable import androidx.compose.runtime.collectAsState +import androidx.compose.ui.Modifier import androidx.compose.ui.res.stringResource import androidx.hilt.navigation.compose.hiltViewModel import no.nordicsemi.android.hts.R @@ -21,9 +24,11 @@ fun HTSScreen() { viewModel.onEvent(DisconnectEvent) } - when (state) { - is DisplayDataState -> HTSContentView(state.data) { viewModel.onEvent(it) } - LoadingState -> DeviceConnectingView() - }.exhaustive + Column(modifier = Modifier.verticalScroll(rememberScrollState())) { + when (state) { + is DisplayDataState -> HTSContentView(state.data) { viewModel.onEvent(it) } + LoadingState -> DeviceConnectingView() + }.exhaustive + } } } diff --git a/profile_prx/src/main/java/no/nordicsemi/android/prx/view/PRXScreen.kt b/profile_prx/src/main/java/no/nordicsemi/android/prx/view/PRXScreen.kt index 80d9238f..68b18f62 100644 --- a/profile_prx/src/main/java/no/nordicsemi/android/prx/view/PRXScreen.kt +++ b/profile_prx/src/main/java/no/nordicsemi/android/prx/view/PRXScreen.kt @@ -1,9 +1,12 @@ package no.nordicsemi.android.prx.view import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.rememberScrollState +import androidx.compose.foundation.verticalScroll import androidx.compose.runtime.Composable import androidx.compose.runtime.collectAsState import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier import androidx.compose.ui.res.stringResource import androidx.hilt.navigation.compose.hiltViewModel import no.nordicsemi.android.prx.R @@ -22,9 +25,11 @@ fun PRXScreen() { viewModel.onEvent(DisconnectEvent) } - when (state) { - is DisplayDataState -> ContentView(state.data) { viewModel.onEvent(it) } - LoadingState -> DeviceConnectingView() - }.exhaustive + Column(modifier = Modifier.verticalScroll(rememberScrollState())) { + when (state) { + is DisplayDataState -> ContentView(state.data) { viewModel.onEvent(it) } + LoadingState -> DeviceConnectingView() + }.exhaustive + } } } 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 314e3439..ef1ad788 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 @@ -20,10 +20,8 @@ import no.nordicsemi.android.theme.view.BatteryLevelView internal fun RSCSContentView(state: RSCSData, onEvent: (RSCScreenViewEvent) -> Unit) { Column( horizontalAlignment = Alignment.CenterHorizontally, - modifier = Modifier.padding(horizontal = 16.dp) + modifier = Modifier.padding(16.dp) ) { - Spacer(modifier = Modifier.height(16.dp)) - SensorsReadingView(state = state) Spacer(modifier = Modifier.height(16.dp)) diff --git a/profile_rscs/src/main/java/no/nordicsemi/android/rscs/view/RSCSScreen.kt b/profile_rscs/src/main/java/no/nordicsemi/android/rscs/view/RSCSScreen.kt index 633e8154..406bfa8e 100644 --- a/profile_rscs/src/main/java/no/nordicsemi/android/rscs/view/RSCSScreen.kt +++ b/profile_rscs/src/main/java/no/nordicsemi/android/rscs/view/RSCSScreen.kt @@ -1,8 +1,11 @@ package no.nordicsemi.android.rscs.view import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.rememberScrollState +import androidx.compose.foundation.verticalScroll import androidx.compose.runtime.Composable import androidx.compose.runtime.collectAsState +import androidx.compose.ui.Modifier import androidx.compose.ui.res.stringResource import androidx.hilt.navigation.compose.hiltViewModel import no.nordicsemi.android.rscs.R @@ -21,9 +24,11 @@ fun RSCSScreen() { viewModel.onEvent(DisconnectEvent) } - when (state) { - is DisplayDataState -> RSCSContentView(state.data) { viewModel.onEvent(it) } - LoadingState -> DeviceConnectingView() - }.exhaustive + Column(modifier = Modifier.verticalScroll(rememberScrollState())) { + when (state) { + is DisplayDataState -> RSCSContentView(state.data) { viewModel.onEvent(it) } + LoadingState -> DeviceConnectingView() + }.exhaustive + } } } 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 2abf4566..65be5e43 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 @@ -23,10 +23,8 @@ import no.nordicsemi.android.uart.data.UARTData internal fun UARTContentView(state: UARTData, onEvent: (UARTViewEvent) -> Unit) { Column( horizontalAlignment = Alignment.CenterHorizontally, - modifier = Modifier.padding(horizontal = 16.dp) + modifier = Modifier.padding(16.dp) ) { - Spacer(modifier = Modifier.height(16.dp)) - InputSection(state, onEvent) Spacer(modifier = Modifier.height(16.dp)) 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 0c82f365..8d5208dc 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 @@ -1,8 +1,11 @@ package no.nordicsemi.android.uart.view import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.rememberScrollState +import androidx.compose.foundation.verticalScroll import androidx.compose.runtime.Composable import androidx.compose.runtime.collectAsState +import androidx.compose.ui.Modifier import androidx.compose.ui.res.stringResource import androidx.hilt.navigation.compose.hiltViewModel import no.nordicsemi.android.theme.view.BackIconAppBar @@ -21,9 +24,11 @@ fun UARTScreen() { viewModel.onEvent(OnDisconnectButtonClick) } - when (state) { - is DisplayDataState -> UARTContentView(state.data) { viewModel.onEvent(it) } - LoadingState -> DeviceConnectingView() - }.exhaustive + Column(modifier = Modifier.verticalScroll(rememberScrollState())) { + when (state) { + is DisplayDataState -> UARTContentView(state.data) { viewModel.onEvent(it) } + LoadingState -> DeviceConnectingView() + }.exhaustive + } } }