Patent attributes
A system restores a user interface (“UI”) state. The system receives an action performed by a user that interacts with a UI, and determines a transaction based on the action, where the transaction is configured to modify a model corresponding to the UI. The system stores a first UI state of the UI and a first model state of the model, and then commits the transaction. The system subsequently determines to undo the transaction based on a first user interaction. The system then restores the UI to the first UI state and the model to the first model state. In one embodiment, the first model state is restored before undoing the transaction, while the first UI state is restored after undoing the transaction.