1. A system comprising: a memory comprising: a primary framebuffer for storing display data; a video adapter driver for maintaining a queue of drawing primitives, wherein each entry of the queue comprises a sequence number and a drawing primitive; a display encoder for encoding and transmitting display data to the remote client terminal; and a secondary framebuffer accessible to the display encoder; and a processor programmed to: update the queue upon execution of drawing primitives into the primary framebuffer; receive a request from the display encoder for a list of drawing primitives that corresponds updated display data in the secondary framebuffer; extract the requested list of drawing primitives from the queue; and provide the requested list of drawing primitives to the display encoder, wherein the display encoder is able to selectively transmit to the remote client terminal a drawing primitive in the requested list over updated display data in the secondary framebuffer corresponding to the drawing primitive depending upon a bandwidth usage assessment.