A minimal Windows utility that moves the active window to an adjacent virtual desktop.
- Windows 11 24H2 (26100.2605) or later
Download move-win-vd.exe from the Releases page and place it anywhere you like (e.g. C:\Tools\move-win-vd.exe).
Because this binary is not code-signed, Windows SmartScreen may block it from running. When launched via PowerToys Keyboard Manager, it can fail silently with no error message.
To unblock the file:
- Right-click
move-win-vd.exe→ Properties. - At the bottom of the General tab, check Unblock.
- Click OK.
The most convenient way to use this tool is to bind it to keyboard shortcuts via PowerToys Keyboard Manager.
- Install PowerToys.
- Open PowerToys and go to Keyboard Manager → Remap a shortcut.
- Add the following shortcuts:
| Shortcut | Program | Arguments | Effect |
|---|---|---|---|
Win + Ctrl + Alt + Right |
move-win-vd.exe |
r /s |
Move window to next desktop and follow |
Win + Ctrl + Alt + Left |
move-win-vd.exe |
l /s |
Move window to previous desktop and follow |
Tips:
- Use the full path to
move-win-vd.exein the Keyboard Manager configuration (e.g.C:\Tools\move-win-vd.exe). - Add
/wif you want wrap-around behavior at the edges. - If you only want to move the window without switching desktops yourself, omit
/s.
move-win-vd.exe r|l [/w] [/s]
| Argument | Description |
|---|---|
r |
Move the active window to the next (right) virtual desktop |
l |
Move the active window to the previous (left) virtual desktop |
The r or l argument is required.
| Option | Description |
|---|---|
/w |
Wrap around — if at the last desktop, move to the first (and vice versa) |
/s |
Switch — also move your view to the destination desktop |
Options can be combined freely.
# Move window to the next desktop
move-win-vd.exe r
# Move window to the previous desktop, wrapping around if at the edge
move-win-vd.exe l /w
# Move window to the next desktop and follow it there
move-win-vd.exe r /s
# Move window to the previous desktop, follow it, and wrap around
move-win-vd.exe l /s /w
If you have FancyZones enabled with "Override Windows Snap" turned on, your custom shortcuts may stop working — even if those key combinations are not used by FancyZones at all. This appears to be a side effect of how FancyZones hooks into keyboard input globally when that option is enabled.
Fix: Disable "Override Windows Snap" in FancyZones settings, or reassign your shortcuts to key combinations that do not involve arrow keys.
cargo build --release
The binary will be at target/release/move-win-vd.exe.
Below is the process for releasing a new version on GitHub.
Just a reminder for myself 😄
- Go to Actions → release → Run workflow, enter the version number (e.g.
1.2.3), and run it.- This automatically updates
Cargo.tomlandCargo.lock, commits the changes, and creates + pushes thev*.*.*tag. - Then, the app is built and a draft release is created.
- This automatically updates
- Once the workflow completes, go to the GitHub releases page, find the draft release, review the content, and publish it.
- Don't forget
git pullto update your local repository with the new tag.
MIT