Merge "Fix Y icon positioning when prompt fields are empty." into udc-d1-dev am: eb68481407

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/23606403

Change-Id: Icd1c97959129ba5e95964a7f6dad02ade8b142e6
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
Treehugger Robot
2023-06-08 22:36:48 +00:00
committed by Automerger Merge Worker

View File

@@ -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(),