IP Library Granted Patent US 9,185,172
Granted Patent B2
US 9,185,172 · App. 13/595,993 · Granted Nov 10, 2015

System and method for rendering a remote view at a client device

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,185,172
App. No.
13/595,993
Granted
Nov 10, 2015
Kind
B2
Abstract

Examples of systems and methods are provided for facilitating rendering at a local client device a remote view associated with a remote application on a remote server. A method may comprise generating the remote view of the remote application based on display output data of the remote application, wherein a portion of the display output data is visible in the remote view, tracking coordinates and dimensions of the portion of the display output that is visible, receiving a message from the remote server comprising coordinates and dimensions of one of a window box, a dialog box and an object, comparing the coordinates and dimensions of the portion of the display output data that is visible with the coordinates and dimensions of the one of the window box, the dialog box and the object, and adjusting the portion of the display output data that is visible based on the comparison.

Claims (52)

1. A system for communicating and for rendering at a local client device a remote view associated with a remote application on a remote server, comprising:

a network interface;

a local client device;

a processor; and

a memory communicatively coupled to the processor, the memory comprising instructions operable, when executed by the processor, to cause the processor to:

generate the remote view of the remote application based on display output data of the remote application received from the remote server, wherein a portion of the display output data is visible in the remote view and a remote graphical user interface (GUI) of the remote application is deactivated in the display output data;

keep track of coordinates and dimensions of the portion of the display output data that is visible in the remote view;

receive a message from the remote server via the network interface, wherein the message comprises coordinates and dimensions of one of a window box, a dialog box and an object;

compare the coordinates and dimensions of the portion of the display output data that is visible in the remote view with the coordinates and dimensions of the one of the window box, dialog box and the object;

automatically, and without user intervention, adjust the portion of the display output data that is visible in the remote view from an original view based on the comparison;

provide, for local display at the local client device, the remote view of the remote application;

receive a second message from the remote server that the window box, the dialog box or the object has been closed at the remote server; and

return the portion of the display output data that is visible in the remote view to the original view in response to the second message.

2. The system of claim 1 , wherein the instructions further cause the processor to adjust the portion of the display output data that is visible in the remote view by scrolling the remote view.

3. The system of claim 1 , wherein the instructions further cause the processor to adjust the portion of the display output data that is visible in the remote view by zooming in or zooming out the remote view.

4. The system of claim 1 , wherein the instructions further cause the processor to adjust the portion of the display output data that is visible in the remote view to allow substantially the entire object to be visible in the remote view.

5. The system of claim 4 , wherein the instructions further cause the processor to adjust the portion of the display output data that is visible in the remote view by scrolling the remote view.

6. The system of claim 4 , wherein the instructions further cause the processor to adjust the portion of the display output that is visible in the remote view by zooming in or zooming out the remote view.

7. A method for rendering at a local client device a remote view associated with a remote application on a remote server, comprising:

generating the remote view of the remote application based on display output data of the remote application received from the remote server, wherein a portion of the display output data is visible in the remote view and a remote graphical user interface (GUI) of the remote application is deactivated in the display output data;

tracking coordinates and dimensions of the portion of the display output that is visible in the remote view;

receiving a message from the remote server, wherein the message comprises coordinates and dimensions of one of a window box, a dialog box and an object;

comparing the coordinates and dimensions of the portion of the display output data that is visible in the remote view with the coordinates and dimensions of the one of the window box, the dialog box and the object;

automatically and without user intervention, adjusting the portion of the display output data that is visible in the remote view from an original view based on the comparison;

providing, for local display at the local client device, the remote view of the remote application;

receiving a second message from the remote server that the window box, dialog box, or object has been closed at the remote server; and

returning the portion of the display output data that is visible in the remote view to the original view in response to the second message.

8. The method of claim 7 , wherein the adjusting the portion of the display output data that is visible in the remote view comprises scrolling the remote view.

9. The method of claim 7 , wherein the adjusting the portion of the display output data that is visible in the remote view comprises zooming in or zooming out the remote view.

10. The method of claim 7 , wherein the adjusting the portion of the display output data that is visible in the remote view comprises adjusting the portion of the display output data that is visible in the remote view to allow substantially the entire object to be visible in the remote view.

11. A non-transitory machine-readable medium encoded with instructions for rendering at a local client device a remote view associated with a remote application on a remote server, the instructions comprising code for:

generating the remote view of the remote application based on display output data of the remote application received from the remote server, wherein a portion of the display output data is visible in the remote view and a remote graphical user interface (GUI) of the remote application is deactivated in the display output data;

tracking coordinates and dimensions of the portion of the display output that is visible in the remote view;

receiving a message from the remote server, wherein the message comprises coordinates and dimensions of one of a window box, a dialog box and an object;

comparing the coordinates and dimensions of the portion of the display output data that is visible in the remote view with the coordinates and dimensions of the one of the window box, the dialog box and the object;

automatically and without user intervention, adjusting the portion of the display output data that is visible in the remote view based on the comparison; and

providing, for local display at the local client device, the remote view of the remote application.

12. The non-transitory machine-readable medium of claim 11 , wherein the adjusting the portion of the display output data that is visible in the remote view comprises scrolling the remote view.

13. The non-transitory machine-readable medium of claim 11 , wherein the adjusting the portion of the display output data that is visible in the remote view comprises zooming in or zooming out the remote view.

14. The non-transitory machine-readable medium of claim 11 , wherein the instructions further comprise code for:

receiving a second message from the remote server that the window box or dialog box has been closed at the remote server; and

undoing the adjustment of the portion of the display output data that is visible in the remote view in response to the second message.

15. The non-transitory machine-readable medium of claim 11 , wherein the adjusting the portion of the display output data that is visible in the remote view comprises adjusting the portion of the display output data that is visible in the remote view to allow substantially the entire object to be visible in the remote view.

16. An apparatus for rendering at a local client device a remote view associated with a remote application on a remote server, comprising:

means for generating the remote view of the remote application based on display output data of the remote application received from the remote server, wherein a portion of the display output data is visible in the remote view and a remote graphical user interface (GUI) of the remote application is deactivated in the display output data;

means for tracking coordinates and dimensions of the portion of the display output that is visible in the remote view;

means for receiving a message from the remote server, wherein the message comprises coordinates and dimensions of one of a window box, a dialog box and an object;

means for comparing the coordinates and dimensions of the portion of the display output data that is visible in the remote view with the coordinates and dimensions of the one of the window box, the dialog box and the object;

means for automatically and without user intervention, adjusting the portion of the display output data that is visible in the remote view based on the comparison;

means for providing, for local display at the local client device, the remote view of the remote application;

means for receiving a second message from the remote server that the window box, dialog box, or object has been closed at the remote server; and

means for returning the portion of the display output data that is visible in the remote view to the original view in response to the second message.

Assignments (16)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053546/0001) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC IP HOLDING COMPANY LLC
Reel/Frame 071642/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (045455/0001) Recorded May 20, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.); DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC); EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); SCALEIO LLC
Reel/Frame 061753/0001 →
MERGER Recorded May 13, 2022
From: WYSE TECHNOLOGY L.L.C.
To: DELL MARKETING CORPORATION
Reel/Frame 060064/0586 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (040136/0001) Recorded Apr 26, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.); DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC); EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); SCALEIO LLC
Reel/Frame 061324/0001 →
RELEASE OF SECURITY INTEREST Recorded Nov 3, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL, L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; WYSE TECHNOLOGY L.L.C.
Reel/Frame 058216/0001 →
SECURITY AGREEMENT Recorded Apr 22, 2020
From: CREDANT TECHNOLOGIES INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 053546/0001 →
SECURITY AGREEMENT Recorded Mar 21, 2019
From: CREDANT TECHNOLOGIES, INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 049452/0223 →
SECURITY AGREEMENT Recorded Sep 21, 2016
From: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; SPANNING CLOUD APPS LLC; WYSE TECHNOLOGY L.L.C.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 040134/0001 →
SECURITY AGREEMENT Recorded Sep 21, 2016
From: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; SPANNING CLOUD APPS LLC; WYSE TECHNOLOGY L.L.C.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 040136/0001 →
RELEASE OF SECURITY INTEREST Recorded Sep 14, 2016
From: BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
To: DELL MARKETING L.P.; ASAP SOFTWARE EXPRESS, INC.; APPASSURE SOFTWARE, INC.; COMPELLENT TECHNOLOGIES, INC.; CREDANT TECHNOLOGIES, INC.; DELL INC.; DELL PRODUCTS L.P.; DELL USA L.P.; DELL SOFTWARE INC.; FORCE10 NETWORKS, INC.; PEROT SYSTEMS CORPORATION; SECUREWORKS, INC.; WYSE TECHNOLOGY L.L.C.
Reel/Frame 040065/0618 →
RELEASE OF SECURITY INTEREST Recorded Sep 14, 2016
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: DELL SOFTWARE INC.; FORCE10 NETWORKS, INC.; DELL MARKETING L.P.; ASAP SOFTWARE EXPRESS, INC.; APPASSURE SOFTWARE, INC.; COMPELLENT TECHNOLOGIES, INC.; CREDANT TECHNOLOGIES, INC.; DELL INC.; DELL PRODUCTS L.P.; DELL USA L.P.; PEROT SYSTEMS CORPORATION; SECUREWORKS, INC.; WYSE TECHNOLOGY L.L.C.
Reel/Frame 040040/0001 →
RELEASE OF SECURITY INTEREST Recorded Sep 13, 2016
From: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
To: DELL MARKETING L.P.; ASAP SOFTWARE EXPRESS, INC.; APPASSURE SOFTWARE, INC.; COMPELLANT TECHNOLOGIES, INC.; CREDANT TECHNOLOGIES, INC.; DELL INC.; DELL PRODUCTS L.P.; DELL USA L.P.; DELL SOFTWARE INC.; FORCE10 NETWORKS, INC.; PEROT SYSTEMS CORPORATION; SECUREWORKS, INC.; WYSE TECHNOLOGY L.L.C.
Reel/Frame 040065/0216 →
PATENT SECURITY AGREEMENT (NOTES) Recorded Jan 2, 2014
From: APPASSURE SOFTWARE, INC.; ASAP SOFTWARE EXPRESS, INC.; BOOMI, INC.; COMPELLENT TECHNOLOGIES, INC.; CREDANT TECHNOLOGIES, INC.; DELL INC.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL USA L.P.; FORCE10 NETWORKS, INC.; GALE TECHNOLOGIES, INC.; PEROT SYSTEMS CORPORATION; SECUREWORKS, INC.; WYSE TECHNOLOGY L.L.C.
To: BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS FIRST LIEN COLLATERAL AGENT
Reel/Frame 031897/0348 →
PATENT SECURITY AGREEMENT (ABL) Recorded Jan 2, 2014
From: DELL INC.; APPASSURE SOFTWARE, INC.; ASAP SOFTWARE EXPRESS, INC.; BOOMI, INC.; COMPELLENT TECHNOLOGIES, INC.; CREDANT TECHNOLOGIES, INC.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL USA L.P.; FORCE10 NETWORKS, INC.; GALE TECHNOLOGIES, INC.; PEROT SYSTEMS CORPORATION; SECUREWORKS, INC.; WYSE TECHNOLOGY L.L.C.
To: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 031898/0001 →
PATENT SECURITY AGREEMENT (TERM LOAN) Recorded Jan 2, 2014
From: DELL INC.; APPASSURE SOFTWARE, INC.; ASAP SOFTWARE EXPRESS, INC.; BOOMI, INC.; COMPELLENT TECHNOLOGIES, INC.; CREDANT TECHNOLOGIES, INC.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL USA L.P.; FORCE10 NETWORKS, INC.; GALE TECHNOLOGIES, INC.; PEROT SYSTEMS CORPORATION; SECUREWORKS, INC.; WYSE TECHNOLOGY L.L.C.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 031899/0261 →
CHANGE OF NAME Recorded Nov 15, 2013
From: WYSE TECHNOLOGY INC.
To: WYSE TECHNOLOGY L.L.C.
Reel/Frame 031645/0051 →