~/talk

Live-Coding Custom Widgets with Simon

Talkat Fluttercon Europe 2025 · 2025-09-24..09-26· [flutter]
slides:none on file

Live codes a custom infinite canvas widget that only builds on-screen children, claiming ~470 lines of example code and a public repo at github.com/slightfoot/stack_canvas. Uses Flutter's RenderObject Element and Widget trees with a controller that tracks an origin offset, layout callbacks (the same mixin as LayoutBuilder), parentData positioning, and the framework's updateChildren diffing handles tree changes to detach offscreen widgets. Demo runs but bounding-box and fling features are work-in-progress. Only visible widgets stay in the widget tree.

AI-written summary · about

  1. 0:00Introduction
  2. 1:30Custom canvas challenge
  3. 5:51Stack canvas implementation
  4. 10:24Flutter’s three trees
  5. 14:17Building widgets during layout
  6. 22:21Custom render object walkthrough
  7. 25:50Custom render objects vs paint
  8. 28:17Widget recycling and memory
  9. 31:03Bounds and scrolling limits
  10. 43:33Conclusion
~/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.