# US 10,871,873 B2 · Redirection of web content

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 10,871,873 B2
- Document ID: US10871873B2
- Status: Granted
- Kind: B2
- Application number: 16/751,493
- Filed: 2020-01-24
- Published: 2020-05-28
- Granted: 2020-12-22
- Earliest claimed: 2017-09-11
- Assignees: Citrix Systems, Inc.
- Applicants: Citrix Systems, Inc.
- Inventors: James Michael Page; Hariprasad Chowlur; Todd Giebler
- Web page: https://patentgrep.com/patent/US10871873B2

## CPC

- H04L 67/131: Protocols for games, networked simulations or virtual reality
- G06F 3/0481: based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
- G06F 16/957: Browsing optimisation, e.g. caching or content distillation
- G06T 11/60: Creating or editing images; Combining images with text
- H04L 67/02: based on web technology, e.g. hypertext transfer protocol [HTTP]
- H04L 67/56: Provisioning of proxy services (store-and-forward switching systems in data switching networks H04L12/54)
- H04L 67/563: Data redirection of data network streams
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- G06T: IMAGE DATA PROCESSING OR GENERATION, IN GENERAL

## Abstract

Aspects described herein are directed to the redirection of web content from a virtual desktop session on a remote computing device to a client computing device for rendering. A virtual delivery agent on the remote computing device may remote a web browser instance to a receiver on a client computing device. The virtual delivery agent may receive, from the remoted browser instance on client computing device, a uniform resource locator (URL). Based on the URL, the virtual delivery agent on the remote computing device may terminate loading of page content associated with the URL on the remote computing device. The virtual delivery agent may instruct the client computing device to render the page content in an overlaid position corresponding to the remoted web browser instance on the receiver of the client computing device.

## Claims

### Claim 1

A method comprising:
remoting, by a computing device through a virtual channel, a web browser instance to a client device;
receiving, at the computing device from the remoted web browser instance on the client device, a uniform resource locator (URL);
based on the URL, terminating, by the computing device, loading of a page content associated with the URL on the computing device;
generating, by the computing device, a window frame of the remoted web browser instance on the client device;
monitoring, by the computing device, a position of a window frame of the remoted web browser instance on the client device;
detecting, by the computing device, a movement of the window frame of the remoted web browser instance on the client device; and
based on the movement of the window frame, instructing, by the computing device, the client device to render the page content as an overlay within the remoted web browser instance on the client device.

### Claim 2 (depends on 1)

The method of claim 1, further comprising:
redirecting, by the computing device, locational and clipping information for the window frame of the remoted web browser instance to the client device.

### Claim 3 (depends on 2)

The method of claim 2, wherein the instructing, by the computing device, the client device to render the page content as the overlay within the remoted web browser instance on the client device is further based off the redirected locational and clipping information for the window frame of the remoted web browser instance.

### Claim 4 (depends on 1)

The method of claim 1, wherein the generating of the window frame contains no enclosed content.

### Claim 5 (depends on 1)

The method of claim 1, wherein the detecting, by the computing device, a movement of the window frame of the remoted web browser instance on the client device comprises one or more updates concerning visibility, scaling, and scrolling information of the remoted web browser instance.

### Claim 6 (depends on 1)

The method of claim 1, further comprising:
analyzing, by the computing device, the URL, and an associated page content.

### Claim 7 (depends on 1)

The method of claim 1, further comprising:
inserting, by the computing device, a functional script into the page content associated with the URL; and
based on the URL, activating, by the computing device, the functional script to prevent the page content from loading on the computing device.

### Claim 8

A method comprising:
providing, by a computing device, a web browser to a client device, the web browser being accessible by the client device via a virtual machine session provided by the computing device;
receiving, by the computing device, data from the web browser, the data being indicative of a web address for a webpage;
determining, by the computing device, to render content associated with the webpage on the client device instead of through use of the virtual machine session; and
providing, by the computing device, instructions to the client device to render the content associated with the webpage within a display of the client device and relative to content of the web browser, so as to transfer at least one processing task in generation of the webpage from the computing device to the client device.

### Claim 9 (depends on 8)

The method of claim 8, further comprising:
maintaining, by the computing device, a position of a window frame around the rendered content associated with the webpage on the client device when the rendered content is moved.

### Claim 10 (depends on 9)

The method of claim 9, wherein the maintaining, by the computing device, a position of the window frame comprises one or more updates concerning visibility, scaling, and scrolling information of the remoted web browser instance.

### Claim 11 (depends on 9)

The method of claim 9, further comprising:
redirecting, by the computing device, locational and clipping information for the window frame.

### Claim 12 (depends on 11)

The method of claim 11, wherein the maintaining, by the computing device, a position of the window frame around the rendered content associated with the webpage on the client device is further based off of the redirected locational and clipping information for the window frame.

### Claim 13 (depends on 9)

The method of claim 9, wherein the maintaining of the window frame contains no enclosed content.

### Claim 14 (depends on 8)

The method of claim 8, further comprising:
analyzing, by the computing device, the data indicative of a web address for a webpage and an associated page content.

### Claim 15 (depends on 8)

The method of claim 8, further comprising:
inserting, by the computing device, a functional script into the content associated with the data indicative of a web address for a webpage; and
based on the data indicative of a web address for a webpage, activating, by the computing device, the functional script to prevent the content associated with the webpage from loading on the computing device.

### Claim 16

A server device, comprising:
a processor; and
memory storing computer-readable instructions that, when executed by the processor, cause the server device to;
provide, by a computing device, a web browser to a client device, the web browser being accessible by the client device via a virtual machine session provided by the computing device;
receive, by the computing device, data from the web browser, the data being indicative of a web address for a webpage;
determine, by the computing device, to render content associated with the webpage on the client device instead of through use of the virtual machine session; and
provide, by the computing device, instructions to the client device to render the content associated with the webpage within a display of the client device and relative to content of the web browser, so as to transfer at least one processing task in generation of the webpage from the computing device to the client device.

### Claim 17 (depends on 16)

The server device of claim 16, further comprising computer-readable instructions that, when executed by the processor, cause the server device to:
detect, by the computing device, a movement of a window frame around the rendered content associated with the webpage on the client device; and
maintain, by the computing device, a position of a window frame around the rendered content associated with the webpage on the client device when the rendered content is moved.

### Claim 18 (depends on 17)

The server device of claim 17, further comprising computer-readable instructions that, when executed by the processor, cause the server device to:
redirect, by the computing device, locational and clipping information for the window frame.

### Claim 19 (depends on 17)

The server device of claim 17, wherein the computer-readable instructions that, when executed by the processor, cause the server device to generate the window frame contains no enclosed content.

### Claim 20 (depends on 16)

The server device of claim 16, further comprising computer-readable instructions that, when executed by the processor, cause the server device to:
analyze, by the computing device, the data indicative of a web address for a webpage and an associated page content.
