Block commands should work on full range - not only editable parts - decision what to do with non-editable elements will be made later.
Do not try to create an undo image with selection when locking undo manager, because contents might change.
Reset selection before faking it.
Introduce domInvalidated event.
Reinit broken widgets in checkWidgets method. Call checkWidgets on domInvalidated.