layout: compute Position.Offset correctly for ScrollToEnd Lists

Signed-off-by: Elias Naur <mail@eliasnaur.com>
This commit is contained in:
Elias Naur
2022-03-30 20:18:09 +02:00
parent 508330e818
commit afd39a6bfe
2 changed files with 20 additions and 2 deletions
+2 -2
View File
@@ -266,11 +266,11 @@ func (l *List) layout(ops *op.Ops, macro op.MacroOp) Dimensions {
}
l.Position.Count = len(children)
l.Position.OffsetLast = mainMax - size
pos := -l.Position.Offset
// ScrollToEnd lists are end aligned.
if space := l.Position.OffsetLast; l.ScrollToEnd && space > 0 {
pos += space
l.Position.Offset -= space
}
pos := -l.Position.Offset
layout := func(child scrollChild) {
sz := l.Axis.Convert(child.size)
var cross int