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

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

Merge "Introduce Shade configuration controller" into main

parents 7fda072b b2c07628
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -65,6 +65,7 @@ import com.android.systemui.statusbar.notification.domain.interactor.Notificatio
import com.android.systemui.statusbar.notification.stack.AmbientState
import com.android.systemui.statusbar.notification.stack.NotificationStackScrollLayoutController
import com.android.systemui.statusbar.phone.CentralSurfaces
import com.android.systemui.statusbar.phone.ConfigurationForwarder
import com.android.systemui.statusbar.phone.DozeScrimController
import com.android.systemui.statusbar.phone.DozeServiceHost
import com.android.systemui.statusbar.phone.PhoneStatusBarViewController
@@ -219,6 +220,7 @@ class NotificationShadeWindowViewControllerTest(flags: FlagsParameterization) :
                primaryBouncerInteractor,
                alternateBouncerInteractor,
                mock(BouncerViewBinder::class.java),
                mock(ConfigurationForwarder::class.java),
            )
        underTest.setupExpandedStatusBar()
        underTest.setDragDownHelper(dragDownHelper)
+29 −5
Original line number Diff line number Diff line
@@ -15,8 +15,10 @@
 */
package com.android.systemui.shade

import android.content.res.Configuration
import android.os.SystemClock
import android.platform.test.annotations.DisableFlags
import android.platform.test.annotations.EnableFlags
import android.testing.TestableLooper.RunWithLooper
import android.view.MotionEvent
import android.widget.FrameLayout
@@ -54,6 +56,7 @@ import com.android.systemui.statusbar.notification.stack.AmbientState
import com.android.systemui.statusbar.notification.stack.NotificationStackScrollLayout
import com.android.systemui.statusbar.notification.stack.NotificationStackScrollLayoutController
import com.android.systemui.statusbar.phone.CentralSurfaces
import com.android.systemui.statusbar.phone.ConfigurationForwarder
import com.android.systemui.statusbar.phone.DozeScrimController
import com.android.systemui.statusbar.phone.DozeServiceHost
import com.android.systemui.statusbar.window.StatusBarWindowStateController
@@ -76,9 +79,11 @@ import org.mockito.ArgumentCaptor
import org.mockito.Captor
import org.mockito.Mock
import org.mockito.Mockito
import org.mockito.Mockito.never
import org.mockito.Mockito.spy
import org.mockito.Mockito.verify
import org.mockito.MockitoAnnotations
import org.mockito.kotlin.eq

@ExperimentalCoroutinesApi
@RunWith(AndroidJUnit4::class)
@@ -123,6 +128,7 @@ class NotificationShadeWindowViewTest : SysuiTestCase() {
    @Mock private lateinit var keyguardTransitionInteractor: KeyguardTransitionInteractor
    @Mock lateinit var primaryBouncerInteractor: PrimaryBouncerInteractor
    @Mock lateinit var alternateBouncerInteractor: AlternateBouncerInteractor
    @Mock lateinit var configurationForwarder: ConfigurationForwarder
    @Captor
    private lateinit var interactionEventHandlerCaptor: ArgumentCaptor<InteractionEventHandler>

@@ -191,6 +197,7 @@ class NotificationShadeWindowViewTest : SysuiTestCase() {
                primaryBouncerInteractor,
                alternateBouncerInteractor,
                mock(),
                configurationForwarder,
            )

        controller.setupExpandedStatusBar()
@@ -222,6 +229,23 @@ class NotificationShadeWindowViewTest : SysuiTestCase() {
            assertThat(interactionEventHandler.shouldInterceptTouchEvent(mock())).isFalse()
        }

    @Test
    @DisableFlags(AConfigFlags.FLAG_SHADE_WINDOW_GOES_AROUND)
    fun onConfigurationChanged_configForwarderNotSet() {
        underTest.onConfigurationChanged(Configuration())

        verify(configurationForwarder, never()).onConfigurationChanged(any())
    }

    @Test
    @EnableFlags(AConfigFlags.FLAG_SHADE_WINDOW_GOES_AROUND)
    fun onConfigurationChanged_configForwarderSet_propagatesConfig() {
        val config = Configuration()
        underTest.onConfigurationChanged(config)

        verify(configurationForwarder).onConfigurationChanged(eq(config))
    }

    private fun captureInteractionEventHandler() {
        verify(underTest).setInteractionEventHandler(interactionEventHandlerCaptor.capture())
        interactionEventHandler = interactionEventHandlerCaptor.value
+2 −0
Original line number Diff line number Diff line
@@ -107,6 +107,7 @@ import com.android.systemui.security.data.repository.SecurityRepositoryModule;
import com.android.systemui.settings.DisplayTracker;
import com.android.systemui.settings.UserTracker;
import com.android.systemui.shade.ShadeController;
import com.android.systemui.shade.ShadeDisplayAwareModule;
import com.android.systemui.shade.transition.LargeScreenShadeInterpolator;
import com.android.systemui.shade.transition.LargeScreenShadeInterpolatorImpl;
import com.android.systemui.shared.condition.Monitor;
@@ -265,6 +266,7 @@ import javax.inject.Named;
        CommonSystemUIUnfoldModule.class,
        TelephonyRepositoryModule.class,
        TemporaryDisplayModule.class,
        ShadeDisplayAwareModule.class,
        TouchpadModule.class,
        TunerModule.class,
        UserDomainLayerModule.class,
+1 −1
Original line number Diff line number Diff line
@@ -689,7 +689,7 @@ public final class NotificationPanelViewController implements ShadeSurface, Dump
            KeyguardUpdateMonitor keyguardUpdateMonitor,
            MetricsLogger metricsLogger,
            ShadeLogger shadeLogger,
            ConfigurationController configurationController,
            @ShadeDisplayAware ConfigurationController configurationController,
            Provider<FlingAnimationUtils.Builder> flingAnimationUtilsBuilder,
            StatusBarTouchableRegionManager statusBarTouchableRegionManager,
            ConversationNotificationManager conversationNotificationManager,
+1 −1
Original line number Diff line number Diff line
@@ -154,7 +154,7 @@ public class NotificationShadeWindowControllerImpl implements NotificationShadeW
            IActivityManager activityManager,
            DozeParameters dozeParameters,
            StatusBarStateController statusBarStateController,
            ConfigurationController configurationController,
            @ShadeDisplayAware ConfigurationController configurationController,
            KeyguardViewMediator keyguardViewMediator,
            KeyguardBypassController keyguardBypassController,
            @Main Executor mainExecutor,
Loading