Loading packages/SystemUI/src/com/android/systemui/flags/ConditionalRestarter.kt +4 −4 Original line number Diff line number Diff line Loading @@ -17,9 +17,9 @@ package com.android.systemui.flags import android.util.Log import com.android.systemui.dagger.qualifiers.Application import com.android.systemui.dagger.qualifiers.Background import com.android.systemui.flags.ConditionalRestarter.Condition import com.android.systemui.util.kotlin.UnflaggedApplication import com.android.systemui.util.kotlin.UnflaggedBackground import java.util.concurrent.TimeUnit import javax.inject.Inject import javax.inject.Named Loading @@ -39,8 +39,8 @@ constructor( private val systemExitRestarter: SystemExitRestarter, private val conditions: Set<@JvmSuppressWildcards Condition>, @Named(RESTART_DELAY) private val restartDelaySec: Long, @UnflaggedApplication private val applicationScope: CoroutineScope, @UnflaggedBackground private val backgroundDispatcher: CoroutineContext, @Application private val applicationScope: CoroutineScope, @Background private val backgroundDispatcher: CoroutineContext, ) : Restarter { private var pendingReason = "" Loading packages/SystemUI/src/com/android/systemui/flags/Flags.kt +0 −4 Original line number Diff line number Diff line Loading @@ -604,10 +604,6 @@ object Flags { val WARN_ON_BLOCKING_BINDER_TRANSACTIONS = unreleasedFlag("warn_on_blocking_binder_transactions") @JvmField val COROUTINE_TRACING = unreleasedFlag("coroutine_tracing") // TODO(b/283071711): Tracking bug @JvmField val TRIM_RESOURCES_WITH_BACKGROUND_TRIM_AT_LOCK = Loading packages/SystemUI/src/com/android/systemui/util/kotlin/CoroutinesModule.kt +6 −49 Original line number Diff line number Diff line Loading @@ -5,8 +5,7 @@ import com.android.systemui.dagger.qualifiers.Application import com.android.systemui.dagger.qualifiers.Background import com.android.systemui.dagger.qualifiers.Main import com.android.systemui.dagger.qualifiers.Tracing import com.android.systemui.flags.FeatureFlagsClassic import com.android.systemui.flags.Flags import com.android.systemui.Flags.coroutineTracing import com.android.app.tracing.TraceUtils.Companion.coroutineTracingIsEnabled import com.android.app.tracing.TraceContextElement import dagger.Module Loading @@ -15,32 +14,9 @@ import kotlinx.coroutines.CoroutineDispatcher import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.ExperimentalCoroutinesApi import javax.inject.Qualifier import kotlin.coroutines.CoroutineContext import kotlin.coroutines.EmptyCoroutineContext /** Key associated with a [Boolean] flag that enables or disables the coroutine tracing feature. */ @Qualifier annotation class CoroutineTracingEnabledKey /** * Same as [@Application], but does not make use of flags. This should only be used when early usage * of [@Application] would introduce a circular dependency on [FeatureFlagsClassic]. */ @Qualifier @MustBeDocumented @Retention(AnnotationRetention.RUNTIME) annotation class UnflaggedApplication /** * Same as [@Background], but does not make use of flags. This should only be used when early usage * of [@Application] would introduce a circular dependency on [FeatureFlagsClassic]. */ @Qualifier @MustBeDocumented @Retention(AnnotationRetention.RUNTIME) annotation class UnflaggedBackground /** Providers for various coroutines-related constructs. */ @Module class CoroutinesModule { Loading @@ -51,11 +27,6 @@ class CoroutinesModule { @Main dispatcherContext: CoroutineContext, ): CoroutineScope = CoroutineScope(dispatcherContext) @Provides @SysUISingleton @UnflaggedApplication fun unflaggedApplicationScope(): CoroutineScope = CoroutineScope(Dispatchers.Main.immediate) @Provides @SysUISingleton @Main Loading Loading @@ -98,28 +69,14 @@ class CoroutinesModule { return Dispatchers.IO + tracingCoroutineContext } @Provides @UnflaggedBackground @SysUISingleton fun unflaggedBackgroundCoroutineContext(): CoroutineContext { return Dispatchers.IO } @OptIn(ExperimentalCoroutinesApi::class) @Provides @Tracing @SysUISingleton fun tracingCoroutineContext( @CoroutineTracingEnabledKey enableTracing: Boolean ): CoroutineContext = if (enableTracing) TraceContextElement() else EmptyCoroutineContext companion object { @[Provides CoroutineTracingEnabledKey] fun provideIsCoroutineTracingEnabledKey(featureFlags: FeatureFlagsClassic): Boolean { return if (featureFlags.isEnabled(Flags.COROUTINE_TRACING)) { fun tracingCoroutineContext(): CoroutineContext { return if (coroutineTracing()) { coroutineTracingIsEnabled = true true } else false } TraceContextElement() } else EmptyCoroutineContext } } Loading
packages/SystemUI/src/com/android/systemui/flags/ConditionalRestarter.kt +4 −4 Original line number Diff line number Diff line Loading @@ -17,9 +17,9 @@ package com.android.systemui.flags import android.util.Log import com.android.systemui.dagger.qualifiers.Application import com.android.systemui.dagger.qualifiers.Background import com.android.systemui.flags.ConditionalRestarter.Condition import com.android.systemui.util.kotlin.UnflaggedApplication import com.android.systemui.util.kotlin.UnflaggedBackground import java.util.concurrent.TimeUnit import javax.inject.Inject import javax.inject.Named Loading @@ -39,8 +39,8 @@ constructor( private val systemExitRestarter: SystemExitRestarter, private val conditions: Set<@JvmSuppressWildcards Condition>, @Named(RESTART_DELAY) private val restartDelaySec: Long, @UnflaggedApplication private val applicationScope: CoroutineScope, @UnflaggedBackground private val backgroundDispatcher: CoroutineContext, @Application private val applicationScope: CoroutineScope, @Background private val backgroundDispatcher: CoroutineContext, ) : Restarter { private var pendingReason = "" Loading
packages/SystemUI/src/com/android/systemui/flags/Flags.kt +0 −4 Original line number Diff line number Diff line Loading @@ -604,10 +604,6 @@ object Flags { val WARN_ON_BLOCKING_BINDER_TRANSACTIONS = unreleasedFlag("warn_on_blocking_binder_transactions") @JvmField val COROUTINE_TRACING = unreleasedFlag("coroutine_tracing") // TODO(b/283071711): Tracking bug @JvmField val TRIM_RESOURCES_WITH_BACKGROUND_TRIM_AT_LOCK = Loading
packages/SystemUI/src/com/android/systemui/util/kotlin/CoroutinesModule.kt +6 −49 Original line number Diff line number Diff line Loading @@ -5,8 +5,7 @@ import com.android.systemui.dagger.qualifiers.Application import com.android.systemui.dagger.qualifiers.Background import com.android.systemui.dagger.qualifiers.Main import com.android.systemui.dagger.qualifiers.Tracing import com.android.systemui.flags.FeatureFlagsClassic import com.android.systemui.flags.Flags import com.android.systemui.Flags.coroutineTracing import com.android.app.tracing.TraceUtils.Companion.coroutineTracingIsEnabled import com.android.app.tracing.TraceContextElement import dagger.Module Loading @@ -15,32 +14,9 @@ import kotlinx.coroutines.CoroutineDispatcher import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.ExperimentalCoroutinesApi import javax.inject.Qualifier import kotlin.coroutines.CoroutineContext import kotlin.coroutines.EmptyCoroutineContext /** Key associated with a [Boolean] flag that enables or disables the coroutine tracing feature. */ @Qualifier annotation class CoroutineTracingEnabledKey /** * Same as [@Application], but does not make use of flags. This should only be used when early usage * of [@Application] would introduce a circular dependency on [FeatureFlagsClassic]. */ @Qualifier @MustBeDocumented @Retention(AnnotationRetention.RUNTIME) annotation class UnflaggedApplication /** * Same as [@Background], but does not make use of flags. This should only be used when early usage * of [@Application] would introduce a circular dependency on [FeatureFlagsClassic]. */ @Qualifier @MustBeDocumented @Retention(AnnotationRetention.RUNTIME) annotation class UnflaggedBackground /** Providers for various coroutines-related constructs. */ @Module class CoroutinesModule { Loading @@ -51,11 +27,6 @@ class CoroutinesModule { @Main dispatcherContext: CoroutineContext, ): CoroutineScope = CoroutineScope(dispatcherContext) @Provides @SysUISingleton @UnflaggedApplication fun unflaggedApplicationScope(): CoroutineScope = CoroutineScope(Dispatchers.Main.immediate) @Provides @SysUISingleton @Main Loading Loading @@ -98,28 +69,14 @@ class CoroutinesModule { return Dispatchers.IO + tracingCoroutineContext } @Provides @UnflaggedBackground @SysUISingleton fun unflaggedBackgroundCoroutineContext(): CoroutineContext { return Dispatchers.IO } @OptIn(ExperimentalCoroutinesApi::class) @Provides @Tracing @SysUISingleton fun tracingCoroutineContext( @CoroutineTracingEnabledKey enableTracing: Boolean ): CoroutineContext = if (enableTracing) TraceContextElement() else EmptyCoroutineContext companion object { @[Provides CoroutineTracingEnabledKey] fun provideIsCoroutineTracingEnabledKey(featureFlags: FeatureFlagsClassic): Boolean { return if (featureFlags.isEnabled(Flags.COROUTINE_TRACING)) { fun tracingCoroutineContext(): CoroutineContext { return if (coroutineTracing()) { coroutineTracingIsEnabled = true true } else false } TraceContextElement() } else EmptyCoroutineContext } }