Patent ID: 8584171

Claim:
A method for navigating an entertainment-programming guide, the method comprising: establishing a connection from a client device to a server computer through a public network; receiving a first dynamic content array at the client device from the server computer over the public network; determining, upon each access of the server computer, whether the first dynamic content array has been updated since a previous access of the server computer, and overwriting the first dynamic content array if a new version is available, the first dynamic content array comprising: descriptive information comprising text displayable in a program guide describing a plurality of entertainment programs available from a download service, video information comprising one or more video clips playable by the client device, the video information being associated with at least one of the plurality of entertainment programs, element information associated with a first set of elements to be displayed in a first display of a user interface, the first set of elements each associated with a respective first portion of the plurality of entertainment programs, and sub-element information pertaining to sub-elements associated with at least one of the first set of elements, the sub-elements to be displayed in a second display of the user interface, the sub-elements each associated with a respective sub-portion of one of the first portions of the plurality of entertainment programs; storing the first dynamic content array on the client device, including the descriptive information, the video information, the element information, and the sub-element information; presenting entertainment-program information with the client device based on the first dynamic content array stored on the client device by displaying the first display of the user interface, the first display comprising: a main display area; a preview area for displaying the one or more video clips; a recommendation area displaying links to content determined to be of interest based on past usage or preference information; and a library area displaying indications of content that has already been downloaded to the client device; receiving an indication of selection of a first element of the first set of elements displayed in the first display; in response to receiving the indication: retrieving a portion of the sub-element information associated with the first element from the stored first content array; and displaying the second display of the user interface based on the retrieved sub-element information.