diff options
2 files changed, 30 insertions, 2 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/data/NotificationSettingsRepositoryModule.kt b/packages/SystemUI/src/com/android/systemui/statusbar/notification/data/NotificationSettingsRepositoryModule.kt index af21e75da37e..d36412cf193e 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/data/NotificationSettingsRepositoryModule.kt +++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/data/NotificationSettingsRepositoryModule.kt @@ -16,17 +16,23 @@ package com.android.systemui.statusbar.notification.data +import com.android.systemui.CoreStartable import com.android.systemui.dagger.SysUISingleton +import com.android.systemui.dagger.qualifiers.Application import com.android.systemui.dagger.qualifiers.Background import com.android.systemui.settings.SecureSettingsRepositoryModule import com.android.systemui.settings.SystemSettingsRepositoryModule import com.android.systemui.shared.notifications.data.repository.NotificationSettingsRepository import com.android.systemui.shared.settings.data.repository.SecureSettingsRepository import com.android.systemui.shared.settings.data.repository.SystemSettingsRepository +import com.android.systemui.statusbar.notification.interruption.VisualInterruptionDecisionLogger import dagger.Module import dagger.Provides +import dagger.multibindings.ClassKey +import dagger.multibindings.IntoMap import kotlinx.coroutines.CoroutineDispatcher import kotlinx.coroutines.CoroutineScope +import kotlinx.coroutines.launch @Module(includes = [SecureSettingsRepositoryModule::class, SystemSettingsRepositoryModule::class]) object NotificationSettingsRepositoryModule { @@ -42,6 +48,19 @@ object NotificationSettingsRepositoryModule { backgroundScope, backgroundDispatcher, secureSettingsRepository, - systemSettingsRepository - ) + systemSettingsRepository) + + @Provides + @IntoMap + @ClassKey(NotificationSettingsRepository::class) + @SysUISingleton + fun provideCoreStartable( + @Application applicationScope: CoroutineScope, + repository: NotificationSettingsRepository, + logger: VisualInterruptionDecisionLogger + ) = CoreStartable { + applicationScope.launch { + repository.isCooldownEnabled.collect { value -> logger.logCooldownSetting(value) } + } + } } diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/interruption/VisualInterruptionDecisionLogger.kt b/packages/SystemUI/src/com/android/systemui/statusbar/notification/interruption/VisualInterruptionDecisionLogger.kt index b83259dce298..37ac7c4330af 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/interruption/VisualInterruptionDecisionLogger.kt +++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/interruption/VisualInterruptionDecisionLogger.kt @@ -102,6 +102,15 @@ constructor(@NotificationInterruptLog val buffer: LogBuffer) { { "AvalancheSuppressor: $str1" } ) } + + fun logCooldownSetting(isEnabled: Boolean) { + buffer.log( + TAG, + INFO, + { bool1 = isEnabled }, + { "Cooldown enabled: $isEnabled" } + ) + } } private const val TAG = "VisualInterruptionDecisionProvider" |