Patent ID: 9589540
Date: 2017-03-07
CPC Classifications: G06F,G09G,Y02D

Claim:
1. A computer-implemented process, performed by a compositor of a desktop rendering engine in a computer, the compositor combining graphic data, from multiple windows provided by applications executed on the computer, with a background, to produce a graphical user interface for the computer on a display for the computer, the process comprising: the compositor receiving, from a first application executed on the computer, a sequence of images at a first video frame rate; the compositor receiving information identifying the first video frame rate for the sequence of images; the compositor accessing, from a second application executed on the computer, graphic data at a second frame rate; the compositor receiving information identifying the second video frame rate for the graphic data; the compositor receiving information identifying available refresh rates for the display where the graphical user interface is to be displayed; the compositor selecting a refresh rate for the display from among the available refresh rates based on at least the first video frame rate and the second video frame rate by: in response to a determination that the first video frame rate and the second video frame rate are not equal, and that a least common multiple of the first video frame rate and the second video frame rate is an available refresh rate, selecting the least common multiple as the refresh rate; in response to a determination that the least common multiple of the first video frame rate and the second video frame rate is not an available refresh rate, selecting a higher rate of the first video frame rate and the second video frame rate as a target rate; in response to a determination that an integer multiple of the target rate is an available refresh rate, selecting the integer multiple of the target rate as the refresh rate; and in response to a determination that an integer multiple of the target rate is not an available refresh rate, selecting a lowest available refresh rate higher than the target rate as the refresh rate; the compositor generating, at the selected refresh rate, output display data for the graphical user interface by combining an image from the sequence of images from the first application and the graphic data from the second application with the background; the compositor providing the output display data to the display at the selected refresh rate; and the compositor setting the refresh rate of the display to the selected refresh rate.