layout: respect minimum constraint size in Flex.Layout

Signed-off-by: Elias Naur <mail@eliasnaur.com>
This commit is contained in:
Elias Naur
2022-07-08 08:00:59 +02:00
parent b4acc239cd
commit 162250392b
2 changed files with 15 additions and 0 deletions
+1
View File
@@ -216,6 +216,7 @@ func (f Flex) Layout(gtx Context, children ...FlexChild) Dimensions {
}
}
sz := f.Axis.Convert(image.Pt(mainSize, maxCross))
sz = cs.Constrain(sz)
return Dimensions{Size: sz, Baseline: sz.Y - maxBaseline}
}
+14
View File
@@ -30,6 +30,20 @@ func TestStack(t *testing.T) {
}
}
func TestFlex(t *testing.T) {
gtx := Context{
Ops: new(op.Ops),
Constraints: Constraints{
Min: image.Pt(100, 100),
Max: image.Pt(100, 100),
},
}
dims := Flex{}.Layout(gtx)
if got := dims.Size; got != gtx.Constraints.Min {
t.Errorf("Flex ignored minimum constraints, got %v expected %v", got, gtx.Constraints.Min)
}
}
func TestDirection(t *testing.T) {
max := image.Pt(100, 100)
for _, tc := range []struct {