A method for reducing tearing in an application display on a client, comprising: determining at least two logically related drawing orders in an order heap, the logically related drawing orders having a start and an end; wrapping the logically related drawing orders by placing a begin marker and at the start of the logically related drawing orders, and placing an end marker at the end of the end of the logically related drawing orders; and sending the client the wrapped logically related drawing orders across a communications network, with an indication to display all of the logically related drawing orders simultaneously; characterized by: receiving the drawing orders at the client; extracting, by the client, the drawing orders; upon encountering the begin marker, not copying subsequent drawing orders, that are rendered to a shadow buffer, to a display surface until the corresponding end marker is encountered; the method further including flushing all display data between the begin marker and the end marker from the shadow buffer to a display surface when the end marker is received before a timer expiration of a timer and flushing all display data between the begin marker and the most recently received display data, including the most recently received display data when the timer expiration of the timer is reached; wherein the timer is reset every time the display surface is updated. determining at least two logically related drawing orders in an order heap, the logically related drawing orders having a start and an end; wrapping the logically related drawing orders by placing a begin marker and at the start of the logically related drawing orders, and placing an end marker at the end of the end of the logically related drawing orders; and sending the client the wrapped logically related drawing orders across a communications network, with an indication to display all of the logically related drawing orders simultaneously; characterized by: receiving the drawing orders at the client; extracting, by the client, the drawing orders; upon encountering the begin marker, not copying subsequent drawing orders, that are rendered to a shadow buffer, to a display surface until the corresponding end marker is encountered; the method further including flushing all display data between the begin marker and the end marker from the shadow buffer to a display surface when the end marker is received before a timer expiration of a timer and flushing all display data between the begin marker and the most recently received display data, including the most recently received display data when the timer expiration of the timer is reached; wherein the timer is reset every time the display surface is updated. receiving the drawing orders at the client; extracting, by the client, the drawing orders; upon encountering the begin marker, not copying subsequent drawing orders, that are rendered to a shadow buffer, to a display surface until the corresponding end marker is encountered; the method further including flushing all display data between the begin marker and the end marker from the shadow buffer to a display surface when the end marker is received before a timer expiration of a timer and flushing all display data between the begin marker and the most recently received display data, including the most recently received display data when the timer expiration of the timer is reached; wherein the timer is reset every time the display surface is updated.