1. A system, comprising: one or more processors; memory; and a control application stored in the memory, the control application comprising instructions to: retain contextual information for a second application; receive a notification from the second application that the retained contextual information is outdated; receive an indication that a text manipulation event has occurred based on a keyboard input that modifies text in a user interface of the second application, wherein the keyboard input is generated based on input with a keyboard that includes keys with corresponding hit zones; send a query to the second application to obtain updated contextual information established by the second application prior to the event, wherein the updated contextual information is based on internal state information for the second application that is not directly accessible by the control application, and the updated contextual information provides context to the text manipulation event that occurred at the location in the user interface of the second application; receive the updated contextual information from the second application; and adjust a size of the hit zone of one or more keys on the keyboard based on the updated contextual information providing context to the text manipulation event; and wherein the one or more commands cause the second application to execute the one or more commands issued by the control application.
1. A system, comprising: one or more processors; memory; and a control application stored in the memory, the control application comprising instructions to: retain contextual information for a second application; receive a notification from the second application that the retained contextual information is outdated; receive an indication that a text manipulation event has occurred based on a keyboard input that modifies text in a user interface of the second application, wherein the keyboard input is generated based on input with a keyboard that includes keys with corresponding hit zones; send a query to the second application to obtain updated contextual information established by the second application prior to the event, wherein the updated contextual information is based on internal state information for the second application that is not directly accessible by the control application, and the updated contextual information provides context to the text manipulation event that occurred at the location in the user interface of the second application; receive the updated contextual information from the second application; and adjust a size of the hit zone of one or more keys on the keyboard based on the updated contextual information providing context to the text manipulation event; and wherein the one or more commands cause the second application to execute the one or more commands issued by the control application. 14. The system of claim 1 , wherein the second application includes instructions to notify the control application that contextual information obtained by the control application from the second application can no longer be relied upon by the control application.