~/talk

Digging Deeper with Subcomposition + Custom Compose Layouts

Talkat droidcon London 2025 · 2025-10-30..10-31· [android, frontend-architecture]
slides:none on file

Explains when to replace rows/columns with a custom layout to move heavy math from composition into the measure phase, showing a timeline demo that drops from about 300 compositions to near-zero recompositions measured in Layout Inspector; demonstrates how cyclical phase dependencies break Paparazzi screenshots and previews and how boxWithConstraints or subcomposeLayout solves it by composing and measuring a bottom bar first, then composing content with an injected padding parameter so the layout renders correctly in one frame.

AI-written summary · about

  1. 0:00Introduction
  2. 1:07Composition layout drawing phases
  3. 3:15State hygiene phase reads
  4. 5:00Custom layouts Layout composable
  5. 7:52Performance benefits custom layouts
  6. 12:47Custom layouts complex UI
  7. 16:38Cyclical phase dependencies recomposition
  8. 20:54Nested layouts performance impact
  9. 23:00Tooling productivity consequences
  10. 25:06Single source layout truth
  11. 27:56Avoiding phase dependencies BoxWithConstraints
  12. 30:01Subcomposition in Compose
  13. 33:11Viewer component example
  14. 36:22How SubcomposeLayout works
  15. 39:54SubcomposeLayout benefits dynamic state
  16. 41:46SubcomposeLayout vs custom layout
  17. 42:49Software dynamic dance
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.