IP Library Granted Patent US 9,626,336
Granted Patent B2
US 9,626,336 · App. 14/583,488 · Granted Apr 18, 2017

Remote management of a graphical user interface

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,626,336
App. No.
14/583,488
Granted
Apr 18, 2017
Kind
B2
Abstract

On a computing device, a user interface (UI) layout file is received. The UI layout file defines a visual layout of the GUI. The UI layout file includes a plurality of UI elements each including a UI element identifier and a UI element descriptor. The GUI is displayed via a display according to the UI layout file. An update object specifying UI elements in the UI layout file to be changed is received. The update object includes for each UI element to be changed, the UI element identifier and an update payload including updated information to be displayed via the UI element. The GUI is changed via the display according to the update object.

Claims (41)

1. A computing device comprising:

a display;

a logic machine; and

a storage machine holding instructions executable by the logic machine to:

receive a user interface (UI) layout file that defines a visual layout of a graphical user interface (GUI), the UI layout file including a plurality of UI elements, each UI element including a UI element identifier and a UI element descriptor, the UI element identifier distinguishing the UI element from every other UI element in the UI layout file and the UI element descriptor defining formatting attributes of information displayed via the UI element;

present via the display the GUI according to the UI layout file;

receive an update object specifying one or more UI elements in the UI layout file to be changed, the update object including for each UI element to be changed, the UI element identifier of the UI element and an update payload including updated information to be displayed in accordance with the UI element descriptor for the UI element; and

change via the display the GUI according to the update object.

2. The computing device of claim 1 , wherein the UI layout file has a binary machine-readable format and the update object has a binary machine-readable format.

3. The computing device of claim 1 , wherein the UI layout file has a flattened tree structure in which the plurality of UI elements are ordered in the UI layout file according to parent-child relationships.

4. The computing device of claim 1 , wherein the UI layout file includes a page header that indicates a version of the UI layout file, a number of immediate children of a root UI element, and a total number of UI elements in the UI layout file.

5. The computing device of claim 1 , wherein the attributes defined by the UI element descriptor include one or more of a UI element type, a memory size, a position, a color, font style, alignment, transparency, and a number of child UI elements.

6. The computing device of claim 1 , wherein the storage machine further holds instructions executable by the logic machine to:

for each UI element specified by the update object, determine the attributes of the UI element from the UI layout file based on the UI element identifier of the UI element.

7. The computing device of claim 1 , wherein the UI layout file and the update object are received from a service computing device over a network connection.

8. The computing device of claim 1 , wherein the UI layout file is received from a service computing device via a host computing device relay.

9. On a computing device, a method for managing presentation of a graphical user interface (GUI), the method comprising:

receiving, via a digital communication channel, a user interface (UI) layout file that defines a visual layout of the GUI, the UI layout file including a plurality of UI elements, each UI element including a UI element identifier and a UI element descriptor, the UI element identifier distinguishing the UI element from every other UI element in the UI layout file and the UI element descriptor defining attributes of information displayed via the UI element;

presenting, via a display of the computing device, the GUI according to the UI layout file;

receiving, via the digital communication channel, an update object specifying one or more UI elements in the UI layout file to be changed, the update object including for each UI element to be changed, the UI element identifier of the UI element and an update payload including updated information to be displayed in accordance with the UI element descriptor for the UI element; and

changing via the display the GUI according to the update object.

10. The method of claim 9 , wherein the UI layout file has a binary machine-readable format and the update object has a binary machine-readable format.

11. The method of claim 9 , wherein the UI layout file has a flattened tree structure in which the plurality of UI elements are ordered in the UI layout file according to parent-child relationships.

12. The method of claim 9 , wherein the UI layout file includes a page header that indicates a version of the UI layout file, a number of immediate children of a root UI element, and a total number of UI elements in the UI layout file.

13. The method of claim 9 , wherein the attributes defined by the UI element descriptor include one or more of a UI element type, a memory size, a position, a color, font style, alignment, transparency, and a number of child UI elements.

14. The method of claim 9 , further comprising:

for each UI element specified by the update object, determining the attributes of the UI element from the UI layout file based on the UI element identifier of the UI element.

15. The method of claim 9 , wherein the UI layout file and the update object are received from a service computing device over a network connection.

16. The method of claim 9 , wherein the UI layout file is received from a service computing device via a host computing device relay.

17. A computing device comprising:

a logic machine; and

a storage machine holding instructions executable by the logic machine to:

provide a subscription to a plurality of subscribing computing devices for a user interface (UI) layout file that defines a visual layout of a graphical user interface (GUI) displayable by each of the plurality of computing devices, the UI layout file including a plurality of UI elements, each UI element including a UI element identifier and a UI element descriptor, the UI element identifier distinguishing the UI element from every other UI element in the UI layout file and the UI element descriptor defining attributes of information displayed via the UI element;

send the UI layout file to the plurality of subscribing computing devices to display the GUI according to the UI layout file;

generate an update object specifying one or more UI elements in the UI layout file to be changed, the update object including for each UI element to be changed, the UI element identifier of the UI element and an update payload including updated information to be displayed in accordance with the UI element descriptor for the UI element; and

send the update object to the plurality of subscribing computing devices to change the GUI according to the update object.

18. The computing device of claim 17 , wherein the storage machine further holds instructions executable by the logic machine to:

receive from a third-party computing device information having a human-readable format; and

perform a transform of the information having the human-readable format to generate the updated information having a binary machine-readable format, the update information being included in update object.

19. The computing device of claim 17 , wherein the UI layout file has a binary machine-readable format and the update object has a binary machine-readable format.

20. The method of claim 17 , wherein the UI layout file and the update object are sent to the one or more subscribing computing devices via a host computing device relay.

Assignments (2)
CORRECTIVE ASSIGNMENT TO CORRECT THE EXECUTION DATE FOR THE FIRST CONVEYING PARTY PREVIOUSLY RECORDED AT REEL: 034587 FRAME: 0379. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Jun 12, 2015
From: BENTLEY, DEVLIN DAVID; ALVI, ALI; FUQUA, TIMOTHY MICHAEL; SPENCE, GUS RALPH, III; PATTON, PRESTON A.; SHARMA, ANKUR
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 035902/0510 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 26, 2014
From: BENTLEY, DEVLIN DAVID; ALVI, ALI; FUQUA, TIMOTHY MICHAEL; SPENCE, GUS RALPH, III; PATTON, PRESTON A.; SHARMA, ANKUR
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 034587/0379 →