A method for operating virtual machine sessions provided by a virtualization server in communication with at least one client computing device of a computing system to provide a hosted application that includes user interface (UI) elements comprising an ordered hierarchy of graphical control elements when sequenced therethrough, wherein the virtualization server is configured to enumerate UI elements at a top-level as a root element in a control view where the relative tab order of enumerated controls are retrieved using a tag index of each control element in an enumerated order, and insert the enumerated control element and tab order in a hierarchical tree, the method comprising:
- accessing the hosted application from at least one client computing device during one of the virtual machine sessions for receiving the hierarchical tree of the UI elements as an ordered hierarchy of graphical control elements, the client computing device operable to perform the following:
- displaying some of the UI elements from the hierarchical tree locally as local virtual UI elements and based upon the received hierarchical tree, maintaining the other UI elements hidden,
- applying user input as a tab or arrow key entry to one of the displayed UI elements as a graphical control element, and
- generating a local virtual UI element graphics overlay and displaying the local virtual UI element to which user input had been applied and one or more previously hidden UI elements as graphical control elements corresponding to a predicted response to the user input of the tab or arrow key entry;
- sending the user input of the tab or arrow key entry to the virtualization server, and
- receiving updated UI element graphics from the virtualization server corresponding to an actual response to the user input, and replacing at least a portion of the local virtual UI element graphics overlay with the received updated UI element graphics, and repeating the tab or arrow key entry for the next graphical control element in the ordered hierarchy of graphical control elements.