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

Commit 913676d0 authored by Xiaowen Lei's avatar Xiaowen Lei
Browse files

Use postStartActivityDismissingKeyguard when showOnLockscreen is false.

This fixes the issue where the timer app becomes visible when the
lockscreen isn't fully dismissed. See b/250476316#comment6, step 2.

The relevent code path is the one using intent. But also made the same
change for the pending intent code path.

Bug: 250476316
Test: click on Smartspace timer on lockscreen.

Change-Id: I0ca16b535ff06a80db09640078e9c961fe29a60e
parent 2d5c31ac
Loading
Loading
Loading
Loading
+12 −7
Original line number Diff line number Diff line
@@ -234,19 +234,24 @@ class LockscreenSmartspaceController @Inject constructor(

        ssView.setIntentStarter(object : BcSmartspaceDataPlugin.IntentStarter {
            override fun startIntent(view: View, intent: Intent, showOnLockscreen: Boolean) {
                if (showOnLockscreen) {
                    activityStarter.startActivity(
                            intent,
                            true, /* dismissShade */
                    null, /* launch animator - looks bad with the transparent smartspace bg */
                    showOnLockscreen
                            // launch animator - looks bad with the transparent smartspace bg
                            null,
                            true
                    )
                } else {
                    activityStarter.postStartActivityDismissingKeyguard(intent, 0)
                }
            }

            override fun startPendingIntent(pi: PendingIntent, showOnLockscreen: Boolean) {
                if (showOnLockscreen) {
                    pi.send()
                } else {
                    activityStarter.startPendingIntentDismissingKeyguard(pi)
                    activityStarter.postStartActivityDismissingKeyguard(pi)
                }
            }
        })