mirror of
https://github.com/nextcloud/talk-android
synced 2025-03-09 15:42:10 +00:00
try to avoid IllegalStateException in LockedController
this commit tries to avoid the IllegalStateException in stacktrace below. I'm not sure how this happened. It came from LockedController#unlock (--> binding?.unlockContainer?.setOnClickListener) which should only be visible when somehow it's "failed" to show the keyguard lockscreen. And somehow for this case the router backstack must have been empty. Instead to dismiss the current controller, popToRoot() should avoid trying to pop the last remaining controller. Exception java.lang.IllegalStateException: Trying to pop the current controller when there are none on the backstack. at com.bluelinelabs.conductor.Router.popCurrentController (Router.java:118) at com.nextcloud.talk.controllers.LockedController.checkIfWeAreSecure (LockedController.kt:147) at com.nextcloud.talk.controllers.LockedController.unlock (LockedController.kt:90) at com.nextcloud.talk.controllers.LockedController.onViewBound$lambda$0 (LockedController.kt:64) at com.nextcloud.talk.controllers.LockedController.$r8$lambda$sNoJ_x5yMnHnIHeqt2umoDILkpk at com.nextcloud.talk.controllers.LockedController$$ExternalSyntheticLambda0.onClick at android.view.View.performClick (View.java:7745) at android.view.View.performClickInternal (View.java:7722) at android.view.View.access$3700 (View.java:854) at android.view.View$PerformClick.run (View.java:29111) at android.os.Handler.handleCallback (Handler.java:938) at android.os.Handler.dispatchMessage (Handler.java:99) at android.os.Looper.loopOnce (Looper.java:210) at android.os.Looper.loop (Looper.java:299) at android.app.ActivityThread.main (ActivityThread.java:8319) at java.lang.reflect.Method.invoke at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:556) at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1038) Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
This commit is contained in:
parent
25a53f4b2c
commit
c261e526fc
@ -144,7 +144,7 @@ class LockedController : BaseController(R.layout.controller_locked) {
|
||||
"popCurrentController because 'we are authenticated'. backstacksize= " +
|
||||
router.backstack.size
|
||||
)
|
||||
router.popCurrentController()
|
||||
router.popToRoot()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user