IP Library Granted Patent US 12,436,783
Granted Patent B2
US 12,436,783 · App. 17/741,268 · Granted Oct 7, 2025

Transitioning application windows between local and remote desktops

Inventors: Lin Lv (Beijing, CN); Bo Steven Liu (Beijing, CN); Yunxia Cheng (Beijing, CN); Yunfei San (Beijing, CN); Jian Ken Song (Beijing, CN); Felix Yan (Beijing, CN); Yuping Wei (Beijing, CN); Qian Jack Liu (Beijing, CN)
Assignee: Omnissa, LLC
G06F9/452G06F3/0481G06F9/542
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 12,436,783
App. No.
17/741,268
Granted
Oct 7, 2025
Kind
B2
Abstract

The disclosure provides for transitioning application windows between local and remote desktops. Example implementations include opening a first file with a first application to generate a first application window on a first desktop window on a user display; based at least on a trigger event for transitioning the first application window from the first desktop window to a second desktop window, determining whether a second application is available for the second desktop window to produce a version of the first application window; and based at least on the second application being available: transferring the first file across a network to become a second file; and opening the second file with the second application to generate a second application window on the second desktop window, the second application window replacing the first application window on the user display. The transition may go either direction.

Claims (42)

1. A method for transitioning application windows between local and remote desktops, the method comprising:

displaying, on a user display, a local desktop, a first remote desktop and an application window running on a second remote desktop, wherein a first file is open in the application window on the second remote desktop;

receiving a command to transition the application window from the second remote desktop to the first remote desktop, wherein receiving the command comprises detecting a drag and drop operation that moves the application window from the second remote desktop to the first remote desktop, wherein the application window is highlighted upon detecting that the application window has overlapped an edge of the first remote desktop by a threshold amount;

based on the command,

transferring window parameters associated with the application window from the second remote desktop to the local desktop and transferring the first file from the second remote desktop to produce a second file on the local desktop; and

transferring the window parameters from the local desktop to the first remote desktop and transferring the second file from the local desktop to the first remote desktop to produce a third file on the first remote desktop;

determining that an application is available on a remote node executing the first remote desktop to produce a version of the application window on the first remote desktop;

based on the determining, configuring the version of the application window on the first remote desktop to appear unchanged relative to the application window on the second remote desktop by using the transferred window parameters, wherein configuring the version of the application window includes opening the third file in the version of the application window on the first remote desktop; and

removing the display of the application window from the second remote desktop.

2. The method of claim 1 , wherein determining that the application is available on the remote node to produce the version of the application window on the first remote desktop includes determining that the application is available on the remote node to launch the file that is open within the application on the second remote desktop.

3. The method of claim 1 , further comprising:

based at least on the command for transitioning the application window from the second remote desktop to the first remote desktop, providing to a user a visual indication that the transitioning is pending.

4. The method of claim 1 , further comprising:

pausing the transitioning of the application window from the second remote desktop to the first remote desktop to allow a user to cancel the transitioning.

5. A system for transitioning application windows between local and remote desktops, the system comprising:

a processor; and

a non-transitory computer readable medium having stored thereon program code, the program code causing the processor to:

display, on a user display, a local desktop, a first remote desktop and an application window running on a second remote desktop, wherein a first file is open in the application window on the second remote desktop;

receive a command to transition the application window from the second remote desktop to the first remote desktop, wherein receiving the command comprises detecting, by the processor, a drag and drop operation that moves the application window from the second remote desktop to the first remote desktop, wherein the application window is highlighted upon the processor detecting that the application window has overlapped an edge of the first remote desktop by a threshold amount;

based on the command,

transfer window parameters associated with the application window from the second remote desktop to the local desktop and transfer the first file from the second remote desktop to produce a second file on the local desktop; and

transfer the window parameters from the local desktop to the first remote desktop and transfer the second file from the local desktop to the first remote desktop to produce a third file on the first remote desktop;

determine that an application is available on a remote node executing the first remote desktop to produce a version of the application window on the first remote desktop;

based on the determining, configure the version of the application window on the first remote desktop to appear unchanged relative to the application window on the second remote desktop by using the transferred window parameters, wherein configuring the version of the application window includes opening the third file in the version of the application window on the first remote desktop; and

remove the display of the application window from the second remote desktop.

6. The system of claim 5 , wherein the program code is further operative to:

based at least on the command for transitioning the application window from the second remote desktop to the first remote desktop, provide to a user a visual indication that the transitioning is pending.

7. The system of claim 5 , wherein the program code is further operative to:

pause the transitioning of the application window from the second remote desktop to the first remote desktop to allow a user to cancel the transitioning.

8. The system of claim 5 , wherein the program code is further operative to determine that the application is available on the remote node to launch the file that is open within the application on the second remote desktop.

9. A non-transitory computer storage medium having stored thereon program code executable by a first computer system at a first site, the program code embodying a method comprising:

displaying, on a user display, a local desktop, a first remote desktop and an application window running on a second remote desktop, wherein a first file is open in the application window on the second remote desktop;

receiving a command to transition the application window from the second remote desktop to the first remote desktop, wherein receiving the command comprises detecting a drag and drop operation that moves the application window from the second remote desktop to the first remote desktop, wherein the application window is highlighted upon detecting that the application window has overlapped an edge of the first remote desktop by a threshold amount;

based on the command,

transferring window parameters associated with the application window from the second remote desktop to the local desktop and transferring the first file from the second remote desktop to produce a second file on the local desktop; and

transferring the window parameters from the local desktop to the first remote desktop and transferring the second file from the local desktop to the first remote desktop to produce a third file on the first remote desktop;

determining that an application is available on a remote node executing the first remote desktop to produce a version of the application window on the first remote desktop;

based on the determining, configuring the version of the application window on the first remote desktop to appear unchanged relative to the application window on the second remote desktop by using the transferred window parameters, wherein configuring the version of the application window includes opening the third file in the version of the application window on the first remote desktop; and

removing the display of the application window from the second remote desktop.

10. The non-transitory computer storage medium of claim 9 , wherein the method further comprises:

based at least on the command for transitioning the application window from the second remote desktop to the first remote desktop, providing to a user a visual indication that the transitioning is pending.

11. The non-transitory computer storage medium of claim 9 , wherein determining that the application is available on the remote node to produce the version of the application window includes determining that the application is available on the remote node to launch the file that is open within the application on the second remote desktop.

Assignments (3)
PATENT ASSIGNMENT Recorded Aug 5, 2024
From: VMWARE LLC
To: OMNISSA, LLC
Reel/Frame 068327/0365 →
SECURITY INTEREST Recorded Jul 3, 2024
From: OMNISSA, LLC
To: UBS AG, STAMFORD BRANCH
Reel/Frame 068118/0004 →
CHANGE OF NAME Recorded Apr 15, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 067102/0242 →
Continuity (2)
Continuation 16909163 · Jun 23, 2020
Related Publication 20220269516A1 · Aug 25, 2022
References Cited (37)
US 6437803B1 · Panasyuk · 2002 [cited by examiner]
US 8970450B2 · Momchilov · 2015 [cited by applicant]
US 9369504B1 · Pavlov et al. · 2016 [cited by applicant]
US 9400801B1 · Aplemakh · 2016 [cited by examiner]
US 9686323B1 · Helter et al. · 2017 [cited by applicant]
US 20020026323A1 · Sakaguchi · 2002 [cited by examiner]
US 20050114711A1 · Hesselink et al. · 2005 [cited by applicant]
US 20060230105A1 · Shappir · 2006 [cited by examiner]
US 20090030971A1 · Trivedi · 2009 [cited by examiner]
US 20090070404A1 · Mazzaferri · 2009 [cited by applicant]
US 20090070687A1 · Mazzaferri · 2009 [cited by examiner]
US 20110138314A1 · Mir · 2011 [cited by examiner]
US 20120005269A1 · Janssen et al. · 2012 [cited by applicant]
US 20120324365A1 · Momchilov · 2012 [cited by examiner]
US 20130007090A1 · Sankararaman · 2013 [cited by examiner]
US 20130060842A1 · Grossman · 2013 [cited by applicant]
US 20130139103A1 · Laborczfalvi · 2013 [cited by examiner]
US 20130226742A1 · Johnson · 2013 [cited by examiner]
US 20140095666A1 · Yampanis · 2014 [cited by examiner]
US 20170351471A1 · Passeri et al. · 2017 [cited by applicant]
CN 104754015A · 2015 [cited by examiner]
CN 105308561A · 2016 [cited by examiner]
CN 105159521B · 2018 [cited by examiner]
CN 110134489A · 2019 [cited by examiner]
JP 3846666B2 · 2006 [cited by examiner]
KR 100612565B1 · 2006 [cited by examiner]
TW 201543249A · 2015 [cited by examiner]
WO WO2005024665A1 · 2005 [cited by examiner]
WO WO2013044153A1 · 2013 [cited by examiner]
“When I transfer files between servers on my desktop is my computer an intermediary?”, published as early as May 16, 2013 to https://superuser.com/questions/542983/when-i-transfer-files-between-servers-on-my-desktop-is-… [cited by examiner]
Wei, Y., et al., “Reverse Seamless Windows In Virtual Desktop Environment”, https://confluence.eng.vmware.com/pages/viewpage.action?pageId=372289943, 5 pages. [cited by applicant]
“HDX Local App Access for Citrix XenApp and XenDesktop 7.6”, captured May 29, 2020, https://www.youtube.com/watch?v=6lxW5VW6Vdg, 1 page. [cited by applicant]
“Greatest Trick Plays in Football History”, captured May 29, 2020, https://www.youtube.com/watch?v=Fj8G9dGuNKU, 1 page. [cited by applicant]
Knuth, Gabe, “Coming Soon: Windows Virtual Desktop support in Horizon Cloud on Microsoft Azure”, vmware EUC Blog, Sep. 30, 2019, 3 pages. [cited by applicant]
“Video Demo for this solution”, http://url.eng.vmware.com/dbz2, retrieved Jun. 30, 2020, 2 pages. [cited by applicant]
“Windows OLE Drag-and-Drop”, https://flylib.com/books/en/4.348.1.88/1/, retrieved Jun. 30, 2020, 13 pages. [cited by applicant]
“Windows Virtual Desktop”, https://azure.microsoft.com/en-us/services/virtual-desktop/, retrieved Jun. 30, 2020, 18 pages. [cited by applicant]