



Exemplary embodiments of methods and apparatuses to provide a coherent user interface across output devices having various characteristics are described. Rendering into a first window back buffer is performed to output a window on a first output device having first characteristics, and rendering into a second window back buffer is performed to display the window on a second output device having second characteristics. Pixel values of the window outputted on the first output device are stored in the first window back buffer, and the pixel values of the window outputted on the second output device are stored in the second window back buffer. The size of the first window back buffer is associated with the first characteristics of the first output device, and the size of the second window back buffer is associated with the second characteristics of the second output device.
Here's Apple's summary of the invention: "Exemplary embodiments of methods and apparatuses to provide a coherent crisp user interface across output devices having various characteristics are described. Rendering into a first window back buffer is performed to output a window on a first output device having first characteristics, and rendering into a second window back buffer is performed to output the window on a second output device having second characteristics. Rendering into the first window back buffer at the first characteristics and rendering into the second window back buffer at the second characteristics may be synchronized. Rendering into the first window back buffer and into the second window back buffer may be performed to output a first portion of the window on the first output device and to output a second portion of the window on the second output device.
"The first window back buffer may be allocated according to the first characteristics of the first output device, and the second window back buffer may be allocated according to the second characteristics of the output device. Values of pixels representing a content of the window on the first output device are stored in the first window back buffer, and the values of the pixels representing the content of the window on the second output device are stored in the second window back buffer. The size of the first window back buffer may be associated with the first characteristics of the first output device, and the size of the second window back buffer may be associated with the second characteristics of the second output device.
"In an exemplary embodiment, pixels representing a content of the window outputted on the first output device are scaled to create a scaled version of the pixels. A third window back buffer may be allocated to store values of the scaled version of the pixels. The third window back buffer may be allocated in response to an event. In an exemplary embodiment, a scaling factor is determined based on the characteristics of the first output device. The third window back buffer can be, in certain embodiments, created in response to the event before creating the second window back buffer and in so doing the third window back buffer can act as a fallback buffer in case the second window back buffer cannot be created quickly enough."
The inventor is Michael A. Swingler. The graphic below illustrates a typical buffered window system.
For more info on patents, check out Patents.com, a free patent search site.



