Commit 08cb723
committed
fix(app): autoResize collapses height:100% layouts; expose autoResize in useApp
setupSizeChangedNotifications measured height by transiently forcing
html.style.height = "max-content". During that reflow, descendants with
height:100% resolve to auto (parent has no definite size), so apps that
set html,body{height:100%} with a viewport-filling child reported a
spinner-sized height — and never recovered once the iframe shrank.
Measure body.scrollHeight + body margins instead. This still grows on
overflow (#525) and shrinks for default-styled bodies (#57), without
overriding author styles. Apps that explicitly set body{height:100%} no
longer shrink below the host's initial size, which is the semantically
correct behavior for a viewport-filling layout.
Also expose `autoResize` in UseAppOptions so React apps can opt out
without dropping the hook.
Addresses #143, #189, #502.1 parent 01d826a commit 08cb723
2 files changed
Lines changed: 34 additions & 19 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1391 | 1391 | | |
1392 | 1392 | | |
1393 | 1393 | | |
1394 | | - | |
| 1394 | + | |
1395 | 1395 | | |
1396 | | - | |
1397 | | - | |
1398 | | - | |
| 1396 | + | |
1399 | 1397 | | |
1400 | | - | |
1401 | | - | |
1402 | | - | |
1403 | | - | |
1404 | | - | |
1405 | | - | |
1406 | | - | |
1407 | | - | |
1408 | | - | |
1409 | | - | |
| 1398 | + | |
| 1399 | + | |
| 1400 | + | |
| 1401 | + | |
| 1402 | + | |
| 1403 | + | |
| 1404 | + | |
| 1405 | + | |
| 1406 | + | |
| 1407 | + | |
| 1408 | + | |
| 1409 | + | |
| 1410 | + | |
| 1411 | + | |
| 1412 | + | |
| 1413 | + | |
| 1414 | + | |
| 1415 | + | |
| 1416 | + | |
| 1417 | + | |
1410 | 1418 | | |
1411 | 1419 | | |
1412 | 1420 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
7 | 7 | | |
8 | 8 | | |
9 | 9 | | |
10 | | - | |
11 | | - | |
12 | | - | |
13 | | - | |
14 | 10 | | |
15 | 11 | | |
16 | 12 | | |
| |||
21 | 17 | | |
22 | 18 | | |
23 | 19 | | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
24 | 30 | | |
25 | 31 | | |
26 | 32 | | |
| |||
120 | 126 | | |
121 | 127 | | |
122 | 128 | | |
| 129 | + | |
123 | 130 | | |
124 | 131 | | |
125 | 132 | | |
| |||
135 | 142 | | |
136 | 143 | | |
137 | 144 | | |
138 | | - | |
| 145 | + | |
139 | 146 | | |
140 | 147 | | |
141 | 148 | | |
| |||
0 commit comments