diff --git a/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/ui/Tooltip.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/ui/Tooltip.kt index 3a1729d60a6663de6006820b25bbb837d567098b..932b7aef8a3ef5025a068d8525b1ee8231697087 100644 --- a/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/ui/Tooltip.kt +++ b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/ui/Tooltip.kt @@ -55,6 +55,6 @@ fun Tooltip( }, delayMillis = delayMillis, tooltipPlacement = tooltipPlacement, - modifier = modifier, + modifier = modifier, // todo: use tooltip text for semantic description content = content, ) diff --git a/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/ui/TrustIndicator.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/ui/TrustIndicator.kt index 3cecbd9dfc03f83ef15ce971df3bbc360bd45a4f..608d7a0e85ea2c35605bd008d680a18288baf438 100644 --- a/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/ui/TrustIndicator.kt +++ b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/ui/TrustIndicator.kt @@ -18,6 +18,7 @@ package org.briarproject.briar.desktop.ui +import androidx.compose.foundation.ExperimentalFoundationApi import androidx.compose.foundation.layout.size import androidx.compose.material.Icon import androidx.compose.material.MaterialTheme @@ -38,8 +39,17 @@ import org.briarproject.briar.desktop.theme.Orange500 import org.briarproject.briar.desktop.theme.Red500 import org.briarproject.briar.desktop.utils.InternationalizationUtils.i18n +@OptIn(ExperimentalFoundationApi::class) @Composable -fun TrustIndicator(status: AuthorInfo.Status) { +fun TrustIndicator(status: AuthorInfo.Status) = Tooltip( + text = when (status) { + AuthorInfo.Status.NONE -> error("Unexpected status: $status") + AuthorInfo.Status.UNKNOWN -> i18n("peer.trust.stranger") + AuthorInfo.Status.UNVERIFIED -> i18n("peer.trust.unverified") + AuthorInfo.Status.VERIFIED -> i18n("peer.trust.verified") + AuthorInfo.Status.OURSELVES -> i18n("peer.trust.ourselves") + } +) { if (status == AuthorInfo.Status.OURSELVES) { Icon( imageVector = Icons.Filled.Person, @@ -50,7 +60,7 @@ fun TrustIndicator(status: AuthorInfo.Status) { } else { val gray = MaterialTheme.colors.onSurface val (first, second, third) = when (status) { - AuthorInfo.Status.NONE -> return + AuthorInfo.Status.NONE -> error("Unexpected status: $status") AuthorInfo.Status.UNKNOWN -> Triple(Red500, gray, gray) AuthorInfo.Status.UNVERIFIED -> Triple(Orange500, Orange500, gray) AuthorInfo.Status.VERIFIED -> Triple(Lime500, Lime500, Lime500) diff --git a/briar-desktop/src/main/resources/strings/BriarDesktop.properties b/briar-desktop/src/main/resources/strings/BriarDesktop.properties index bf6b68a8463f7bc2763d24db6ce00a503f0eb07b..c0888d808d1bcd84c3076001179cac8689746241 100644 --- a/briar-desktop/src/main/resources/strings/BriarDesktop.properties +++ b/briar-desktop/src/main/resources/strings/BriarDesktop.properties @@ -202,6 +202,12 @@ blog.invitation.response.declined.auto=The blog invitation from {0} was automati blog.invitation.response.accepted.received={0} accepted the blog invitation. blog.invitation.response.declined.received={0} declined the blog invitation. +# Peer trust level +peer.trust.unverified=Unverified contact +peer.trust.verified=Verified contact +peer.trust.ourselves=Me +peer.trust.stranger=Stranger + # Main main.title=Briar Desktop