IP Library Granted Patent US 9,582,601
Granted Patent B2
US 9,582,601 · App. 14/584,881 · Granted Feb 28, 2017

Combining server-side and client-side user interface elements

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,582,601
App. No.
14/584,881
Granted
Feb 28, 2017
Kind
B2
Abstract

A method and apparatus are disclosed for combining server-supplied user interface elements with client-supplied user interface elements. The server-supplied user interface elements can be received by a client device and inserted into a client-supplied object model, such as a Document Object Model (DOM). The object model can then be used to render a page, such as a webpage. By injecting server-supplied user interface elements into a client object model, the client can intelligently combine UI elements from a server with UI elements from a client. In the situation where there are conflicting or overlapping UI elements, the client device can modify the object model to eliminate such conflicts or overlaps.

Claims (28)

1. A method of combining server-supplied user interface elements with client-supplied user-interface elements, comprising:

receiving user interface elements including style information from a server computer;

inserting the user interface elements and the style information into a client-supplied object model used to render a page, the client-supplied object model being stored in memory on a user device;

using a script to manipulate the user interface elements supplied by the server in the client-supplied object model;

for viewing by a user on the user device, rendering the page using the object model, wherein the object model includes client-supplied user interface elements and the user interface elements received from the server computer so that both the client-supplied user interface elements and the user interface elements received from the server computer are blended together on the rendered page, with the style information being applied to both the client-supplied user interface elements and the user interface elements received from the server computer.

2. The method of claim 1 , wherein the user interface elements and style information from the server computer are in HTML.

3. The method of claim 1 , wherein inserting includes searching on a division tag in the client-supplied object model and inserting the user interface elements and style information from the server computer into the division tag.

4. The method of claim 1 , wherein the object model is a Document Object Model used for HTML and further including the server computer for transmitting the user interface elements.

5. The method of claim 1 , further including checking a network connection and suppressing the user interface elements received from the server computer if there is not a network connection.

6. The method of claim 5 , wherein the user interface elements received from the server computer are cached and stored locally on the client device.

7. The method of claim 1 , further including comparing the client-supplied user interface elements with the server-supplied user interface elements, and, if there is a match, suppressing at least one of the matching user interface elements.

8. The method of claim 1 , further including receiving content from the server computer and inserting the content in the client-supplied object model.

9. The method of claim 8 , wherein the content is XML data.

10. A computer-readable nonvolatile storage storing instructions for performing a method of displaying a page on a client device, the method comprising:

receiving server-supplied user interface elements and style information;

inserting the server-supplied user interface elements into a client-supplied Document Object Model stored in memory on the client device including client-supplied user interface elements, wherein the inserting includes searching on a division tag in the Document Object Model and inserting the server-supplied user interface elements and style information into the division tag;

applying the style information to both the server-supplied user interface elements and the client-supplied user interface elements; and

for viewing by a user, displaying the server-supplied user interface elements with the client-supplied user interface elements on a same page using the Document Object Model on the client device with the applied styling information.

11. The computer-readable media of claim 10 , wherein receiving server-supplied user interface elements includes receiving HTML for displaying the server-supplied user interface elements.

12. The computer-readable media of claim 10 , further including executing a script on the client device and manipulating the server-supplied user interface elements in the Document Object Model.

13. The computer-readable media of claim 10 , further including determining whether the client device is connected to a network and, if not, modifying the DOM to display additional client-supplied user interface elements.

14. An apparatus for displaying a page of content on a client device, comprising:

a controller on the client device;

memory for storing a client-supplied object model used to display the page of content, wherein the controller is programmed to receive user interface elements and style information from a server, use a script to manipulate the server-supplied user interface elements, and to insert, using one or more tags in the object model, the received user interface elements and style information, as well as client-supplied user interface elements, in the object model for display; and

a display for displaying the page of content using the object model including the user interface elements and the style information received from the server computer.

15. The apparatus of claim 14 , wherein the object model is a Document Object Model and the user interface elements are in HTML.

16. The apparatus of claim 14 , wherein the script uses client data to make decisions about how to manipulate the server-supplied user interface elements.

17. The apparatus of claim 14 , wherein the one or more tags include a division tag.

Assignments (6)
SECURITY INTEREST Recorded Apr 28, 2025
From: ZESTY.AI, INC.
To: CANADIAN IMPERIAL BANK OF COMMERCE
Reel/Frame 070957/0919 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 7, 2020
From: LOT NETWORK INC.
To: POWERSCOUT, INC. D.B.A. ZESTY.AI
Reel/Frame 053996/0182 →
CHANGE OF NAME Recorded Oct 7, 2020
From: POWERSCOUT, INC.
To: ZESTY.AI, INC.
Reel/Frame 053996/0389 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 26, 2020
From: MICROSOFT TECHNOLOGY LICENSING, LLC
To: LOT NETWORK INC.
Reel/Frame 053608/0045 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 27, 2015
From: MICROSOFT CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 034819/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 23, 2015
From: D'AURELIO, RYAN JAMES; LEECE, MARK JOHN SAWREY; JOHNSON, ZACHARIAH GLEN; BERRETT, DOUGLAS DUANE; KOLLENKARK, SEAN
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 034800/0040 →