~/talk

Let's Use Modifier.Node

TalkinJapaneseat DroidKaigi 2023 · 2023-09-14..09-16· [android]
name:suji
links:none on file
slides:none on file

Explains why Modifier.Node replaces Modifier.composed: composed causes excessive recompositions and bloated Composition (example showed a simple clickable creating 34 remembers and 11 side‑effect composables). Describes Compose v1.3.0’s approach of splitting modifier state into a persistent node chain and a transient element chain, and walks through the Modifier.Node API (onAttach/onDetach/isAttached, create/update, equals/hashCode), migration steps, recommended code patterns for remember, CompositionLocal, disposableEffect/launchEffect, and a concrete TabIndicatorOffset Node implementation used in the DroidKaigi app.

AI-written summary · about

  1. 0:00Modifier.Node intro
  2. 1:25Performance in Modifier.composed
  3. 3:31Previous Modifier problems
  4. 5:17Modifier.composed issues
  5. 8:28Need for Modifier.Node
  6. 9:31Modifier.Node explained
  7. 10:35Modifier.Node lifecycle
  8. 11:57Modifier.Element vs Node
  9. 14:24Migrating to Modifier.Node
  10. 15:28Implementing Modifier.Node classes
  11. 17:14Modifier.Element details
  12. 18:15Rewriting Compose to Modifier.Node
  13. 21:54Complex Modifier.Node functions
  14. 23:41TabIndicatorOffset migration
  15. 29:43Q&A
~/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.