IP Library Granted Patent US 10,459,609
Granted Patent B2
US 10,459,609 · App. 16/043,825 · Granted Oct 29, 2019

Multi-stage data page rendering

Inventors: Brian Lee (Sunnyvale, CA); Gaspard van Koningsveld (San Jose, CA); Kevin Morgan (Palo Alto, CA); Michael Kross (Palo Alto, CA)
Assignee: Palantir Technologies Inc.
G06F3/0483G06F3/0484G06F17/2247
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 10,459,609
App. No.
16/043,825
Granted
Oct 29, 2019
Kind
B2
Abstract

The present disclosure relates to systems and techniques for multi-stage rendering of data pages for display in a data page display window. The present disclosure also relates to rendering data as part of a background instance of a data page renderer. The present disclosure also relates to displaying data requested from a workspace application in a data page window once the requested data is sufficiently rendered as part of a background instance of a data page renderer. The present disclosure also relates to providing a pool of background instances of multiple data page renderers for rendering and pre-rendering data pages for storage and eventual display in a data page window.

Claims (47)

1. A computing system comprising:

a computer readable storage medium having program instructions embodied therewith; and

one or more computer hardware processors configured to execute the program instructions to cause the computing system to:

receive, by a workspace application, a first user interface input requesting rendering of a first data page for display in a data page window;

render the first data page with a data page renderer;

display the rendered first data page within the data page window;

receive a second user interface input requesting rendering of a second data page for display in the data page window;

render the second data page with a second data page renderer;

receive a control signal from the second data page renderer indicating that at least a threshold percentage of the second data page is rendered; and

in response to the workspace application receiving the control signal, initiate an update of the data page window to display the second data page in place of the first data page.

2. The computing system of claim 1 , wherein the program instructions further cause the computing system to store the second data page in a memory device until the control signal is received by the workspace application.

3. The computing system of claim 1 , wherein the second data page renderer comprises a second instance of the data page renderer.

4. The computing system of claim 1 , wherein a plurality of instances of the data page renderer are selectable by the workspace application for pre-rendering data pages.

5. The computing system of claim 1 , wherein the program instructions further cause the computing system to:

determine an amount of memory required to render the second data page; and

render the second data page with the second data page renderer based at least in part on the amount of memory required to render the second data page.

6. The computing system of claim 1 , wherein the first data page comprises one of a web page, data item, or a helper application.

7. The computing system of claim 1 , wherein the data page renderer comprises a web browser.

8. The computing system of claim 1 , wherein the program instructions further cause the computing system to display a processing indicator in the data page window while the second data page is being rendered.

9. The computing system of claim 8 , wherein displaying the second data page in place of the first data page occurs near real-time relative to when the update of the date page window is initiated.

10. The computing system of claim 1 , wherein one or more additional data pages are rendered by one or more other instances of the data page renderer based at least in part on the second user interface input.

11. The computing system of claim 1 , wherein the data page window is rendered by the workspace application.

12. A method comprising:

receiving, by a workspace application, a first user interface input requesting rendering of a first data page for display in a data page window;

rendering the first data page with a data page renderer;

displaying the rendered first data page within the data page window;

receiving a second user interface input requesting rendering of a second data page to be displayed in the data page window;

rendering the second data page with a second data page renderer;

receiving a control signal from the second data page renderer indicating that at least in part a threshold percentage of the second data page is rendered; and

in response to the workspace application receiving the control signal, initiating an update of the data page window to display the second data page in place of the first data page.

13. The method of claim 12 , further comprising:

storing the second data page in a memory device until the control signal is received by the workspace application.

14. The method of claim 12 , wherein the second data page renderer comprises a second instance of the data page renderer.

15. The method of claim 12 , wherein a pool of instances of a plurality of data page renderers are selectable by the workspace application for pre-rendering data pages.

16. The method of claim 12 , further comprising:

determining an amount of memory required to render the second data page; and

rendering the second data page with the second data page renderer based at least in part on the amount of memory required to render the second data page.

17. The method of claim 12 , wherein displaying the second data page in place of the first data page occurs near real-time relative to when the data page window is updating.

18. The method of claim 12 , wherein one or more additional data pages are rendered by one or more other instances of the second data page renderer based at least in part on the second user interface input.

19. A non-transitory computer readable medium having software instructions stored thereon, the software instructions executable by a hardware computer processor to cause a computing system to perform operations comprising:

receiving, by a workspace application, a first user interface input requesting rendering of a first data page for display in a data page window;

rendering the first data page with a data page renderer;

displaying the rendered first data page within the data page window;

receiving a second user interface input requesting rendering of a second data page for display in the data page window;

rendering the second data page with a second data page renderer;

receiving a control signal from the second data page renderer indicating that at least a threshold percentage of the second data page is rendered; and

in response to the workspace application receiving the control signal, initiating an update of the data page window to display the second data page in place of the first data page.

Assignments (8)
ASSIGNMENT OF INTELLECTUAL PROPERTY SECURITY AGREEMENTS Recorded Jul 3, 2022
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: WELLS FARGO BANK, N.A.
Reel/Frame 060572/0640 →
SECURITY INTEREST Recorded Jul 3, 2022
From: PALANTIR TECHNOLOGIES INC.
To: WELLS FARGO BANK, N.A.
Reel/Frame 060572/0506 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ERRONEOUSLY LISTED PATENT BY REMOVING APPLICATION NO. 16/832267 FROM THE RELEASE OF SECURITY INTEREST PREVIOUSLY RECORDED ON REEL 052856 FRAME 0382. ASSIGNOR(S) HEREBY CONFIRMS THE RELEASE OF SECURITY INTEREST. Recorded Aug 26, 2021
From: ROYAL BANK OF CANADA
To: PALANTIR TECHNOLOGIES INC.
Reel/Frame 057335/0753 →
SECURITY INTEREST Recorded Jun 4, 2020
From: PALANTIR TECHNOLOGIES INC.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 052856/0817 →
RELEASE OF SECURITY INTEREST Recorded Jun 4, 2020
From: ROYAL BANK OF CANADA
To: PALANTIR TECHNOLOGIES INC.
Reel/Frame 052856/0382 →
SECURITY INTEREST Recorded Jan 27, 2020
From: PALANTIR TECHNOLOGIES INC.
To: MORGAN STANLEY SENIOR FUNDING, INC., AS ADMINISTRATIVE AGENT
Reel/Frame 051713/0149 →
SECURITY INTEREST Recorded Jan 27, 2020
From: PALANTIR TECHNOLOGIES INC.
To: ROYAL BANK OF CANADA, AS ADMINISTRATIVE AGENT
Reel/Frame 051709/0471 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 14, 2018
From: LEE, BRIAN; VAN KONINGSVELD, GASPARD; MORGAN, KEVIN; KROSS, MICHAEL
To: PALANTIR TECHNOLOGIES INC.
Reel/Frame 046882/0352 →