2020-04-05 11:50:47 -07:00
|
|
|
package com.geeksville.mesh.ui
|
|
|
|
|
|
2020-04-08 09:53:04 -07:00
|
|
|
/*
|
2020-04-05 11:50:47 -07:00
|
|
|
import androidx.compose.Composable
|
|
|
|
|
import androidx.ui.core.ContextAmbient
|
2020-04-05 22:17:40 -07:00
|
|
|
import androidx.ui.foundation.Text
|
2020-04-05 11:50:47 -07:00
|
|
|
import androidx.ui.layout.Column
|
|
|
|
|
import androidx.ui.layout.LayoutPadding
|
|
|
|
|
import androidx.ui.layout.Row
|
|
|
|
|
import androidx.ui.material.Button
|
|
|
|
|
import androidx.ui.unit.dp
|
|
|
|
|
import com.geeksville.mesh.R
|
|
|
|
|
import com.geeksville.mesh.model.NodeDB
|
|
|
|
|
import com.geeksville.mesh.model.UIState
|
|
|
|
|
import com.geeksville.mesh.service.MeshService
|
|
|
|
|
import com.geeksville.mesh.service.RadioInterfaceService
|
|
|
|
|
import com.geeksville.mesh.service.SoftwareUpdateService
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@Composable
|
|
|
|
|
fun UsersContent() {
|
|
|
|
|
Column {
|
|
|
|
|
Row {
|
|
|
|
|
fun connected() = UIState.isConnected.value != MeshService.ConnectionState.DISCONNECTED
|
|
|
|
|
VectorImage(
|
|
|
|
|
id = if (connected()) R.drawable.cloud_on else R.drawable.cloud_off,
|
|
|
|
|
tint = palette.onBackground,
|
|
|
|
|
modifier = LayoutPadding(start = 8.dp)
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
Column {
|
|
|
|
|
|
|
|
|
|
Text(
|
|
|
|
|
when (UIState.isConnected.value) {
|
|
|
|
|
MeshService.ConnectionState.CONNECTED -> "Connected"
|
|
|
|
|
MeshService.ConnectionState.DISCONNECTED -> "Disconnected"
|
|
|
|
|
MeshService.ConnectionState.DEVICE_SLEEP -> "Power Saving"
|
|
|
|
|
},
|
|
|
|
|
modifier = LayoutPadding(start = 8.dp)
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
if (false) { // hide the firmware update button for now, it is kinda ugly and users don't need it yet
|
|
|
|
|
/// Create a software update button
|
|
|
|
|
val context = ContextAmbient.current
|
|
|
|
|
RadioInterfaceService.getBondedDeviceAddress(context)?.let { macAddress ->
|
|
|
|
|
Button(
|
|
|
|
|
onClick = {
|
|
|
|
|
SoftwareUpdateService.enqueueWork(
|
|
|
|
|
context,
|
|
|
|
|
SoftwareUpdateService.startUpdateIntent(macAddress)
|
|
|
|
|
)
|
|
|
|
|
}
|
|
|
|
|
) {
|
|
|
|
|
Text(text = "Update firmware")
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
NodeDB.nodes.values.forEach {
|
|
|
|
|
NodeInfoCard(it)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/* FIXME - doens't work yet - probably because I'm not using release keys
|
|
|
|
|
// If account is null, then show the signin button, otherwise
|
|
|
|
|
val context = ambient(ContextAmbient)
|
|
|
|
|
val account = GoogleSignIn.getLastSignedInAccount(context)
|
|
|
|
|
if (account != null)
|
|
|
|
|
Text("We have an account")
|
|
|
|
|
else {
|
|
|
|
|
Text("No account yet")
|
|
|
|
|
if (context is Activity) {
|
|
|
|
|
Button("Google sign-in", onClick = {
|
|
|
|
|
val signInIntent: Intent = UIState.googleSignInClient.signInIntent
|
|
|
|
|
context.startActivityForResult(signInIntent, MainActivity.RC_SIGN_IN)
|
|
|
|
|
})
|
|
|
|
|
}
|
|
|
|
|
} */
|
|
|
|
|
}
|
|
|
|
|
}
|
2020-04-08 09:53:04 -07:00
|
|
|
|
|
|
|
|
*/
|