b97347329f532d942361502211361694fe087680
Changing a label's text posts a LayoutRequest to the widget holding it, and that event is only delivered when the event loop next runs. The panel measured its card by invalidating the body's own layout alone, so any layout nested inside the card -- which is all of them -- still answered with the width of the text before the change. The panel therefore placed itself against the previous values and corrected itself on the following refresh, a frame late. Measured on a BarRow: with the value going idle, 0%, 42%, 100% the panel's measurement reported 16, 16, 17, 23 where the settled widths were 16, 17, 23, 29 -- one change behind throughout. Re-activating every layout in the card gives the settled answer without waiting for the event loop. This is not the size change the player reported, which I could not reproduce here; it is a second, quieter one found while looking for it. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01JcReq7hVk4KUPhTDKWAG7K
Description
No description provided
Languages
C++
96%
CMake
2.2%
Python
1.2%
C
0.6%