Avoid computing the boolean on each recomposition.

This commit is contained in:
Benoit Marty 2025-11-21 09:33:41 +01:00 committed by Benoit Marty
parent c814bf1a73
commit f03f64ad3b

View file

@ -12,6 +12,7 @@ import androidx.compose.runtime.Composable
import androidx.compose.runtime.LaunchedEffect
import androidx.compose.runtime.MutableState
import androidx.compose.runtime.collectAsState
import androidx.compose.runtime.derivedStateOf
import androidx.compose.runtime.getValue
import androidx.compose.runtime.mutableStateOf
import androidx.compose.runtime.produceState
@ -104,7 +105,11 @@ class ChangeRolesPresenter(
}
}
val hasPendingChanges = usersWithRole.value.toSet() != selectedUsers.value.toSet()
val hasPendingChanges by remember {
derivedStateOf {
usersWithRole.value.toSet() != selectedUsers.value.toSet()
}
}
val roomInfo by room.roomInfoFlow.collectAsState()
fun canChangeMemberRole(userId: UserId): Boolean {