Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 51c78ff1 authored by Chaohui Wang's avatar Chaohui Wang Committed by Android (Google) Code Review
Browse files

Merge "Update the summary when Wi-Fi calling ready" into main

parents 1b3c21ef d48cf866
Loading
Loading
Loading
Loading
+4 −13
Original line number Diff line number Diff line
@@ -22,10 +22,7 @@ import android.telecom.TelecomManager
import android.telephony.SubscriptionManager
import android.telephony.TelephonyManager
import android.telephony.ims.ImsMmTelManager
import androidx.lifecycle.Lifecycle
import androidx.lifecycle.LifecycleOwner
import androidx.lifecycle.lifecycleScope
import androidx.lifecycle.repeatOnLifecycle
import androidx.preference.Preference
import androidx.preference.PreferenceScreen
import com.android.settings.R
@@ -33,7 +30,6 @@ import com.android.settings.network.telephony.wificalling.WifiCallingRepository
import com.android.settingslib.spa.framework.util.collectLatestWithLifecycle
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.flow.Flow
import kotlinx.coroutines.launch
import kotlinx.coroutines.withContext

/**
@@ -81,15 +77,10 @@ open class WifiCallingPreferenceController @JvmOverloads constructor(

    override fun onViewCreated(viewLifecycleOwner: LifecycleOwner) {
        wifiCallingRepositoryFactory(mSubId).wifiCallingReadyFlow()
            .collectLatestWithLifecycle(viewLifecycleOwner) {
                preference.isVisible = it
                callingPreferenceCategoryController.updateChildVisible(preferenceKey, it)
            }

        viewLifecycleOwner.lifecycleScope.launch {
            viewLifecycleOwner.repeatOnLifecycle(Lifecycle.State.STARTED) {
                update()
            }
            .collectLatestWithLifecycle(viewLifecycleOwner) { isReady ->
                preference.isVisible = isReady
                callingPreferenceCategoryController.updateChildVisible(preferenceKey, isReady)
                if (isReady) update()
            }

        callStateFlowFactory(mSubId).collectLatestWithLifecycle(viewLifecycleOwner) {