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

Commit 965eb592 authored by Treehugger Robot's avatar Treehugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Ensure that NotificationStackAppearanceViewBinder updates happen...

Merge "Ensure that NotificationStackAppearanceViewBinder updates happen synchronously on the main thread" into main
parents e8aa09dc 7226caf4
Loading
Loading
Loading
Loading
+3 −2
Original line number Diff line number Diff line
@@ -55,7 +55,7 @@ constructor(
    notificationStackAppearanceViewModel: NotificationStackAppearanceViewModel,
    ambientState: AmbientState,
    notificationStackSizeCalculator: NotificationStackSizeCalculator,
    @Main private val mainDispatcher: CoroutineDispatcher,
    @Main private val mainImmediateDispatcher: CoroutineDispatcher,
) {

    init {
@@ -80,7 +80,7 @@ constructor(
            sceneContainerFlags,
            controller,
            notificationStackSizeCalculator,
            mainDispatcher,
            mainImmediateDispatcher = mainImmediateDispatcher,
        )

        if (sceneContainerFlags.flexiNotifsEnabled()) {
@@ -90,6 +90,7 @@ constructor(
                notificationStackAppearanceViewModel,
                ambientState,
                controller,
                mainImmediateDispatcher = mainImmediateDispatcher,
            )
        }
    }
+2 −1
Original line number Diff line number Diff line
@@ -111,7 +111,7 @@ constructor(
                sceneContainerFlags,
                controller,
                notificationStackSizeCalculator,
                mainDispatcher,
                mainImmediateDispatcher = mainDispatcher,
            )
        )

@@ -123,6 +123,7 @@ constructor(
                    notificationStackAppearanceViewModel,
                    ambientState,
                    controller,
                    mainImmediateDispatcher = mainDispatcher,
                )
            )
        }
+4 −1
Original line number Diff line number Diff line
@@ -20,12 +20,14 @@ import android.content.Context
import android.util.TypedValue
import androidx.lifecycle.Lifecycle
import androidx.lifecycle.repeatOnLifecycle
import com.android.systemui.dagger.qualifiers.Main
import com.android.systemui.lifecycle.repeatWhenAttached
import com.android.systemui.statusbar.notification.stack.AmbientState
import com.android.systemui.statusbar.notification.stack.NotificationStackScrollLayoutController
import com.android.systemui.statusbar.notification.stack.ui.view.SharedNotificationContainer
import com.android.systemui.statusbar.notification.stack.ui.viewmodel.NotificationStackAppearanceViewModel
import kotlin.math.roundToInt
import kotlinx.coroutines.CoroutineDispatcher
import kotlinx.coroutines.DisposableHandle
import kotlinx.coroutines.launch

@@ -40,8 +42,9 @@ object NotificationStackAppearanceViewBinder {
        viewModel: NotificationStackAppearanceViewModel,
        ambientState: AmbientState,
        controller: NotificationStackScrollLayoutController,
        @Main mainImmediateDispatcher: CoroutineDispatcher,
    ): DisposableHandle {
        return view.repeatWhenAttached {
        return view.repeatWhenAttached(mainImmediateDispatcher) {
            repeatOnLifecycle(Lifecycle.State.CREATED) {
                launch {
                    viewModel.stackBounds.collect { bounds ->