List Type Toggle

You could probably do this on top of the regular list schema. Maybe the approach could compute the changes you want to make from a ‘flattened’ representation of the selected blocks, and then somehow figure out which tree manipulations are necessary to produce the computed changes.