Telegram-iOS/submodules/TelegramUI/Components/Chat/ChatMessageRichDataBubbleContentNode
isaac 0d5b051820 InstantPage V2: support nested <details> blocks
A details block nested inside another rendered (title + chevron) but could not
expand: its body is hosted by a fresh InstantPageV2View whose detailsTapped
closure was never wired (only the top-level view's is, by the bubble), so the
nested title's tap hit a nil closure and was dropped. Wire the body view's
detailsTapped to chain through this view's onTitleTapped, which makeItemView
already routes to the owning view's detailsTapped -> the bubble's toggle
handler; this chains up through arbitrary nesting depth.

Also make the bubble's defaultExpanded(forDetailsIndex:) recurse into expanded
bodies so a nested details whose model default is expanded toggles from the
correct state (the flat top-level scan missed nested indices).

Known pre-existing limitation (unchanged): V2 keys expansion state by a flat
DFS index, so expanding a nested details can shift sibling indices.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-04 15:30:28 +02:00
..
Sources InstantPage V2: support nested <details> blocks 2026-06-04 15:30:28 +02:00
BUILD InstantPage V2: render server-sent thinking blocks 2026-05-30 18:47:03 +02:00