Merge "Manually set mLastTileBottom when not laying out" into tm-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
78fd61c224
@@ -17,6 +17,7 @@ import com.android.systemui.R;
|
||||
import com.android.systemui.qs.QSPanel.QSTileLayout;
|
||||
import com.android.systemui.qs.QSPanelControllerBase.TileRecord;
|
||||
import com.android.systemui.qs.tileimpl.HeightOverrideable;
|
||||
import com.android.systemui.qs.tileimpl.QSTileViewImplKt;
|
||||
|
||||
import java.util.ArrayList;
|
||||
|
||||
@@ -242,7 +243,12 @@ public class TileLayout extends ViewGroup implements QSTileLayout {
|
||||
record.tileView.setLeftTopRightBottom(left, top, right, bottom);
|
||||
}
|
||||
record.tileView.setPosition(i);
|
||||
mLastTileBottom = bottom;
|
||||
if (forLayout) {
|
||||
mLastTileBottom = record.tileView.getBottom();
|
||||
} else {
|
||||
float scale = QSTileViewImplKt.constrainSquishiness(mSquishinessFraction);
|
||||
mLastTileBottom = top + (int) (record.tileView.getMeasuredHeight() * scale);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -262,7 +262,7 @@ open class QSTileViewImpl @JvmOverloads constructor(
|
||||
}
|
||||
// Limit how much we affect the height, so we don't have rounding artifacts when the tile
|
||||
// is too short.
|
||||
val constrainedSquishiness = 0.1f + squishinessFraction * 0.9f
|
||||
val constrainedSquishiness = constrainSquishiness(squishinessFraction)
|
||||
bottom = top + (actualHeight * constrainedSquishiness).toInt()
|
||||
scrollY = (actualHeight - height) / 2
|
||||
}
|
||||
@@ -678,6 +678,10 @@ internal object SubtitleArrayMapping {
|
||||
}
|
||||
}
|
||||
|
||||
fun constrainSquishiness(squish: Float): Float {
|
||||
return 0.1f + squish * 0.9f
|
||||
}
|
||||
|
||||
private fun colorValuesHolder(name: String, vararg values: Int): PropertyValuesHolder {
|
||||
return PropertyValuesHolder.ofInt(name, *values).apply {
|
||||
setEvaluator(ArgbEvaluator.getInstance())
|
||||
|
||||
Reference in New Issue
Block a user