Commit 263d10f
committed
clutter: Emit ::resource-scale-changed outside the stage-views walk.
update_resource_scale() emitted the signal from inside the recursive
clutter_actor_update_stage_views() traversal, so handlers that rebuild
content — st_icon_update()'s destroy + add_child — modified the actor
tree from within the layout operation, and the new child tripped "Can't
update stage views ... needs an allocation" before it could be
allocated. Reproducible on any non-primary monitor whose scale differs
from the stage's max.
Keep the resource_scale assignment in the walk so parents resolve before
children guess from them, and queue only the emission, draining it once
the walk has returned and before the actor_needs_immediate_relayout
check.1 parent 4ba0a2d commit 263d10f
4 files changed
Lines changed: 66 additions & 1 deletion
File tree
- clutter/clutter
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
316 | 316 | | |
317 | 317 | | |
318 | 318 | | |
| 319 | + | |
319 | 320 | | |
320 | 321 | | |
321 | 322 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
17873 | 17873 | | |
17874 | 17874 | | |
17875 | 17875 | | |
17876 | | - | |
| 17876 | + | |
| 17877 | + | |
| 17878 | + | |
| 17879 | + | |
| 17880 | + | |
| 17881 | + | |
| 17882 | + | |
| 17883 | + | |
| 17884 | + | |
| 17885 | + | |
| 17886 | + | |
| 17887 | + | |
| 17888 | + | |
| 17889 | + | |
17877 | 17890 | | |
17878 | 17891 | | |
17879 | 17892 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
143 | 143 | | |
144 | 144 | | |
145 | 145 | | |
| 146 | + | |
| 147 | + | |
| 148 | + | |
146 | 149 | | |
147 | 150 | | |
148 | 151 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
129 | 129 | | |
130 | 130 | | |
131 | 131 | | |
| 132 | + | |
132 | 133 | | |
133 | 134 | | |
134 | 135 | | |
| |||
1382 | 1383 | | |
1383 | 1384 | | |
1384 | 1385 | | |
| 1386 | + | |
| 1387 | + | |
| 1388 | + | |
| 1389 | + | |
| 1390 | + | |
| 1391 | + | |
| 1392 | + | |
| 1393 | + | |
| 1394 | + | |
| 1395 | + | |
| 1396 | + | |
| 1397 | + | |
| 1398 | + | |
| 1399 | + | |
| 1400 | + | |
| 1401 | + | |
| 1402 | + | |
| 1403 | + | |
| 1404 | + | |
| 1405 | + | |
| 1406 | + | |
| 1407 | + | |
| 1408 | + | |
| 1409 | + | |
| 1410 | + | |
| 1411 | + | |
| 1412 | + | |
| 1413 | + | |
| 1414 | + | |
| 1415 | + | |
| 1416 | + | |
| 1417 | + | |
| 1418 | + | |
| 1419 | + | |
| 1420 | + | |
| 1421 | + | |
| 1422 | + | |
| 1423 | + | |
| 1424 | + | |
| 1425 | + | |
| 1426 | + | |
1385 | 1427 | | |
1386 | 1428 | | |
1387 | 1429 | | |
| |||
1551 | 1593 | | |
1552 | 1594 | | |
1553 | 1595 | | |
| 1596 | + | |
1554 | 1597 | | |
1555 | 1598 | | |
1556 | 1599 | | |
| |||
2048 | 2091 | | |
2049 | 2092 | | |
2050 | 2093 | | |
| 2094 | + | |
| 2095 | + | |
2051 | 2096 | | |
2052 | 2097 | | |
2053 | 2098 | | |
| |||
2454 | 2499 | | |
2455 | 2500 | | |
2456 | 2501 | | |
| 2502 | + | |
| 2503 | + | |
| 2504 | + | |
2457 | 2505 | | |
2458 | 2506 | | |
2459 | 2507 | | |
| |||
0 commit comments