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

Commit 7862f97d authored by Beverly's avatar Beverly
Browse files

[flexiglass] basic impl of ActivityStarterInternal

Basic activity starter functionality works when there's no
security set (SWIPE or NONE).

Alternate bouncer shows from lockscreen but is still broken
from the notification shade due to KTF transitioning from
lockscreen => undefined instead of lockscreen => shade.

Primary bouncer shows from the lockscreen but the intent
doesn't launch after successful auth.

Test: startActivity(): tap on settings icon from the shade
when the device is unlocked.
Test: dismissKeyguardThenExecute(): tap on a notification from
the lockscreen (with or without fingerprint enrolled), user can
authenticate to proceed to notification intent
Test: startPendingIntentDismissingKeyguard(): tap on a smart
reply (currently only works from unlocked home screen)
Bug: 308819693
Flag: com.android.systemui.scene_container

Change-Id: If5b65833082306edcecccc66b265df541769fd5c
parent 294cf4a6
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -50,6 +50,7 @@ class ActivityStarterImplTest : SysuiTestCase() {
                statusBarStateController = statusBarStateController,
                mainExecutor = mainExecutor,
                legacyActivityStarter = { legacyActivityStarterInternal },
                activityStarterInternal = { activityStarterInternal },
            )
    }

+3 −2
Original line number Diff line number Diff line
@@ -189,7 +189,7 @@ constructor(
     * Whether the system is dreaming. [isDreaming] will be always be true when [isDozing] is true,
     * but not vice-versa.
     */
    val isDreaming: Flow<Boolean> = repository.isDreaming
    val isDreaming: StateFlow<Boolean> = repository.isDreaming

    /** Whether the system is dreaming with an overlay active */
    val isDreamingWithOverlay: Flow<Boolean> = repository.isDreamingWithOverlay
@@ -206,7 +206,8 @@ constructor(
                        trySendWithFailureLogging(
                            cameraLaunchSourceIntToModel(source),
                            TAG,
                            "updated onCameraLaunchGestureDetected")
                            "updated onCameraLaunchGestureDetected"
                        )
                    }
                }

+0 −1
Original line number Diff line number Diff line
@@ -186,7 +186,6 @@ constructor(
        applicationScope.launch {
            // TODO(b/296114544): Combine with some global hun state to make it visible!
            deviceProvisioningInteractor.isDeviceProvisioned
                .distinctUntilChanged()
                .flatMapLatest { isAllowedToBeVisible ->
                    if (isAllowedToBeVisible) {
                        combine(
+8 −1
Original line number Diff line number Diff line
@@ -24,6 +24,7 @@ import com.android.systemui.dagger.SysUISingleton
import com.android.systemui.dagger.qualifiers.Main
import com.android.systemui.plugins.ActivityStarter
import com.android.systemui.plugins.ActivityStarter.OnDismissAction
import com.android.systemui.scene.shared.flag.SceneContainerFlag
import com.android.systemui.statusbar.SysuiStatusBarStateController
import com.android.systemui.util.concurrency.DelayableExecutor
import dagger.Lazy
@@ -36,10 +37,16 @@ class ActivityStarterImpl
constructor(
    private val statusBarStateController: SysuiStatusBarStateController,
    @Main private val mainExecutor: DelayableExecutor,
    activityStarterInternal: Lazy<ActivityStarterInternalImpl>,
    legacyActivityStarter: Lazy<LegacyActivityStarterInternalImpl>
) : ActivityStarter {

    private val activityStarterInternal: ActivityStarterInternal = legacyActivityStarter.get()
    private val activityStarterInternal: ActivityStarterInternal =
        if (SceneContainerFlag.isEnabled) {
            activityStarterInternal.get()
        } else {
            legacyActivityStarter.get()
        }

    override fun startPendingIntentDismissingKeyguard(intent: PendingIntent) {
        activityStarterInternal.startPendingIntentDismissingKeyguard(
+557 −8

File changed.

Preview size limit exceeded, changes collapsed.

Loading