diff options
| author | 2024-06-05 17:27:36 +0800 | |
|---|---|---|
| committer | 2024-06-06 17:02:15 +0800 | |
| commit | 367dcd84880d9ab1db5418c3962618bf814ac59f (patch) | |
| tree | bb45bf0d3a64b57172a3cd520d653f53521cdcbd | |
| parent | 737f1b378650def2ff36450cb37ae55eacf6efb4 (diff) | |
Return Job in collectLatestWithLifecycle
To enable canceling the flow collection.
Bug: 339226604
Test: manual - Choose network
Change-Id: Id10f7abaaf67a67e242a9d1d99b465613d4b7b01
Merged-In: Id10f7abaaf67a67e242a9d1d99b465613d4b7b01
| -rw-r--r-- | packages/SettingsLib/Spa/spa/src/com/android/settingslib/spa/framework/util/Flows.kt | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/packages/SettingsLib/Spa/spa/src/com/android/settingslib/spa/framework/util/Flows.kt b/packages/SettingsLib/Spa/spa/src/com/android/settingslib/spa/framework/util/Flows.kt index 83cb549bb3a2..61b8b7f73754 100644 --- a/packages/SettingsLib/Spa/spa/src/com/android/settingslib/spa/framework/util/Flows.kt +++ b/packages/SettingsLib/Spa/spa/src/com/android/settingslib/spa/framework/util/Flows.kt @@ -20,6 +20,7 @@ import androidx.lifecycle.Lifecycle import androidx.lifecycle.LifecycleOwner import androidx.lifecycle.lifecycleScope import androidx.lifecycle.repeatOnLifecycle +import kotlinx.coroutines.Job import kotlinx.coroutines.flow.Flow import kotlinx.coroutines.flow.collectLatest import kotlinx.coroutines.flow.combine @@ -61,10 +62,8 @@ fun <T> Flow<T>.collectLatestWithLifecycle( lifecycleOwner: LifecycleOwner, minActiveState: Lifecycle.State = Lifecycle.State.STARTED, action: suspend (value: T) -> Unit, -) { - lifecycleOwner.lifecycleScope.launch { - lifecycleOwner.repeatOnLifecycle(minActiveState) { - collectLatest(action) - } +): Job = lifecycleOwner.lifecycleScope.launch { + lifecycleOwner.repeatOnLifecycle(minActiveState) { + collectLatest(action) } } |