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

Commit 3aee6a23 authored by Christian Göllner's avatar Christian Göllner Committed by Android (Google) Code Review
Browse files

Merge "[Motion] Split-shade LS transition: fade media when it is not visible on LS" into tm-dev

parents 1257c410 06aea261
Loading
Loading
Loading
Loading
+6 −1
Original line number Diff line number Diff line
@@ -812,7 +812,7 @@ class MediaHierarchyManager @Inject constructor(
    @TransformationType
    fun calculateTransformationType(): Int {
        if (isTransitioningToFullShade) {
            if (inSplitShade) {
            if (inSplitShade && areGuidedTransitionHostsVisible()) {
                return TRANSFORMATION_TYPE_TRANSITION
            }
            return TRANSFORMATION_TYPE_FADE
@@ -829,6 +829,11 @@ class MediaHierarchyManager @Inject constructor(
        return TRANSFORMATION_TYPE_TRANSITION
    }

    private fun areGuidedTransitionHostsVisible(): Boolean {
        return getHost(previousLocation)?.visible == true &&
                getHost(desiredLocation)?.visible == true
    }

    /**
     * @return the current transformation progress if we're in a guided transformation and -1
     * otherwise
+12 −0
Original line number Diff line number Diff line
@@ -222,6 +222,18 @@ class MediaHierarchyManagerTest : SysuiTestCase() {
        assertThat(transformType).isEqualTo(MediaHierarchyManager.TRANSFORMATION_TYPE_TRANSITION)
    }

    @Test
    fun calculateTransformationType_onLockSplitShade_goingToFullShade_mediaInvisible_returnsFade() {
        enableSplitShade()
        goToLockscreen()
        expandQS()
        whenever(lockHost.visible).thenReturn(false)
        mediaHiearchyManager.setTransitionToFullShadeAmount(10000f)

        val transformType = mediaHiearchyManager.calculateTransformationType()
        assertThat(transformType).isEqualTo(MediaHierarchyManager.TRANSFORMATION_TYPE_FADE)
    }

    @Test
    fun calculateTransformationType_onLockShade_inSplitShade_notExpanding_returnsFade() {
        enableSplitShade()