Patent ID: 8095865

Claim:
A computer storage medium having computer-executable instructions for causing a computer to perform steps, the computer storage medium not consisting of a propagating signal, the steps comprising: tracking a dirty state of user interface elements in a tree of user interface elements, the tree containing a plurality of nodes, and the dirty state being operable to allow one or more dirty subtrees of the nodes to be identified; identifying a root node for each of the dirty subtrees, the root node is a node that does not have an immediate ancestor that is also dirty, wherein the identifying of the root node for each of the dirty subtrees is facilitated by analyzing the dirty state and additional state associated with the nodes in the tree, wherein the additional state includes an indicator that specifies whether or not a selected one of the nodes has a dirty descendant node, wherein the additional state further includes an indicator that specifies whether or not a selected one of the nodes has a dirty ancestor node; and updating affected portions of the tree starting with the root node that was identified for each of the dirty subtrees, wherein the updating step starts with the root node that was identified for each of the dirty subtrees so that updates are not performed on child nodes in the dirty subtrees that are then later overwritten due to updates made in parent nodes.