fd7e17523d8affb442f943f3f2d96fa20fe3b856
surface_changed's self.render.resize(...) -- UiRenderState::output_size, what every widget's absolute PixelRegion (a fixed .height(56), notably) is computed against -- was still being handed raw physical width/height after the previous commit switched AndroidRenderer's own size()/resize()/ new() to logical (physical / content_scale) for the shader's window uniform. That split layout and the shader into two different units: layout placed a "56"-unit row inside a ~2219-physical-unit-tall canvas (an absolute box, still exactly 56 units), the shader then divided that same 56 by a ~845-unit *logical* window dimension -- found on the emulator by measuring a fresh install's top button row at ~40 physical px against the ~147px `56 * content_scale` predicts. Proportional (rest(n)) sizes hid the mismatch by adapting to whichever total they were given; only fixed sizes exposed it. Now divides by content_scale here too, matching every other call site. Verified on this checkout's emulator (EMU_GPU default, force-gles): run-bench.sh completes end to end (frames=691, 24/24 swipes streamed 400/400 events) and a fresh-install screenshot shows visibly larger text than before this and the previous commit, with the top row's own sizing still worth a closer look on a real device -- see RUST.md's P0 box for what remains unverified there. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Languages
Rust
53%
Kotlin
44.4%
Shell
2.6%