improve undo-button interface