diff --git a/libs/ui/source/scroller.cpp b/libs/ui/source/scroller.cpp index c9700bcb..8e3d1812 100644 --- a/libs/ui/source/scroller.cpp +++ b/libs/ui/source/scroller.cpp @@ -253,19 +253,22 @@ namespace psemek::ui { auto child_constraints = child_->size_constraints(); + result[0].min = child_constraints[0].min; + result[1].min = child_constraints[1].min; + if (!horizontal_scroll()) - result[0] = child_constraints[0]; + result[0].max = child_constraints[0].max; if (!vertical_scroll()) - result[1] = child_constraints[1]; + result[1].max = child_constraints[1].max; } auto st = merged_own_style(); if (horizontal_scroll()) - result[1].min = std::max(result[1].min, width() * *st->scale); + result[1] += width() * *st->scale; if (vertical_scroll()) - result[0].min = std::max(result[0].min, width() * *st->scale); + result[0] += width() * *st->scale; return result; }