145

Windows 10 introduced a task view - the ability to have multiple virtual desktops. When I am in a window on Desktop1, what's the quickest way to move it to Desktop2?

Currently, I need to enter the task switcher (icon in the taskbar or Win+Tab), find the window and drag&drop it between desktops. It is inconvenient. Is there a quicker way?

  • 2
    This is how I do it and the only way I know how to do it. Press the Windows key + Tab . Press Tab again . This removes the outline from the active program thumbnail and Task View interface active. Use the arrow keys to move among the desktops on the Task View interface. When you have highlighted the desktop to which you want to switch, press Enter . – zain.ali Aug 4 '15 at 11:40
  • 7
    Oooooo you can try WINKEY + CTRL + LEFT ARROW or WINKEY + CTRL + RIGHT ARROW – zain.ali Aug 4 '15 at 11:43
  • 37
    This is not about navigating between desktops, it is about moving windows from one desktop to another. And yes, Ctrl+Win+left/right is cool :) – Borek Bernard Aug 4 '15 at 11:49
  • In a project my brother is working on, he implemented it as WINKEY-X, WINKEY-V. Works super smooth. If only Microsoft caught up... youtube.com/watch?v=BAc7sBvViFg – Wouter Jun 14 '16 at 13:04
  • 2
    When to expect a Windows build in hotkey for it? – principal-ideal-domain Apr 19 '17 at 10:03

11 Answers 11

98

I think for a quicker switch this should be in the titlebar, so I created a tool for that:

https://github.com/Eun/MoveToDesktop

enter image description here

You can also move windows by using WIN+ALT+Left/Right or change the shortcut as needed.

  • 5
    Download MoveToDesktop-X.Y.zip from the Releases section. In there is an .exe file, extract it somewhere and run it. No need for Visual Studio 2015. You might just need to install the Visual C++ Redistributable package. – Eun May 19 '16 at 8:48
  • 4
    This tool did not work. – K Robinson Nov 4 '16 at 16:10
  • 2
    wonder when windows will add drag and drop to the virtual desktops screen - that would be amazing – Mikey Dec 3 '16 at 16:10
  • 1
    @Ninjakannon sorry, I should have been more specific. I mean to drag one window from any desktop to another - without having to switch to that desktop first, i.e. from the thumbnail windows. And also the ability to drag the virtual desktops around, to rearrange the order. – Mikey Dec 6 '16 at 0:45
  • 2
    @Ninjakannon No, I believe Mikey is talking about being able to drag the window over the sides of the screen into the next desktop without changing view. Just like it is in almost all linux desktops and on Ubuntu Unity. There is also usually a setting for the snappiness which allows the user to still snap to the side but if using more force or momentum then then the user would be able to drag the window past the border into the next virtual desktop instead of snapping. – mchid Apr 11 '17 at 23:23
63

I also looked for that option, and from the searches I've made (I think that I also saw it on the Microsoft forums), it's not something that is available built-in at the moment.

The best way I came out with for now, to avoid using the mouse, is:

  • Winkey + tab for the desktops screen
  • Right click on the window you want to move.
    Use the right click keyboard button, or Shift + F10 if you don't have that key in your keyboard.
  • Choose Move to (or type M, because it's marked), and then the desktop you want (or N for new desktop, also marked)

This doesn't help that much, but that's what there is until someone develops something to make it easier.

Update: I've started looking into this. There's a registry value that changes when the app is moved between desktops. In that location, there are all the open apps:

HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\SessionInfo\1\ApplicationViewManagement 
(I guess the session number will change if there is more than one logged in).

The id of the current desktop is here:

HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\SessionInfo\1\VirtualDesktops\CurrentVirtualDesktop

It's not enough to change it to the other virtual desktop key because some UI refresh is needed.

I've checked with procmon, and the dll's that are used in the process are:

  • msctf.dll
  • twinui.dll
  • windows.immersiveshell.serviceprovider.dll
  • shell32.dll
  • UIAnimation.dll

I'll guess that one of them is responsible for the visual refresh, and the main suspect is UIAnimation.dll!

If someone wants to keep investigating, this will serve as a start.

  • 4
    After pressing Win + Tab, you can also simply drag the window to the desktop you want. – Nearoo Sep 13 '17 at 16:59
  • 1
    @Nearoo which kind of loses the point of doing it fast - mostly without the mouse. – arieljannai Sep 13 '17 at 20:31
  • 1
    @arieljannai Nah, dragging it is most probably faster than having to right click, open the submenu and clicking on the desktop. A shortcut like on Linux would be best, though. – Stefan Fabian Sep 5 '18 at 10:30
12

I use Windows 10 Virtual Desktop Enhancer.

Just download it, run it (and configure autostart if you need).

Then you can simply press Win + Ctrl + Shift + Arrow Left / Arrow Right and it will move you app to other desktop and switch to that desktop.

  • The script didn't work for me, but the release exe does. Nice solution! – lucidbrot Jan 14 '18 at 10:04
  • simple, transparent, easy to install = perfect! – anderstood Dec 7 '18 at 12:26
10

At this level of managing Windows I really think you should use a third party program to help out. My own solution to this was to add a simple shortcut to AutoHotKey (AHK):

#|::Send, +{F10}M{Enter}

#| is the shortcut, which translates to WIN-| On my keyboard that makes sense, as | is above TAB, but you could change it to whatever suits your need.

Using above answer by arieljannai, by sending SHIFT+F10 M ENTER, the marked window will be moved to the other virtual desktop if you're juggling between two.

For an introduction to AHK, please see https://autohotkey.com/docs/Tutorial.htm .

  • 2
    F10 does nothing on my computer. The contextual menu key of my (French) keyboard does the job though. – Sébastien Jan 23 '17 at 15:45
  • win+Tab, context, V, Enter on Swiss-german setup – lucidbrot Jan 14 '18 at 7:59
  • 1
    F10 alone does not bring up context menu, you must hold shift (denoted by + in AHK above). updated answer to reflect the typo. – kevinf Feb 20 at 19:55
6

zVirtualDesktop

I'm using it for that purpose. It has keyboard shortcuts - which is great.
The developer is very responsive if you report an issue or ask a question or for a possible feature.

The best feature is DesktopView See below.

There are more options at GitHub, which I currently can't remember 😅

Here are some screenshots of zVirtualDesktop

You can choose from these system tray icons enter image description here

It has a really nice feature called DesktopView shown below. With this view you can drag and drop your windows to any desktop. It also works like Alt+Tab in that you can click a thumbnail to go to that window. enter image description here

Note: I answered this question about 1.5-2 years ago, with some hints to start developing something. But now, there are some solutions developed for this.
I added a new answer since there's no point in editing/improving my previous one, since they are totally different.

  • There are many programs to do it but the OP is asking about the Virtual Desktop manager included in Windows. – skan Jan 18 '18 at 10:56
  • 2
    I haven't used this, but VirtuaWin is worth a try too, since it (1) can auto catch programs into their own desktop, and (2) has addons to improve productivity. – Ooker May 31 '18 at 8:38
  • 1
    I checked out zVirtualDesktop and it doesnt look trustworthy. Hosts on a Github but is closed source (apparently the source got removed), the older version that was apparently accidentally uploaded to Github (the exe is in the history) has a different usage license (private use is free forever) but autoupdates to the everyone-pays version... Also no mention of price on the site, only when you already launched it – sinni800 Sep 14 '18 at 6:26
5

I'm not sure why this hasn't been mentioned above, but the following is the native way to do this, without downloading helpers.

1. WIN + Tab to quickly see all applications/windows (if you have multiple monitors there will be one list on each monitor for each virtual desktop).

2. Right click on the application/window you want to move over -> "Move to" and select the desktop you want send the application to.

Before I found this, I even tried the MoveToDesktop project posted above but I find this just as easy and the MoveToDesktop menu doesn't seem to appear on all applications anyway (for example not Chrome nor Sublime at the moment).

  • 2
    Too bad that there is still not hotkey for it. Though this works nice too. – JP Hellemons Jan 19 '18 at 13:20
  • Once you have the desktops setup its rare that you need to move things over, no? – nights Jun 7 '18 at 7:31
  • I move screens from monitor 1 to 2 all the time with a hotkey. I move between desktops all the time with a hotkey, so why not a hotkey to move a window between virtual desktops? And I mean a native hotkey build in win10 – JP Hellemons Jun 8 '18 at 7:19
  • It would be nice indeed. – nights Jun 9 '18 at 8:15
  • 3
    What has been so nice for many years in Ubuntu Linux has been that you can set up your virtual desktops without ever taking your hands off the keyboard. In the course of working on whatever you're working on, you can decide to launch an app with its hotkey, then decide only afterward that you'd rather put it in a new or other workspace, and send it there with another hotkey. No need to move a hand to mouse or touchpad. It's incredibly fast and efficient. I miss it greatly in Windows. In fact it's one of the reasons I now use Windows only for certain games or Adobe products. – cdaddr Oct 14 '18 at 5:29
2

I use autohotkey with the keyboard shortcut CTRL+WIN+SHIFT+LEFT or RIGHT to push windows to the other virtual desktop. I only use 2 virtual desktops, so this works for me regardless if i press left or right.

AHK Code:

#^+Left::
#^+Right::
Send #{tab}        ;WIN+TAB=Open the desktop view
Sleep 200
Send +{F10}M{Enter};SHIFT+F10=context menue. M=move. Enter for the first desktop in the list.
Sleep 100
Send #{tab}        ;WIN+TAB=Close the desktop view
return
  • Note that this only works (in a multi-monitor setup) for applications on the main monitor. I needed to add a "Send {Left}{Right}" after the "Send #{tab}" to ensure that the application is actually selected before trying to move, or this did nothing. – Dan Apr 13 '18 at 23:27
2

Taking hints from the solutions of Greenonline and Sebastien:

  1. Hit 'Win+Tab' for the Workspace Management View
  2. Directional keys to navigate to the window of interest (if this was the last one in focus, it shouldn't be necessary).
  3. Hit the 'Context' key for a dropdown menu, where you can select moving to other desktops.

So, not very straightforward, but definitely something you can easily automate your hands to do.

0

Autohotkey solution. Bound to Win+Tilde key. This script automates all keystrokes that you would perform manually to send it to the next (if you're on the first) or previous desktop. Be careful though with such things - this can be dangerous if this input goes to wrong destination.

SendMode Input 
#`::
    send {blind}#{tab}
    sleep 1000
    send {appskey}
    sleep 300
    send {down}
    sleep 200
    send {down }
    sleep 200
    send {right}
    sleep 200
    send {left}
    sleep 200
    send {right}
    sleep 300
    send {enter}
    sleep 300
    send {esc}
    sleep 300
return
-4

simple press Winkey + Tab, now select the program (window) and drag it to the list of Desktops shown below (Desktop 1 or 2). Done. No other way..

  • 4
    "No other way" Clearly false as one of the other answer shows. – DavidPostill Jan 28 '17 at 15:14
  • this is the best answer despite the negative votes – jmhostalet Mar 13 '18 at 10:01
-5

Win + Shift + Arrow Left / Arrow Right

or

Win + Arrow Left / Arrow Right

or

Win + Arrow Up / Arrow Down

  • Those shortcuts do not move between virtual desktops. – Michael Mior Mar 25 '17 at 23:50
  • 2
    It seems to move between multiple displays – jlanza Aug 16 '17 at 16:37

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.