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

Commit 951440ea authored by Behnam Heydarshahi's avatar Behnam Heydarshahi
Browse files

Log tile binding

Bug: 380635032
Flag: EXEMPT log only
Test: EXEMPT log only
Change-Id: I92a5e6aa8f70a441655c72e01fa93ee62d00d4ee
parent f70c5a8b
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -40,6 +40,7 @@ import com.android.systemui.qs.tiles.impl.custom.customTileRepository
import com.android.systemui.qs.tiles.impl.custom.customTileServiceInteractor
import com.android.systemui.qs.tiles.impl.custom.customTileSpec
import com.android.systemui.qs.tiles.impl.custom.data.entity.CustomTileDefaults
import com.android.systemui.qs.tiles.impl.custom.qsTileLogger
import com.android.systemui.testKosmos
import com.android.systemui.user.data.repository.fakeUserRepository
import com.android.systemui.user.data.repository.userRepository
@@ -72,6 +73,7 @@ class CustomTileDataInteractorTest : SysuiTestCase() {
                packageUpdatesRepository = customTilePackagesUpdatesRepository,
                userRepository = userRepository,
                tileScope = testScope.backgroundScope,
                qsTileLogger = kosmos.qsTileLogger,
            )
        }

@@ -152,7 +154,7 @@ class CustomTileDataInteractorTest : SysuiTestCase() {
                    collectLastValue(
                        underTest.tileData(
                            TEST_USER_1.userHandle,
                            flowOf(DataUpdateTrigger.InitialRequest)
                            flowOf(DataUpdateTrigger.InitialRequest),
                        )
                    )
                runCurrent()
+3 −0
Original line number Diff line number Diff line
@@ -22,6 +22,7 @@ import com.android.app.tracing.coroutines.launchTraced as launch
import com.android.systemui.qs.pipeline.shared.TileSpec
import com.android.systemui.qs.tiles.base.interactor.DataUpdateTrigger
import com.android.systemui.qs.tiles.base.interactor.QSTileDataInteractor
import com.android.systemui.qs.tiles.base.logging.QSTileLogger
import com.android.systemui.qs.tiles.impl.custom.data.entity.CustomTileDefaults
import com.android.systemui.qs.tiles.impl.custom.data.repository.CustomTileDefaultsRepository
import com.android.systemui.qs.tiles.impl.custom.data.repository.CustomTilePackageUpdatesRepository
@@ -58,6 +59,7 @@ constructor(
    private val packageUpdatesRepository: CustomTilePackageUpdatesRepository,
    userRepository: UserRepository,
    @QSTileScope private val tileScope: CoroutineScope,
    qsTileLogger: QSTileLogger,
) : QSTileDataInteractor<CustomTileDataModel> {

    private val mutableUserFlow = MutableStateFlow(userRepository.getSelectedUserInfo().userHandle)
@@ -71,6 +73,7 @@ constructor(
                    // binding the service might access it
                    customTileInteractor.initForUser(user)
                    // Bind the TileService for not active tile
                    qsTileLogger.logInfo(tileSpec, "onBindingFlow for user:$user")
                    serviceInteractor.bindOnStart()

                    packageUpdatesRepository
+5 −1
Original line number Diff line number Diff line
@@ -25,6 +25,7 @@ import android.os.UserHandle
import android.service.quicksettings.IQSTileService
import android.service.quicksettings.Tile
import android.service.quicksettings.TileService
import com.android.app.tracing.coroutines.launchTraced as launch
import com.android.systemui.plugins.ActivityStarter
import com.android.systemui.qs.external.CustomTileInterface
import com.android.systemui.qs.external.TileServiceManager
@@ -43,7 +44,6 @@ import kotlinx.coroutines.channels.produce
import kotlinx.coroutines.flow.Flow
import kotlinx.coroutines.flow.MutableSharedFlow
import kotlinx.coroutines.flow.MutableStateFlow
import com.android.app.tracing.coroutines.launchTraced as launch

/**
 * Communicates with [TileService] via [TileServiceManager] and [IQSTileService]. This interactor is
@@ -74,6 +74,7 @@ constructor(

    val callingAppIds: Flow<Int>
        get() = tileReceivingInterface.mutableCallingAppIds

    val refreshEvents: Flow<Unit>
        get() = tileReceivingInterface.mutableRefreshEvents

@@ -146,6 +147,7 @@ constructor(

    private fun getTileServiceManager(): TileServiceManager =
        synchronized(tileServices) {
            qsTileLogger.logInfo(tileSpec, "getTileServiceManager called")
            if (tileServiceManager == null) {
                tileServices
                    .getTileWrapper(tileReceivingInterface)
@@ -175,8 +177,10 @@ constructor(

        override val user: Int
            get() = currentUser.identifier

        override val qsTile: Tile
            get() = customTileInteractor.getTile(currentUser)

        override val component: ComponentName = tileSpec.componentName

        val mutableCallingAppIds = MutableStateFlow(Process.INVALID_UID)