Remember flows (#4533)
* Add Konsist test to ensure that the result of a function returning a flow is remembered. * Remember flows before they are collected by state. * Fix compilation issue * Make isOnline a val. * Make selectedUsers() a val. * Make flow() a val. * Make getUserConsent(), didAskUserConsent() and getAnalyticsId() some val. * Remove Timeline.paginationStatus() and replace by direct access to the underlined flow. * Simplify test * userConsentFlow must be initialized before because it's used in observeUserConsent * Fix test compilation
This commit is contained in:
parent
e557ee2c77
commit
a230b83e99
52 changed files with 221 additions and 172 deletions
|
|
@ -13,6 +13,7 @@ import androidx.compose.runtime.LaunchedEffect
|
|||
import androidx.compose.runtime.collectAsState
|
||||
import androidx.compose.runtime.getValue
|
||||
import androidx.compose.runtime.mutableStateOf
|
||||
import androidx.compose.runtime.remember
|
||||
import androidx.compose.runtime.rememberCoroutineScope
|
||||
import androidx.compose.runtime.saveable.rememberSaveable
|
||||
import com.google.accompanist.permissions.ExperimentalPermissionsApi
|
||||
|
|
@ -56,13 +57,13 @@ class DefaultPermissionsPresenter @AssistedInject constructor(
|
|||
|
||||
// To reset the store: ResetStore()
|
||||
|
||||
val isAlreadyDenied: Boolean by permissionsStore
|
||||
.isPermissionDenied(permission)
|
||||
.collectAsState(initial = false)
|
||||
val isAlreadyDenied: Boolean by remember {
|
||||
permissionsStore.isPermissionDenied(permission)
|
||||
}.collectAsState(initial = false)
|
||||
|
||||
val isAlreadyAsked: Boolean by permissionsStore
|
||||
.isPermissionAsked(permission)
|
||||
.collectAsState(initial = false)
|
||||
val isAlreadyAsked: Boolean by remember {
|
||||
permissionsStore.isPermissionAsked(permission)
|
||||
}.collectAsState(initial = false)
|
||||
|
||||
var permissionState: PermissionState? = null
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue