fix: clip placement damage to the clip a node was laid out in (#91)

Scrolling a scroll view damaged the full rectangles of items straddling or
leaving its edges, so the damage region escaped the scroll view even though
nothing inside it can paint outside. Layout now records the painter's clip
rect for each placed node and intersects placement, change and removal
damage with it. A placement is only reused when its clip is unchanged, so
descendants never keep a stale clip. Overlay content is laid out with an
unclipped painter, matching how it is painted.


Claude-Session: https://claude.ai/code/session_01G6Smx2qVi2cuPSHhUddNCB

Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: be3-merge-queue[bot] <332166134+be3-merge-queue[bot]@users.noreply.github.com>
06e1e68443pfg committed on 9/22/2026, 6:27:09 PM· committed by GitHubparentd57eff9
5 files changedLine totals unavailable