If some row widgets of VerticalLayout are living
in its own lifetime() we have a use-after-free.
Because this lifetime() destroys this child row
already after ~VerticalLayout which can call back
into VerticalLayout::childHeightUpdated (the subscription
lives inside the same lifetime() as well) which
will access _rows member that was already destroyed.
Now all subscriptions die before _rows are destroyed.