mirror of
https://github.com/block/buzz.git
synced 2026-11-03 16:01:35 +00:00
scrollable_positioned_list keys every item by index. The chat list is reversed, so a new message moves every row to a new key and Flutter remounts every built row: hooks, markdown parses and image listeners. Add an optional findChildIndexCallback to the vendored package. With it set, an item keeps its own key and the callback finds its new index, the way ListView does. Item positions now read the index from the item wrapper instead of its key. The chat timeline maps each row key to its index. Co-authored-by: Carl <32a2e2c9d428ee08902cab75d956da2c1d235a22d4766b0dd4138bf6e2e5db1d@buzz.block.builderlab.xyz> Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Signed-off-by: Wes <wesbillman@users.noreply.github.com>