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

Commit e5abc1e3 authored by Treehugger Robot's avatar Treehugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Remove computeValue.isSpecified" into main

parents bf7da78c 74e8ed99
Loading
Loading
Loading
Loading
+0 −10
Original line number Diff line number Diff line
@@ -388,7 +388,6 @@ private fun elementAlpha(
            transformation = { it.alpha },
            idleValue = 1f,
            currentValue = { 1f },
            isSpecified = { true },
            ::lerp,
        )
        .fastCoerceIn(0f, 1f)
@@ -426,7 +425,6 @@ private fun ApproachMeasureScope.measure(
            transformation = { it.size },
            idleValue = lookaheadSize,
            currentValue = { measurable.measure(constraints).also { maybePlaceable = it }.size() },
            isSpecified = { it != Element.SizeUnspecified },
            ::lerp,
        )

@@ -452,7 +450,6 @@ private fun getDrawScale(
        transformation = { it.drawScale },
        idleValue = Scale.Default,
        currentValue = { Scale.Default },
        isSpecified = { true },
        ::lerp,
    )
}
@@ -493,7 +490,6 @@ private fun ApproachMeasureScope.place(
                transformation = { it.offset },
                idleValue = targetOffsetInScene,
                currentValue = { currentOffset },
                isSpecified = { it != Offset.Unspecified },
                ::lerp,
            )

@@ -540,7 +536,6 @@ private inline fun <T> computeValue(
    transformation: (ElementTransformations) -> PropertyTransformation<T>?,
    idleValue: T,
    currentValue: () -> T,
    isSpecified: (T) -> Boolean,
    lerp: (T, T, Float) -> T,
): T {
    val transition =
@@ -606,11 +601,6 @@ private inline fun <T> computeValue(
        val start = sceneValue(fromState!!)
        val end = sceneValue(toState!!)

        // TODO(b/316901148): Remove checks to isSpecified() once the lookahead pass runs for all
        // nodes before the intermediate layout pass.
        if (!isSpecified(start)) return end
        if (!isSpecified(end)) return start

        // Make sure we don't read progress if values are the same and we don't need to interpolate,
        // so we don't invalidate the phase where this is read.
        return if (start == end) start else lerp(start, end, transition.progress)