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

Commit 234100e4 authored by Nicolo' Mazzucato's avatar Nicolo' Mazzucato
Browse files

Include NotificationRebindingTracker as CoreStartable

The class was left out form the dagger graph, causing some rebinding tracking to never finish if we were moving the shade back and forth very fast.

Bug: 362719719
Bug: 390371121
Test: NotificationRebindingTracker + stress tested on device.
Flag: com.android.systemui.shade_window_goes_around
Change-Id: I049adad783f9356034e0ba675df9c7b132f7825c
parent 555f6014
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -86,6 +86,7 @@ import com.android.systemui.statusbar.notification.promoted.shared.model.Promote
import com.android.systemui.statusbar.notification.row.NotificationEntryProcessorFactory;
import com.android.systemui.statusbar.notification.row.NotificationEntryProcessorFactoryLooperImpl;
import com.android.systemui.statusbar.notification.row.NotificationGutsManager;
import com.android.systemui.statusbar.notification.row.NotificationRebindingTrackerModule;
import com.android.systemui.statusbar.notification.row.OnUserInteractionCallback;
import com.android.systemui.statusbar.notification.row.ui.viewmodel.ActivatableNotificationViewModelModule;
import com.android.systemui.statusbar.notification.stack.MagneticNotificationRowManager;
@@ -123,6 +124,7 @@ import javax.inject.Provider;
        NotificationMemoryModule.class,
        NotificationStatsLoggerModule.class,
        NotificationsLogModule.class,
        NotificationRebindingTrackerModule.class,
})
public interface NotificationsModule {
    @Binds
+20 −0
Original line number Diff line number Diff line
@@ -23,7 +23,12 @@ 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.shade.shared.flag.ShadeWindowGoesAround
import com.android.systemui.statusbar.notification.domain.interactor.ActiveNotificationsInteractor
import dagger.Module
import dagger.Provides
import dagger.multibindings.ClassKey
import dagger.multibindings.IntoMap
import javax.inject.Inject
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.flow.Flow
@@ -107,3 +112,18 @@ constructor(
        fun onFinished()
    }
}

@Module
object NotificationRebindingTrackerModule {

    @Provides
    @IntoMap
    @ClassKey(NotificationRebindingTrackerModule::class)
    fun provideNotificationRebindingTracker(impl: NotificationRebindingTracker): CoreStartable {
        return if (ShadeWindowGoesAround.isEnabled) {
            impl
        } else {
            return CoreStartable.NOP
        }
    }
}