|
|
|
@ -9,6 +9,7 @@ import androidx.compose.foundation.layout.* |
|
|
|
|
import androidx.compose.foundation.lazy.LazyColumn |
|
|
|
|
import androidx.compose.foundation.lazy.items |
|
|
|
|
import androidx.compose.foundation.shape.CircleShape |
|
|
|
|
import androidx.compose.material.Colors |
|
|
|
|
import androidx.compose.material.Text |
|
|
|
|
import androidx.compose.runtime.* |
|
|
|
|
import androidx.compose.ui.Alignment |
|
|
|
@ -18,8 +19,8 @@ import androidx.compose.ui.graphics.Color |
|
|
|
|
import androidx.compose.ui.graphics.Shape |
|
|
|
|
import androidx.compose.ui.layout.ContentScale |
|
|
|
|
import androidx.compose.ui.platform.LocalContext |
|
|
|
|
import androidx.compose.ui.platform.LocalLifecycleOwner |
|
|
|
|
import androidx.compose.ui.text.style.TextAlign |
|
|
|
|
import androidx.compose.ui.tooling.preview.Preview |
|
|
|
|
import androidx.compose.ui.unit.dp |
|
|
|
|
import androidx.compose.ui.unit.sp |
|
|
|
|
import coil.compose.AsyncImage |
|
|
|
@ -94,7 +95,19 @@ fun Activity.RoomEntry(room: RoomSummary) { |
|
|
|
|
}.fillMaxWidth()) { |
|
|
|
|
val name = remember { room.displayName } |
|
|
|
|
val lastContent = remember { room.latestPreviewableEvent } |
|
|
|
|
Avatar(room.avatarUrl, AppState.Preferences.dmAvatarSize, name = room.displayName) |
|
|
|
|
Box { |
|
|
|
|
Avatar(room.avatarUrl, AppState.Preferences.dmAvatarSize, name = room.displayName) |
|
|
|
|
if (room.isDirect) { |
|
|
|
|
val onlineColor = if (room.directUserPresence?.isCurrentlyActive == true) Color.Green else Color.Gray |
|
|
|
|
Box( |
|
|
|
|
modifier = Modifier.size((AppState.Preferences.dmAvatarSize * 0.25).dp).clip(CircleShape) |
|
|
|
|
.background(onlineColor).align(Alignment.BottomEnd), |
|
|
|
|
contentAlignment = Alignment.Center |
|
|
|
|
) { |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Column { |
|
|
|
|
Text(name, fontSize = 18.sp) |
|
|
|
|