Commit 76d0588
fix: include gap and border-box size in flex scrollable area calculation
_setMaxScrollableSize() was not accounting for main-axis gap between
items or cross-axis gap between flex lines, and child.scrollableSize
(padding-box) could be smaller than the border-box. This caused
scrollWidth/scrollHeight to be underestimated, clipping the last item
when scrolling to the end of an overflowing flex container with gap.
Also fix test timing: use waitForFrame() before/after setting
scrollLeft/scrollTop so the scroll controller has clients and the
paint takes effect before snapshot capture.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>1 parent 06fdbd3 commit 76d0588
File tree
9 files changed
+114
-19
lines changed- integration_tests
- snapshots/css/css-flexbox
- specs/css/css-flexbox
- webf
- lib/src/rendering
- test/src/rendering
9 files changed
+114
-19
lines changedLines changed: 36 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
71 | 71 | | |
72 | 72 | | |
73 | 73 | | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
74 | 77 | | |
75 | 78 | | |
76 | 79 | | |
| 80 | + | |
| 81 | + | |
| 82 | + | |
77 | 83 | | |
78 | 84 | | |
79 | 85 | | |
| |||
154 | 160 | | |
155 | 161 | | |
156 | 162 | | |
| 163 | + | |
| 164 | + | |
| 165 | + | |
157 | 166 | | |
158 | 167 | | |
159 | 168 | | |
| 169 | + | |
| 170 | + | |
| 171 | + | |
160 | 172 | | |
161 | 173 | | |
162 | 174 | | |
| |||
227 | 239 | | |
228 | 240 | | |
229 | 241 | | |
| 242 | + | |
| 243 | + | |
| 244 | + | |
230 | 245 | | |
231 | 246 | | |
232 | 247 | | |
| 248 | + | |
| 249 | + | |
| 250 | + | |
233 | 251 | | |
234 | 252 | | |
235 | 253 | | |
| |||
297 | 315 | | |
298 | 316 | | |
299 | 317 | | |
| 318 | + | |
| 319 | + | |
| 320 | + | |
300 | 321 | | |
301 | 322 | | |
302 | 323 | | |
| 324 | + | |
| 325 | + | |
| 326 | + | |
303 | 327 | | |
304 | 328 | | |
305 | 329 | | |
| |||
376 | 400 | | |
377 | 401 | | |
378 | 402 | | |
| 403 | + | |
| 404 | + | |
| 405 | + | |
379 | 406 | | |
380 | 407 | | |
381 | 408 | | |
| 409 | + | |
| 410 | + | |
| 411 | + | |
382 | 412 | | |
383 | 413 | | |
384 | 414 | | |
| |||
446 | 476 | | |
447 | 477 | | |
448 | 478 | | |
| 479 | + | |
| 480 | + | |
| 481 | + | |
449 | 482 | | |
450 | 483 | | |
451 | 484 | | |
| 485 | + | |
| 486 | + | |
| 487 | + | |
452 | 488 | | |
453 | 489 | | |
454 | 490 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
4027 | 4027 | | |
4028 | 4028 | | |
4029 | 4029 | | |
4030 | | - | |
4031 | | - | |
4032 | | - | |
4033 | | - | |
4034 | | - | |
| 4030 | + | |
| 4031 | + | |
| 4032 | + | |
| 4033 | + | |
| 4034 | + | |
| 4035 | + | |
| 4036 | + | |
| 4037 | + | |
4035 | 4038 | | |
4036 | 4039 | | |
4037 | 4040 | | |
| 4041 | + | |
| 4042 | + | |
| 4043 | + | |
| 4044 | + | |
| 4045 | + | |
| 4046 | + | |
| 4047 | + | |
| 4048 | + | |
| 4049 | + | |
4038 | 4050 | | |
4039 | 4051 | | |
4040 | 4052 | | |
| |||
4048 | 4060 | | |
4049 | 4061 | | |
4050 | 4062 | | |
| 4063 | + | |
| 4064 | + | |
| 4065 | + | |
| 4066 | + | |
4051 | 4067 | | |
4052 | 4068 | | |
4053 | 4069 | | |
| |||
4056 | 4072 | | |
4057 | 4073 | | |
4058 | 4074 | | |
| 4075 | + | |
| 4076 | + | |
| 4077 | + | |
| 4078 | + | |
4059 | 4079 | | |
4060 | 4080 | | |
4061 | 4081 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
30 | 30 | | |
31 | 31 | | |
32 | 32 | | |
33 | | - | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
34 | 36 | | |
35 | 37 | | |
36 | | - | |
| 38 | + | |
| 39 | + | |
37 | 40 | | |
38 | 41 | | |
39 | 42 | | |
| |||
53 | 56 | | |
54 | 57 | | |
55 | 58 | | |
56 | | - | |
| 59 | + | |
57 | 60 | | |
58 | 61 | | |
59 | | - | |
| 62 | + | |
60 | 63 | | |
61 | 64 | | |
62 | 65 | | |
63 | 66 | | |
64 | | - | |
| 67 | + | |
65 | 68 | | |
66 | 69 | | |
67 | 70 | | |
68 | | - | |
| 71 | + | |
69 | 72 | | |
70 | 73 | | |
71 | 74 | | |
72 | 75 | | |
73 | 76 | | |
74 | 77 | | |
75 | 78 | | |
76 | | - | |
| 79 | + | |
| 80 | + | |
77 | 81 | | |
78 | 82 | | |
79 | | - | |
| 83 | + | |
| 84 | + | |
80 | 85 | | |
81 | 86 | | |
82 | 87 | | |
| |||
93 | 98 | | |
94 | 99 | | |
95 | 100 | | |
96 | | - | |
| 101 | + | |
97 | 102 | | |
98 | 103 | | |
99 | | - | |
| 104 | + | |
100 | 105 | | |
101 | 106 | | |
102 | 107 | | |
| |||
105 | 110 | | |
106 | 111 | | |
107 | 112 | | |
108 | | - | |
| 113 | + | |
| 114 | + | |
109 | 115 | | |
110 | 116 | | |
111 | 117 | | |
| |||
122 | 128 | | |
123 | 129 | | |
124 | 130 | | |
125 | | - | |
| 131 | + | |
126 | 132 | | |
127 | 133 | | |
128 | | - | |
| 134 | + | |
129 | 135 | | |
130 | 136 | | |
131 | | - | |
| 137 | + | |
132 | 138 | | |
133 | 139 | | |
134 | 140 | | |
| 141 | + | |
| 142 | + | |
| 143 | + | |
| 144 | + | |
| 145 | + | |
| 146 | + | |
| 147 | + | |
| 148 | + | |
| 149 | + | |
| 150 | + | |
| 151 | + | |
| 152 | + | |
| 153 | + | |
| 154 | + | |
| 155 | + | |
| 156 | + | |
| 157 | + | |
| 158 | + | |
| 159 | + | |
| 160 | + | |
| 161 | + | |
| 162 | + | |
| 163 | + | |
| 164 | + | |
| 165 | + | |
| 166 | + | |
| 167 | + | |
| 168 | + | |
| 169 | + | |
| 170 | + | |
| 171 | + | |
| 172 | + | |
| 173 | + | |
135 | 174 | | |
136 | 175 | | |
0 commit comments