fixed undo,redo