UX cleanup: room details (#2816)

* UX cleanup: room details screen

Add new CTA buttons for Invite and Call actions

* Update screenshots

* Fix maestro

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
This commit is contained in:
Jorge Martin Espinosa 2024-05-08 11:42:33 +02:00 committed by GitHub
parent d86b7d24db
commit 46b22d7db7
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
34 changed files with 149 additions and 94 deletions

View file

@ -24,6 +24,7 @@ import androidx.compose.foundation.layout.Spacer
import androidx.compose.foundation.layout.height
import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.layout.width
import androidx.compose.foundation.layout.widthIn
import androidx.compose.material.ripple.rememberRipple
import androidx.compose.material3.LocalContentColor
import androidx.compose.material3.MaterialTheme
@ -53,12 +54,14 @@ fun MainActionButton(
val ripple = rememberRipple(bounded = false)
val interactionSource = remember { MutableInteractionSource() }
Column(
modifier.clickable(
enabled = enabled,
interactionSource = interactionSource,
onClick = onClick,
indication = ripple
),
modifier
.clickable(
enabled = enabled,
interactionSource = interactionSource,
onClick = onClick,
indication = ripple
)
.widthIn(min = 76.dp),
horizontalAlignment = Alignment.CenterHorizontally,
) {
val tintColor = if (enabled) LocalContentColor.current else MaterialTheme.colorScheme.secondary

View file

@ -49,6 +49,13 @@ fun MatrixRoom.canRedactOtherAsState(updateKey: Long): State<Boolean> {
}
}
@Composable
fun MatrixRoom.canCall(updateKey: Long): State<Boolean> {
return produceState(initialValue = false, key1 = updateKey) {
value = canUserJoinCall(sessionId).getOrElse { false }
}
}
@Composable
fun MatrixRoom.isOwnUserAdmin(): Boolean {
val roomInfo by roomInfoFlow.collectAsState(initial = null)

View file

@ -34,6 +34,7 @@
<string name="action_accept">"Accept"</string>
<string name="action_add_to_timeline">"Add to timeline"</string>
<string name="action_back">"Back"</string>
<string name="action_call">"Call"</string>
<string name="action_cancel">"Cancel"</string>
<string name="action_choose_photo">"Choose photo"</string>
<string name="action_clear">"Clear"</string>