[wip] move creation from tabchild into puppet widget vsync dispatcher