Method of rendering a user interface
AssigneeResearch In Motion Limited
InventorsMathias LEWIN, Jens Ola ANDERSSON, Peter LJUNGKRANTZ, Christoffer GURELL, Johan MOWITZ
Life of this patent
Estimating the term…
Abstract
A user interface (UI) is presented in which a UI client engine is associated with an application, and a UI rendering engine is associated with the client engine. The UI client engine processes a client thread to manage a scene graph. The UI rendering engine receives the scene graph and data items associated with elements of the scene graph, and processes a rendering thread to render a UI in accordance with the scene graph and the data items, independently of further input from the client UI engine.
Claims29
A user interface (UI) system comprising:
- a display for displaying a UI;
- a plurality of UI client engines each associated with a respective one of a plurality of applications, each of the plurality of UI client engines configured for:
- determining a corresponding UI component tree for its respective one of the plurality of applications,
- receiving inputs, from its respective one of the plurality of applications, related to elements of the UI component tree, and
- determining UI data items related to the inputs;
- a UI rendering engine associated with the display, the UI rendering engine configured for:
- receiving the UI component trees from the plurality of UI client engines,
- joining the plurality of UI component trees into a single tree structure;
- determining a visual node tree for the single tree structure;
- receiving, from at least one of the plurality of UI client engines, UI data items related to elements of the single tree structure;
- populating the visual node tree with the UI data items;
- and
- rendering the UI in accordance with the visual node tree independently of further input from the plurality of UI client engines.
A method of rendering a user interface (UI), the method comprising:
- for each of a plurality of applications, receiving, from a corresponding one of a plurality of UI client engines, a corresponding one of a plurality of UI component trees;
- joining the plurality of UI component trees into a single tree structure;
- determining a visual node tree for the single tree structure;
- receiving, from at least one of the plurality of UI client engines, UI data items related to elements of the single tree structure;
- populating the visual node tree with the UI data items;
- and
- rendering the UI in accordance with the visual node tree independently of further input from the plurality of UI client engines.
An electronic device comprising:
- one or more processors;
- and
- a memory, the memory carrying instructions which, when carried out by the processor, cause the processor to provide a UI rendering engine configured to carry out a method of rendering a user interface (UI), the method comprising:
- for each of a plurality of applications, receiving, from a corresponding one of a plurality of UI client engines, a corresponding one of a plurality of UI component trees;
- joining the plurality of UI component trees into a single tree structure;
- determining a visual node tree for the single tree structure;
- receiving, from at least one of the plurality of UI client engines, UI data items related to elements of the single tree structure;
- populating the visual node tree with the UI data items;
- and
- rendering the UI in accordance with the visual node tree independently of further input from the plurality of UI client engines.
A computer program product carrying instructions which, when executed by a computer, cause the computer to provide a UI rendering engine configured to carry out a method of rendering a user interface (UI), the method comprising:
- for each of a plurality of applications, receiving, from a corresponding one of a plurality of UI client engines, a corresponding one of a plurality of UI component trees;
- joining the plurality of UI component trees into a single tree structure;
- determining a visual node tree for the single tree structure;
- receiving, from at least one of the plurality of UI client engines, UI data items related to elements of the single tree structure;
- populating the visual node tree with the UI data items;
- and
- rendering the UI in accordance with the visual node tree independently of further input from the plurality of UI client engines.
Dependencies are inferred from the claim text.