Patent attributes
Methods and apparatus, including computer program products, implement techniques for rendering the user interface of a software application. A client computer provides a user interface for a computer program application. The user interface is operable to receive input from a user interacting with the client and to generate user interaction events from the input. One or more possible user interaction events are identified on the client while the user interface is in a current user interface state. The possible user interaction events are user interaction events that would arise from input the user interface could possibly receive in the current user interface state from the user. One or more of the possible user interaction events are pre-processed to generate one or more possible user interface states. The possible user interface states are stored for later use.