User interfaces for a number of services offered by an information distribution system. In one method, first (e.g., interactive program guide) and second (e.g., video-on-demand) applications are provided to support a first and second user interfaces for first and second services, respectively. A control mechanism coordinates the passing of control between the applications. A root application supports communication between the first and second applications and a hardware layer. The control mechanism may be implemented with first and second message queues maintained for the first and second applications, respectively. Control may be passed to an application via a (launch) message provided to the associated message queue. Each application is operable in an active or inactive state. Only one application is typically active at any given moment, and this application processes key inputs at the terminal. The transition between the active and inactive states may be based on occurrence of events.
展开▼