glzr-io / glazewm

GlazeWM is a tiling window manager for Windows inspired by i3wm.
GNU General Public License v3.0
6.18k stars 177 forks source link

[Feature Request] Use Virtual Desktops instead of window hiding mechanism #671

Open wis opened 2 months ago

wis commented 2 months ago

Describe the problem/motivation

I do not like the fact that glazewm and other Windows™ Window managers hide windows completely to manage workspaces. I found it really painful to use Winlister to unhide all the windows that I had open but hidden by glazewm before it crashed.

I prefer if glazewm integrates with the Windows 10/11 Virtual Desktops feature for its workspace management.

Switching between Virtual Desktops to me seems just as fast as switching between workspaces in glazewm.

Describe the solution you'd like

A config option to enable the use of Virtual Desktops for workspace management, e.g. use_virtual_desktops.

There exists a Rust library for using the Windows 10/11 Virtual Desktop APIs, VirtualDesktopAccessor.

Alternatives considered

None that I could find or think of.

Additional context

I wrote it at the top.

MoaidHathot commented 2 months ago

Virtual desktops can be pretty slow to move around, probably due to the animation. This slowness ruins the whole workflow. Not sure if the animation is the reason or if it can be disabled.

wis commented 2 months ago

Virtual desktops can be pretty slow to move around, probably due to the animation. This slowness ruins the whole workflow. Not sure if the animation is the reason or if it can be disabled.

Yea, it can be disabled, I didn't remember that I disabled it but now remembered, and I don't remember how I did it. I got key bindings that move to the left or right virtual desktop and key bindings that move to VD number N, and both types are fast. I flick between virtual desktops back and forth pretty fast.