IP Library Granted Patent US 11,792,274
Granted Patent B2
US 11,792,274 · App. 17/677,224 · Granted Oct 17, 2023

Managing browser session navigation between one or more browsers

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 11,792,274
App. No.
17/677,224
Filed
Feb 22, 2022
Granted
Oct 17, 2023
Kind
B2
Art Unit
2454
USPC
709/203
Abstract

Methods and systems for detecting and/or synchronizing browsing session navigation between one or more browsers are described herein. A browser window associated with a browser application executing at a server device may be displayed at a client device. An instance of a local browser window may execute at the client device, and a page comprising content may be displayed via the instance of the local browser window. Commands to navigate to a different page may be issued to either browser, and the commands may be synchronized between the browsers.

Claims (54)

1. A method comprising:

receiving, by a computing device, an output of a remote application executing on a server;

displaying, on a first application executing on the computing device, the output as a webpage;

based on determining that an amount of bandwidth associated with the output exceeds a threshold bandwidth, providing, by the computing device, an overlay over at least a portion of the output of the remote application presented via the first application, the overlay being executable by a second application executing on the computing device and displaying at least a portion of the webpage;

exchanging, by the computing device, information between the remote application and the second application to navigate to another webpage based on a user input at the overlay of the second application, wherein the information includes:

a type of a navigation command, and

a quantity of pages to execute the navigation command, wherein the quantity of pages is determined by a comparison of indexes for webpages displayed by the overlay and the remote application.

2. The method of claim 1 , further comprising:

receiving, via the second application, the navigation command to navigate from a first page to a second page; and

based on the navigation command, synchronizing a first browsing history of the second application with a second browsing history of the remote application by addition of the second page to the second browsing history.

3. The method of claim 2 , wherein the exchanging the information comprises:

based on a determination that an index associated with the second page is less than an index associated with the first page, determining that the type of the navigation command comprises a backward command; and

determining, based on a difference between the index associated with the first page and the index associated with the second page, the quantity of pages associated with the backward command.

4. The method of claim 2 , wherein the exchanging the information comprises:

based on a determination that an index associated with the second page is greater than an index associated with the first page, determining that the type of the navigation command comprises a forward command; and

determining, based on a difference between the index associated with the second page and the index associated with the first page, the quantity of pages associated with the forward command.

5. The method of claim 2 , wherein the synchronizing the first browsing history with the second browsing history comprises:

based on a determination that an index associated with the second page does not exist, determining that the type of the navigation command comprises an entry of a new address of the second page;

generating an index associated with the second page;

removing one or more indexes having values greater than the index associated with the second page; and

transmitting an indication of the entry of the new address.

6. The method of claim 2 , wherein the synchronizing the first browsing history with the second browsing history comprises transmitting an instruction for the remote application to perform the navigation command to navigate to the second page.

7. The method of claim 2 , wherein the synchronizing the first browsing history with the second browsing history is performed in response to receiving:

a tag associated with the second page, and

a session identifier associated with the second browsing history.

8. The method of claim 2 , wherein the synchronizing the first browsing history with the second browsing history comprises updating a sequence of tags for the first browsing history and the second browsing history, and wherein each tag of the sequence of tags is associated with a page visited in the second browsing history.

9. The method of claim 8 , wherein the sequence of tags indicates an order of pages visited in the second browsing history.

10. The method of claim 1 , wherein the type of the navigation command comprises at least one of a forward command, a backward command, or a new uniform resource locator (URL) command.

11. The method of claim 1 , wherein the output of the remote application is received by the computing device via a remote presentation protocol.

12. A computing device comprising:

one or more processors; and

memory storing instructions that, when executed by the one or more processors, cause the computing device to:

receive an output of a remote application executing on a server;

display, on a first application executing on the computing device, the output as a webpage;

based on determining that an amount of bandwidth associated with the output exceeds a threshold bandwidth, provide an overlay over at least a portion of the output of the remote application presented via the first application, the overlay being executable by a second application executing on the computing device and displaying at least a portion of the webpage; and

exchange information between the remote application and the second application to navigate to another webpage based on a user input at the overlay of the second application, wherein the information includes:

a type of a navigation command, and

a quantity of pages to execute the navigation command, wherein the quantity of pages is determined by a comparison of indexes for webpages displayed by the overlay and the remote application.

13. The computing device of claim 12 , wherein the instructions, when executed by the one or more processors, further cause the computing device to:

receive, via the second application, the navigation command to navigate from a first page to a second page; and

based on the navigation command, synchronize a first browsing history of the second application with a second browsing history of the remote application by addition of the second page to the second browsing history.

14. The computing device of claim 12 , wherein the instructions, when executed by the one or more processors, cause the computing device to receive the output of the remote application via a remote presentation protocol.

15. A non-transitory computer-readable medium storing instructions that, when executed, cause:

receiving, by a computing device, an output of a remote application executing on a server;

displaying, on a first application executing on the computing device, the output as a webpage;

based on determining that an amount of bandwidth associated with the output exceeds a threshold bandwidth, providing, by the computing device, an overlay over at least a portion of the output of the remote application presented via the first application, the overlay being displayable by a second application executing on the computing device and displaying at least a portion of the webpage; and

exchanging, by the computing device, information between the remote application and the second application to navigate to another webpage based on a user input at the overlay of the second application, wherein the information includes:

a type of a navigation command, and

a quantity of pages to execute the navigation command, wherein the quantity of pages is determined by a comparison of indexes for webpages displayed by the overlay and the remote application.

16. The non-transitory computer-readable medium of claim 15 ,

wherein the instructions, when executed, further cause:

receiving, via the second application, the navigation command to navigate from a first page to a second page; and

based on the navigation command, synchronizing a first browsing history of the second application with a second browsing history of the remote application by addition of the second page to the second browsing history.

17. The non-transitory computer-readable medium of claim 15 , wherein the instructions, when executed, cause receiving the output of the remote application via a remote presentation protocol.