diff --git a/android/src/main/java/com/tailscale/ipn/ui/view/SettingsView.kt b/android/src/main/java/com/tailscale/ipn/ui/view/SettingsView.kt
index 7e569d4..af6045e 100644
--- a/android/src/main/java/com/tailscale/ipn/ui/view/SettingsView.kt
+++ b/android/src/main/java/com/tailscale/ipn/ui/view/SettingsView.kt
@@ -21,6 +21,7 @@ import androidx.compose.ui.text.SpanStyle
import androidx.compose.ui.text.buildAnnotatedString
import androidx.compose.ui.text.style.TextDecoration
import androidx.compose.ui.text.withStyle
+import androidx.compose.ui.unit.dp
import androidx.lifecycle.viewmodel.compose.viewModel
import com.tailscale.ipn.BuildConfig
import com.tailscale.ipn.R
@@ -49,6 +50,7 @@ fun SettingsView(settingsNav: SettingsNav, viewModel: SettingsViewModel = viewMo
onClick = settingsNav.onNavigateToUserSwitcher)
if (isAdmin) {
+ Lists.ItemDivider()
AdminTextView { handler.openUri(Links.ADMIN_URL) }
}
@@ -150,9 +152,11 @@ fun AdminTextView(onNavigateToAdminConsole: () -> Unit) {
ListItem(
headlineContent = {
- ClickableText(
- text = adminStr,
- style = MaterialTheme.typography.bodyMedium,
- onClick = { onNavigateToAdminConsole() })
+ Box(modifier = Modifier.padding(vertical = 4.dp)) {
+ ClickableText(
+ text = adminStr,
+ style = MaterialTheme.typography.bodyMedium,
+ onClick = { onNavigateToAdminConsole() })
+ }
})
}
diff --git a/android/src/main/java/com/tailscale/ipn/ui/view/UserView.kt b/android/src/main/java/com/tailscale/ipn/ui/view/UserView.kt
index 578d41d..2279a8e 100644
--- a/android/src/main/java/com/tailscale/ipn/ui/view/UserView.kt
+++ b/android/src/main/java/com/tailscale/ipn/ui/view/UserView.kt
@@ -5,13 +5,20 @@ package com.tailscale.ipn.ui.view
import androidx.compose.foundation.clickable
import androidx.compose.foundation.layout.Box
+import androidx.compose.foundation.layout.offset
+import androidx.compose.material.icons.Icons
+import androidx.compose.material.icons.automirrored.filled.KeyboardArrowRight
+import androidx.compose.material3.Icon
import androidx.compose.material3.ListItem
+import androidx.compose.material3.ListItemColors
+import androidx.compose.material3.ListItemDefaults
import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.Text
import androidx.compose.runtime.Composable
import androidx.compose.ui.Modifier
import androidx.compose.ui.res.stringResource
import androidx.compose.ui.text.style.TextOverflow
+import androidx.compose.ui.unit.dp
import com.tailscale.ipn.R
import com.tailscale.ipn.ui.model.IpnLocal
import com.tailscale.ipn.ui.theme.minTextSize
@@ -33,13 +40,17 @@ enum class UserActionState {
@Composable
fun UserView(
profile: IpnLocal.LoginProfile?,
- onClick: () -> Unit = {},
- actionState: UserActionState = UserActionState.NONE
+ onClick: (() -> Unit)? = null,
+ colors: ListItemColors = ListItemDefaults.colors(),
+ actionState: UserActionState = UserActionState.NONE,
) {
Box {
+ var modifier: Modifier = Modifier
+ onClick?.let { modifier = modifier.clickable { it() } }
profile?.let {
ListItem(
- modifier = Modifier.clickable { onClick() },
+ modifier = modifier,
+ colors = colors,
leadingContent = { Avatar(profile = profile, size = 36) },
headlineContent = {
AutoResizingText(
@@ -59,14 +70,17 @@ fun UserView(
when (actionState) {
UserActionState.CURRENT -> CheckedIndicator()
UserActionState.SWITCHING -> SimpleActivityIndicator(size = 26)
- UserActionState.NAV -> Unit
+ UserActionState.NAV ->
+ Icon(
+ Icons.AutoMirrored.Filled.KeyboardArrowRight, null, Modifier.offset(x = 6.dp))
UserActionState.NONE -> Unit
}
})
}
?: run {
ListItem(
- modifier = Modifier.clickable { onClick() },
+ modifier = modifier,
+ colors = colors,
headlineContent = {
Text(
text = stringResource(id = R.string.accounts),
diff --git a/android/src/main/res/values/strings.xml b/android/src/main/res/values/strings.xml
index bef3719..62953c4 100644
--- a/android/src/main/res/values/strings.xml
+++ b/android/src/main/res/values/strings.xml
@@ -40,8 +40,8 @@
Settings
- You can manage your account from the admin console.
- View admin console
+ "Manage your tailnet settings in the "
+ admin console
About Tailscale
Bug report
Use Tailscale DNS
@@ -98,6 +98,7 @@
Unable to logout at this time. Please try again.
Error
Accounts
+ Manage accounts
Add another account…
Add account
Reauthenticate