Add GLS Details screen

This commit is contained in:
Sylwester Zieliński
2022-01-24 15:11:40 +01:00
parent 7541cc762a
commit e3010c80e8
28 changed files with 480 additions and 218 deletions

View File

@@ -1,27 +1,17 @@
package no.nordicsemi.android.nrftoolbox
import no.nordicsemi.android.bps.repository.BPS_SERVICE_UUID
import no.nordicsemi.android.bps.view.BPSScreen
import no.nordicsemi.android.cgms.repository.CGMS_SERVICE_UUID
import no.nordicsemi.android.cgms.view.CGMScreen
import no.nordicsemi.android.csc.repository.CSC_SERVICE_UUID
import no.nordicsemi.android.csc.view.CSCScreen
import no.nordicsemi.android.gls.repository.GLS_SERVICE_UUID
import no.nordicsemi.android.gls.view.GLSScreen
import no.nordicsemi.android.hrs.service.HRS_SERVICE_UUID
import no.nordicsemi.android.gls.main.view.GLSScreen
import no.nordicsemi.android.hrs.view.HRSScreen
import no.nordicsemi.android.hts.repository.HTS_SERVICE_UUID
import no.nordicsemi.android.hts.view.HTSScreen
import no.nordicsemi.android.navigation.ComposeDestination
import no.nordicsemi.android.navigation.ComposeDestinations
import no.nordicsemi.android.prx.service.PRX_SERVICE_UUID
import no.nordicsemi.android.prx.view.PRXScreen
import no.nordicsemi.android.rscs.service.RSCS_SERVICE_UUID
import no.nordicsemi.android.rscs.view.RSCSScreen
import no.nordicsemi.android.uart.repository.UART_SERVICE_UUID
import no.nordicsemi.android.uart.view.UARTScreen
import no.nordicsemi.ui.scanner.navigation.view.FindDeviceScreen
import java.util.*
val HomeDestinations = ComposeDestinations(HomeDestination.values().map { it.destination })
val ProfileDestinations = ComposeDestinations(ProfileDestination.values().map { it.destination })
@@ -31,14 +21,14 @@ enum class HomeDestination(val destination: ComposeDestination) {
SCANNER(ComposeDestination("scanner-destination") { FindDeviceScreen() });
}
enum class ProfileDestination(val destination: ComposeDestination, val uuid: UUID) {
CSC(ComposeDestination("csc-destination") { CSCScreen() }, CSC_SERVICE_UUID),
HRS(ComposeDestination("hrs-destination") { HRSScreen() }, HRS_SERVICE_UUID),
HTS(ComposeDestination("hts-destination") { HTSScreen() }, HTS_SERVICE_UUID),
GLS(ComposeDestination("gls-destination") { GLSScreen() }, GLS_SERVICE_UUID),
BPS(ComposeDestination("bps-destination") { BPSScreen() }, BPS_SERVICE_UUID),
PRX(ComposeDestination("prx-destination") { PRXScreen() }, PRX_SERVICE_UUID),
RSCS(ComposeDestination("rscs-destination") { RSCSScreen() }, RSCS_SERVICE_UUID),
CGMS(ComposeDestination("cgms-destination") { CGMScreen() }, CGMS_SERVICE_UUID),
UART(ComposeDestination("uart-destination") { UARTScreen() }, UART_SERVICE_UUID);
enum class ProfileDestination(val destination: ComposeDestination) {
CSC(ComposeDestination("csc-destination") { CSCScreen() }),
HRS(ComposeDestination("hrs-destination") { HRSScreen() }),
HTS(ComposeDestination("hts-destination") { HTSScreen() }),
GLS(ComposeDestination("gls-destination") { GLSScreen() }),
BPS(ComposeDestination("bps-destination") { BPSScreen() }),
PRX(ComposeDestination("prx-destination") { PRXScreen() }),
RSCS(ComposeDestination("rscs-destination") { RSCSScreen() }),
CGMS(ComposeDestination("cgms-destination") { CGMScreen() }),
UART(ComposeDestination("uart-destination") { UARTScreen() });
}

View File

@@ -2,9 +2,7 @@ package no.nordicsemi.android.nrftoolbox
import androidx.lifecycle.ViewModel
import dagger.hilt.android.lifecycle.HiltViewModel
import no.nordicsemi.android.navigation.ForwardDestination
import no.nordicsemi.android.navigation.NavigationManager
import no.nordicsemi.android.navigation.UUIDArgument
import javax.inject.Inject
@HiltViewModel
@@ -13,9 +11,6 @@ class HomeViewModel @Inject constructor(
) : ViewModel() {
fun openProfile(destination: ProfileDestination) {
navigationManager.navigateTo(
ForwardDestination(destination.destination.id),
UUIDArgument(destination.destination.id, destination.uuid)
)
navigationManager.navigateTo(destination.destination.id)
}
}

View File

@@ -7,6 +7,7 @@ import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.Surface
import androidx.compose.ui.Modifier
import dagger.hilt.android.AndroidEntryPoint
import no.nordicsemi.android.gls.GLSDestinations
import no.nordicsemi.android.material.you.NordicActivity
import no.nordicsemi.android.material.you.NordicTheme
import no.nordicsemi.android.navigation.NavigationView
@@ -24,7 +25,7 @@ class MainActivity : NordicActivity() {
color = MaterialTheme.colorScheme.surface,
modifier = Modifier.fillMaxSize()
) {
NavigationView(HomeDestinations + ProfileDestinations + ScannerDestinations)
NavigationView(HomeDestinations + ProfileDestinations + ScannerDestinations + GLSDestinations)
}
}
}