@add animation undo/redo support