For frames Kino.Output.to_livebook/2 returns an output with the current set of outputs. Currently containers (grid/tabs/frame) convert their contents to output eagerly, and so if the content representation changes, a future container render is not going to know about it. Example:
For frames
Kino.Output.to_livebook/2
returns an output with the current set of outputs. Currently containers (grid/tabs/frame) convert their contents to output eagerly, and so if the content representation changes, a future container render is not going to know about it. Example:This PR makes the conversion lazy, so that containers store their contents as is, and only call
Kino.Output.to_livebook/2
on render.