@@ -64,7 +64,6 @@ public struct ScrollView<Content: View>: TypeSafeView, View {
6464 axes. contains ( . horizontal) && contentSize. idealWidthForProposedHeight > proposedSize. x
6565 let hasVerticalScrollBar =
6666 axes. contains ( . vertical) && contentSize. idealHeightForProposedWidth > proposedSize. y
67- print ( contentSize. idealHeightForProposedWidth)
6867
6968 let verticalScrollBarWidth = hasVerticalScrollBar ? scrollBarWidth : 0
7069 let horizontalScrollBarHeight = hasHorizontalScrollBar ? scrollBarWidth : 0
@@ -77,14 +76,20 @@ public struct ScrollView<Content: View>: TypeSafeView, View {
7776 scrollViewWidth = max ( proposedSize. x, verticalScrollBarWidth)
7877 minimumWidth = verticalScrollBarWidth
7978 } else {
80- scrollViewWidth = contentSize. size. x + verticalScrollBarWidth
79+ scrollViewWidth = min (
80+ contentSize. size. x + verticalScrollBarWidth,
81+ max ( proposedSize. x, contentSize. minimumWidth + verticalScrollBarWidth)
82+ )
8183 minimumWidth = contentSize. minimumWidth + verticalScrollBarWidth
8284 }
8385 if axes. contains ( . vertical) {
8486 scrollViewHeight = max ( proposedSize. y, horizontalScrollBarHeight)
8587 minimumHeight = horizontalScrollBarHeight
8688 } else {
87- scrollViewHeight = contentSize. size. y + horizontalScrollBarHeight
89+ scrollViewHeight = min (
90+ contentSize. size. y + horizontalScrollBarHeight,
91+ max ( proposedSize. y, contentSize. minimumHeight + horizontalScrollBarHeight)
92+ )
8893 minimumHeight = contentSize. minimumHeight + horizontalScrollBarHeight
8994 }
9095
@@ -142,8 +147,6 @@ public struct ScrollView<Content: View>: TypeSafeView, View {
142147 finalResult = childResult
143148 }
144149
145- print ( finalResult. size)
146-
147150 return ViewUpdateResult (
148151 size: ViewSize (
149152 size: scrollViewSize,
0 commit comments