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

Commit 1dcbf03d authored by Joe Bolinger's avatar Joe Bolinger
Browse files

Fix Y icon positioning when prompt fields are empty.

Bug: 272510026
Test: manual (up BP test app, set title and/or description to "" and check all orientations)
Change-Id: If1c85233365d3e66f699f6b839bcb54c6e3d917e
parent 72f09380
Loading
Loading
Loading
Loading
+10 −3
Original line number Diff line number Diff line
@@ -28,6 +28,7 @@ import android.view.accessibility.AccessibilityManager
import android.widget.TextView
import androidx.core.animation.addListener
import androidx.core.view.doOnLayout
import androidx.core.view.isGone
import androidx.lifecycle.lifecycleScope
import com.android.systemui.R
import com.android.systemui.biometrics.AuthDialog
@@ -78,9 +79,11 @@ object BiometricViewSizeBinder {

        // cache the original position of the icon view (as done in legacy view)
        // this must happen before any size changes can be made
        var iconHolderOriginalY = 0f
        view.doOnLayout {
            iconHolderOriginalY = iconHolderView.y
            // TODO(b/251476085): this old way of positioning has proven itself unreliable
            // remove this and associated thing like (UdfpsDialogMeasureAdapter) and
            // pin to the physical sensor
            val iconHolderOriginalY = iconHolderView.y

            // bind to prompt
            // TODO(b/251476085): migrate the legacy panel controller and simplify this
@@ -141,7 +144,11 @@ object BiometricViewSizeBinder {
                                        listOf(
                                            iconHolderView.asVerticalAnimator(
                                                duration = duration.toLong(),
                                                toY = iconHolderOriginalY,
                                                toY =
                                                    iconHolderOriginalY -
                                                        viewsToHideWhenSmall
                                                            .filter { it.isGone }
                                                            .sumOf { it.height },
                                            ),
                                            viewsToFadeInOnSizeChange.asFadeInAnimator(
                                                duration = duration.toLong(),