Loading packages/SystemUI/compose/features/src/com/android/systemui/qs/ui/composable/QuickSettings.kt +6 −6 Original line number Original line Diff line number Diff line Loading @@ -69,7 +69,7 @@ object QuickSettings { private fun SceneScope.stateForQuickSettingsContent( private fun SceneScope.stateForQuickSettingsContent( isSplitShade: Boolean, isSplitShade: Boolean, squishiness: Float = QuickSettings.SharedValues.SquishinessValues.Default squishiness: () -> Float = { QuickSettings.SharedValues.SquishinessValues.Default } ): QSSceneAdapter.State { ): QSSceneAdapter.State { return when (val transitionState = layoutState.transitionState) { return when (val transitionState = layoutState.transitionState) { is TransitionState.Idle -> { is TransitionState.Idle -> { Loading Loading @@ -125,9 +125,9 @@ fun SceneScope.QuickSettings( heightProvider: () -> Int, heightProvider: () -> Int, isSplitShade: Boolean, isSplitShade: Boolean, modifier: Modifier = Modifier, modifier: Modifier = Modifier, squishiness: Float = QuickSettings.SharedValues.SquishinessValues.Default, squishiness: () -> Float = { QuickSettings.SharedValues.SquishinessValues.Default }, ) { ) { val contentState = stateForQuickSettingsContent(isSplitShade, squishiness) val contentState = { stateForQuickSettingsContent(isSplitShade, squishiness) } val transitionState = layoutState.transitionState val transitionState = layoutState.transitionState val isClosing = val isClosing = transitionState is TransitionState.Transition && transitionState is TransitionState.Transition && Loading Loading @@ -161,7 +161,7 @@ fun SceneScope.QuickSettings( @Composable @Composable private fun QuickSettingsContent( private fun QuickSettingsContent( qsSceneAdapter: QSSceneAdapter, qsSceneAdapter: QSSceneAdapter, state: QSSceneAdapter.State, state: () -> QSSceneAdapter.State, modifier: Modifier = Modifier, modifier: Modifier = Modifier, ) { ) { val qsView by qsSceneAdapter.qsView.collectAsStateWithLifecycle(null) val qsView by qsSceneAdapter.qsView.collectAsStateWithLifecycle(null) Loading @@ -185,10 +185,10 @@ private fun QuickSettingsContent( AndroidView( AndroidView( modifier = Modifier.fillMaxWidth(), modifier = Modifier.fillMaxWidth(), factory = { _ -> factory = { _ -> qsSceneAdapter.setState(state) qsSceneAdapter.setState(state()) view view }, }, update = { qsSceneAdapter.setState(state) } update = { qsSceneAdapter.setState(state()) } ) ) } } } } Loading packages/SystemUI/compose/features/src/com/android/systemui/shade/ui/composable/ShadeScene.kt +2 −2 Original line number Original line Diff line number Diff line Loading @@ -279,7 +279,7 @@ private fun SceneScope.SingleShade( viewModel.qsSceneAdapter, viewModel.qsSceneAdapter, { viewModel.qsSceneAdapter.qqsHeight }, { viewModel.qsSceneAdapter.qqsHeight }, isSplitShade = false, isSplitShade = false, squishiness = tileSquishiness, squishiness = { tileSquishiness }, ) ) } } Loading Loading @@ -468,7 +468,7 @@ private fun SceneScope.SplitShade( heightProvider = { viewModel.qsSceneAdapter.qsHeight }, heightProvider = { viewModel.qsSceneAdapter.qsHeight }, isSplitShade = true, isSplitShade = true, modifier = Modifier.fillMaxWidth(), modifier = Modifier.fillMaxWidth(), squishiness = tileSquishiness, squishiness = { tileSquishiness }, ) ) } } Loading packages/SystemUI/multivalentTests/src/com/android/systemui/qs/ui/adapter/QSSceneAdapterImplTest.kt +1 −1 Original line number Original line Diff line number Diff line Loading @@ -257,7 +257,7 @@ class QSSceneAdapterImplTest : SysuiTestCase() { runCurrent() runCurrent() clearInvocations(qsImpl!!) clearInvocations(qsImpl!!) underTest.setState(QSSceneAdapter.State.UnsquishingQQS(squishiness)) underTest.setState(QSSceneAdapter.State.UnsquishingQQS { squishiness }) with(qsImpl!!) { with(qsImpl!!) { verify(this).setQsVisible(true) verify(this).setQsVisible(true) verify(this) verify(this) Loading packages/SystemUI/multivalentTests/src/com/android/systemui/qs/ui/adapter/QSSceneAdapterTest.kt +3 −3 Original line number Original line Diff line number Diff line Loading @@ -32,7 +32,7 @@ class QSSceneAdapterTest : SysuiTestCase() { @Test @Test fun expanding_squishiness1() { fun expanding_squishiness1() { assertThat(QSSceneAdapter.State.Expanding(0.3f).squishiness).isEqualTo(1f) assertThat(QSSceneAdapter.State.Expanding(0.3f).squishiness()).isEqualTo(1f) } } @Test @Test Loading @@ -51,14 +51,14 @@ class QSSceneAdapterTest : SysuiTestCase() { @Test @Test fun unsquishingQQS_expansionSameAsQQS() { fun unsquishingQQS_expansionSameAsQQS() { val squishiness = 0.6f val squishiness = 0.6f assertThat(QSSceneAdapter.State.UnsquishingQQS(squishiness).expansion) assertThat(QSSceneAdapter.State.UnsquishingQQS { squishiness }.expansion) .isEqualTo(QSSceneAdapter.State.QQS.expansion) .isEqualTo(QSSceneAdapter.State.QQS.expansion) } } @Test @Test fun unsquishingQS_expansionSameAsQS() { fun unsquishingQS_expansionSameAsQS() { val squishiness = 0.6f val squishiness = 0.6f assertThat(QSSceneAdapter.State.UnsquishingQS(squishiness).expansion) assertThat(QSSceneAdapter.State.UnsquishingQS { squishiness }.expansion) .isEqualTo(QSSceneAdapter.State.QS.expansion) .isEqualTo(QSSceneAdapter.State.QS.expansion) } } } } packages/SystemUI/src/com/android/systemui/keyguard/KeyguardService.java +15 −3 Original line number Original line Diff line number Diff line Loading @@ -84,20 +84,25 @@ import com.android.systemui.keyguard.ui.viewmodel.KeyguardSurfaceBehindViewModel import com.android.systemui.keyguard.ui.viewmodel.WindowManagerLockscreenVisibilityViewModel; import com.android.systemui.keyguard.ui.viewmodel.WindowManagerLockscreenVisibilityViewModel; import com.android.systemui.power.domain.interactor.PowerInteractor; import com.android.systemui.power.domain.interactor.PowerInteractor; import com.android.systemui.power.shared.model.ScreenPowerState; import com.android.systemui.power.shared.model.ScreenPowerState; import com.android.systemui.scene.domain.interactor.SceneInteractor; import com.android.systemui.scene.shared.flag.SceneContainerFlag; import com.android.systemui.scene.shared.model.Scenes; import com.android.systemui.settings.DisplayTracker; import com.android.systemui.settings.DisplayTracker; import com.android.wm.shell.shared.CounterRotator; import com.android.wm.shell.shared.CounterRotator; import com.android.wm.shell.shared.ShellTransitions; import com.android.wm.shell.shared.ShellTransitions; import com.android.wm.shell.shared.TransitionUtil; import com.android.wm.shell.shared.TransitionUtil; import com.android.wm.shell.transition.Transitions; import com.android.wm.shell.transition.Transitions; import dagger.Lazy; import kotlinx.coroutines.CoroutineScope; import java.util.ArrayList; import java.util.ArrayList; import java.util.Map; import java.util.Map; import java.util.WeakHashMap; import java.util.WeakHashMap; import javax.inject.Inject; import javax.inject.Inject; import kotlinx.coroutines.CoroutineScope; public class KeyguardService extends Service { public class KeyguardService extends Service { static final String TAG = "KeyguardService"; static final String TAG = "KeyguardService"; static final String PERMISSION = android.Manifest.permission.CONTROL_KEYGUARD; static final String PERMISSION = android.Manifest.permission.CONTROL_KEYGUARD; Loading @@ -109,6 +114,7 @@ public class KeyguardService extends Service { private final ShellTransitions mShellTransitions; private final ShellTransitions mShellTransitions; private final DisplayTracker mDisplayTracker; private final DisplayTracker mDisplayTracker; private final PowerInteractor mPowerInteractor; private final PowerInteractor mPowerInteractor; private final Lazy<SceneInteractor> mSceneInteractorLazy; private static RemoteAnimationTarget[] wrap(TransitionInfo info, boolean wallpapers, private static RemoteAnimationTarget[] wrap(TransitionInfo info, boolean wallpapers, SurfaceControl.Transaction t, ArrayMap<SurfaceControl, SurfaceControl> leashMap, SurfaceControl.Transaction t, ArrayMap<SurfaceControl, SurfaceControl> leashMap, Loading Loading @@ -316,7 +322,8 @@ public class KeyguardService extends Service { @Application CoroutineScope scope, @Application CoroutineScope scope, FeatureFlags featureFlags, FeatureFlags featureFlags, PowerInteractor powerInteractor, PowerInteractor powerInteractor, WindowManagerOcclusionManager windowManagerOcclusionManager) { WindowManagerOcclusionManager windowManagerOcclusionManager, Lazy<SceneInteractor> sceneInteractorLazy) { super(); super(); mKeyguardViewMediator = keyguardViewMediator; mKeyguardViewMediator = keyguardViewMediator; mKeyguardLifecyclesDispatcher = keyguardLifecyclesDispatcher; mKeyguardLifecyclesDispatcher = keyguardLifecyclesDispatcher; Loading @@ -325,6 +332,7 @@ public class KeyguardService extends Service { mDisplayTracker = displayTracker; mDisplayTracker = displayTracker; mFlags = featureFlags; mFlags = featureFlags; mPowerInteractor = powerInteractor; mPowerInteractor = powerInteractor; mSceneInteractorLazy = sceneInteractorLazy; if (KeyguardWmStateRefactor.isEnabled()) { if (KeyguardWmStateRefactor.isEnabled()) { WindowManagerLockscreenVisibilityViewBinder.bind( WindowManagerLockscreenVisibilityViewBinder.bind( Loading Loading @@ -601,6 +609,10 @@ public class KeyguardService extends Service { trace("showDismissibleKeyguard"); trace("showDismissibleKeyguard"); checkPermission(); checkPermission(); mKeyguardViewMediator.showDismissibleKeyguard(); mKeyguardViewMediator.showDismissibleKeyguard(); if (SceneContainerFlag.isEnabled()) { mSceneInteractorLazy.get().changeScene( Scenes.Lockscreen, "KeyguardService.showDismissibleKeyguard"); } } } @Override // Binder interface @Override // Binder interface Loading Loading
packages/SystemUI/compose/features/src/com/android/systemui/qs/ui/composable/QuickSettings.kt +6 −6 Original line number Original line Diff line number Diff line Loading @@ -69,7 +69,7 @@ object QuickSettings { private fun SceneScope.stateForQuickSettingsContent( private fun SceneScope.stateForQuickSettingsContent( isSplitShade: Boolean, isSplitShade: Boolean, squishiness: Float = QuickSettings.SharedValues.SquishinessValues.Default squishiness: () -> Float = { QuickSettings.SharedValues.SquishinessValues.Default } ): QSSceneAdapter.State { ): QSSceneAdapter.State { return when (val transitionState = layoutState.transitionState) { return when (val transitionState = layoutState.transitionState) { is TransitionState.Idle -> { is TransitionState.Idle -> { Loading Loading @@ -125,9 +125,9 @@ fun SceneScope.QuickSettings( heightProvider: () -> Int, heightProvider: () -> Int, isSplitShade: Boolean, isSplitShade: Boolean, modifier: Modifier = Modifier, modifier: Modifier = Modifier, squishiness: Float = QuickSettings.SharedValues.SquishinessValues.Default, squishiness: () -> Float = { QuickSettings.SharedValues.SquishinessValues.Default }, ) { ) { val contentState = stateForQuickSettingsContent(isSplitShade, squishiness) val contentState = { stateForQuickSettingsContent(isSplitShade, squishiness) } val transitionState = layoutState.transitionState val transitionState = layoutState.transitionState val isClosing = val isClosing = transitionState is TransitionState.Transition && transitionState is TransitionState.Transition && Loading Loading @@ -161,7 +161,7 @@ fun SceneScope.QuickSettings( @Composable @Composable private fun QuickSettingsContent( private fun QuickSettingsContent( qsSceneAdapter: QSSceneAdapter, qsSceneAdapter: QSSceneAdapter, state: QSSceneAdapter.State, state: () -> QSSceneAdapter.State, modifier: Modifier = Modifier, modifier: Modifier = Modifier, ) { ) { val qsView by qsSceneAdapter.qsView.collectAsStateWithLifecycle(null) val qsView by qsSceneAdapter.qsView.collectAsStateWithLifecycle(null) Loading @@ -185,10 +185,10 @@ private fun QuickSettingsContent( AndroidView( AndroidView( modifier = Modifier.fillMaxWidth(), modifier = Modifier.fillMaxWidth(), factory = { _ -> factory = { _ -> qsSceneAdapter.setState(state) qsSceneAdapter.setState(state()) view view }, }, update = { qsSceneAdapter.setState(state) } update = { qsSceneAdapter.setState(state()) } ) ) } } } } Loading
packages/SystemUI/compose/features/src/com/android/systemui/shade/ui/composable/ShadeScene.kt +2 −2 Original line number Original line Diff line number Diff line Loading @@ -279,7 +279,7 @@ private fun SceneScope.SingleShade( viewModel.qsSceneAdapter, viewModel.qsSceneAdapter, { viewModel.qsSceneAdapter.qqsHeight }, { viewModel.qsSceneAdapter.qqsHeight }, isSplitShade = false, isSplitShade = false, squishiness = tileSquishiness, squishiness = { tileSquishiness }, ) ) } } Loading Loading @@ -468,7 +468,7 @@ private fun SceneScope.SplitShade( heightProvider = { viewModel.qsSceneAdapter.qsHeight }, heightProvider = { viewModel.qsSceneAdapter.qsHeight }, isSplitShade = true, isSplitShade = true, modifier = Modifier.fillMaxWidth(), modifier = Modifier.fillMaxWidth(), squishiness = tileSquishiness, squishiness = { tileSquishiness }, ) ) } } Loading
packages/SystemUI/multivalentTests/src/com/android/systemui/qs/ui/adapter/QSSceneAdapterImplTest.kt +1 −1 Original line number Original line Diff line number Diff line Loading @@ -257,7 +257,7 @@ class QSSceneAdapterImplTest : SysuiTestCase() { runCurrent() runCurrent() clearInvocations(qsImpl!!) clearInvocations(qsImpl!!) underTest.setState(QSSceneAdapter.State.UnsquishingQQS(squishiness)) underTest.setState(QSSceneAdapter.State.UnsquishingQQS { squishiness }) with(qsImpl!!) { with(qsImpl!!) { verify(this).setQsVisible(true) verify(this).setQsVisible(true) verify(this) verify(this) Loading
packages/SystemUI/multivalentTests/src/com/android/systemui/qs/ui/adapter/QSSceneAdapterTest.kt +3 −3 Original line number Original line Diff line number Diff line Loading @@ -32,7 +32,7 @@ class QSSceneAdapterTest : SysuiTestCase() { @Test @Test fun expanding_squishiness1() { fun expanding_squishiness1() { assertThat(QSSceneAdapter.State.Expanding(0.3f).squishiness).isEqualTo(1f) assertThat(QSSceneAdapter.State.Expanding(0.3f).squishiness()).isEqualTo(1f) } } @Test @Test Loading @@ -51,14 +51,14 @@ class QSSceneAdapterTest : SysuiTestCase() { @Test @Test fun unsquishingQQS_expansionSameAsQQS() { fun unsquishingQQS_expansionSameAsQQS() { val squishiness = 0.6f val squishiness = 0.6f assertThat(QSSceneAdapter.State.UnsquishingQQS(squishiness).expansion) assertThat(QSSceneAdapter.State.UnsquishingQQS { squishiness }.expansion) .isEqualTo(QSSceneAdapter.State.QQS.expansion) .isEqualTo(QSSceneAdapter.State.QQS.expansion) } } @Test @Test fun unsquishingQS_expansionSameAsQS() { fun unsquishingQS_expansionSameAsQS() { val squishiness = 0.6f val squishiness = 0.6f assertThat(QSSceneAdapter.State.UnsquishingQS(squishiness).expansion) assertThat(QSSceneAdapter.State.UnsquishingQS { squishiness }.expansion) .isEqualTo(QSSceneAdapter.State.QS.expansion) .isEqualTo(QSSceneAdapter.State.QS.expansion) } } } }
packages/SystemUI/src/com/android/systemui/keyguard/KeyguardService.java +15 −3 Original line number Original line Diff line number Diff line Loading @@ -84,20 +84,25 @@ import com.android.systemui.keyguard.ui.viewmodel.KeyguardSurfaceBehindViewModel import com.android.systemui.keyguard.ui.viewmodel.WindowManagerLockscreenVisibilityViewModel; import com.android.systemui.keyguard.ui.viewmodel.WindowManagerLockscreenVisibilityViewModel; import com.android.systemui.power.domain.interactor.PowerInteractor; import com.android.systemui.power.domain.interactor.PowerInteractor; import com.android.systemui.power.shared.model.ScreenPowerState; import com.android.systemui.power.shared.model.ScreenPowerState; import com.android.systemui.scene.domain.interactor.SceneInteractor; import com.android.systemui.scene.shared.flag.SceneContainerFlag; import com.android.systemui.scene.shared.model.Scenes; import com.android.systemui.settings.DisplayTracker; import com.android.systemui.settings.DisplayTracker; import com.android.wm.shell.shared.CounterRotator; import com.android.wm.shell.shared.CounterRotator; import com.android.wm.shell.shared.ShellTransitions; import com.android.wm.shell.shared.ShellTransitions; import com.android.wm.shell.shared.TransitionUtil; import com.android.wm.shell.shared.TransitionUtil; import com.android.wm.shell.transition.Transitions; import com.android.wm.shell.transition.Transitions; import dagger.Lazy; import kotlinx.coroutines.CoroutineScope; import java.util.ArrayList; import java.util.ArrayList; import java.util.Map; import java.util.Map; import java.util.WeakHashMap; import java.util.WeakHashMap; import javax.inject.Inject; import javax.inject.Inject; import kotlinx.coroutines.CoroutineScope; public class KeyguardService extends Service { public class KeyguardService extends Service { static final String TAG = "KeyguardService"; static final String TAG = "KeyguardService"; static final String PERMISSION = android.Manifest.permission.CONTROL_KEYGUARD; static final String PERMISSION = android.Manifest.permission.CONTROL_KEYGUARD; Loading @@ -109,6 +114,7 @@ public class KeyguardService extends Service { private final ShellTransitions mShellTransitions; private final ShellTransitions mShellTransitions; private final DisplayTracker mDisplayTracker; private final DisplayTracker mDisplayTracker; private final PowerInteractor mPowerInteractor; private final PowerInteractor mPowerInteractor; private final Lazy<SceneInteractor> mSceneInteractorLazy; private static RemoteAnimationTarget[] wrap(TransitionInfo info, boolean wallpapers, private static RemoteAnimationTarget[] wrap(TransitionInfo info, boolean wallpapers, SurfaceControl.Transaction t, ArrayMap<SurfaceControl, SurfaceControl> leashMap, SurfaceControl.Transaction t, ArrayMap<SurfaceControl, SurfaceControl> leashMap, Loading Loading @@ -316,7 +322,8 @@ public class KeyguardService extends Service { @Application CoroutineScope scope, @Application CoroutineScope scope, FeatureFlags featureFlags, FeatureFlags featureFlags, PowerInteractor powerInteractor, PowerInteractor powerInteractor, WindowManagerOcclusionManager windowManagerOcclusionManager) { WindowManagerOcclusionManager windowManagerOcclusionManager, Lazy<SceneInteractor> sceneInteractorLazy) { super(); super(); mKeyguardViewMediator = keyguardViewMediator; mKeyguardViewMediator = keyguardViewMediator; mKeyguardLifecyclesDispatcher = keyguardLifecyclesDispatcher; mKeyguardLifecyclesDispatcher = keyguardLifecyclesDispatcher; Loading @@ -325,6 +332,7 @@ public class KeyguardService extends Service { mDisplayTracker = displayTracker; mDisplayTracker = displayTracker; mFlags = featureFlags; mFlags = featureFlags; mPowerInteractor = powerInteractor; mPowerInteractor = powerInteractor; mSceneInteractorLazy = sceneInteractorLazy; if (KeyguardWmStateRefactor.isEnabled()) { if (KeyguardWmStateRefactor.isEnabled()) { WindowManagerLockscreenVisibilityViewBinder.bind( WindowManagerLockscreenVisibilityViewBinder.bind( Loading Loading @@ -601,6 +609,10 @@ public class KeyguardService extends Service { trace("showDismissibleKeyguard"); trace("showDismissibleKeyguard"); checkPermission(); checkPermission(); mKeyguardViewMediator.showDismissibleKeyguard(); mKeyguardViewMediator.showDismissibleKeyguard(); if (SceneContainerFlag.isEnabled()) { mSceneInteractorLazy.get().changeScene( Scenes.Lockscreen, "KeyguardService.showDismissibleKeyguard"); } } } @Override // Binder interface @Override // Binder interface Loading