glzr-io / glazewm

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

[Feature Request] Context switching between GlazeWM keybindings and individual applications #616

Closed rikhall1515 closed 1 month ago

rikhall1515 commented 4 months ago

Problem description I want to be able to ditch my mouse almost entirely. Having to keep track of several different applications that each have their own potential (Alt + ) keybindings doesn't feel super good.

In the current configuration of GlazeWM, given the goal I have above, I have to spend a significant amount of time to swap out keybindings in GlazeWM so that there are no conflicts between the WM and any individual application.

Solution to problem Have some kind of windows keybinding (Win + Alt + G, for example) to be able to switch in/out of GlazeWM context, so that the keybindings for Glaze are inactive when you don't want keybinding conflicts between the individual apps and the WM.

You can then really easily do your workspace and window configuration, use the context switch keybind, now do work on one app - switch back out and navigate around workspaces.... etc. This is the kind of workflow that I would love to see.

Implementing context into GlazeWM will remove the requirement on the user to:

  1. Check the keybinds of each application they use in their workflow
  2. Compare with the keybinds of GlazeWM
  3. ALSO compare it with keybinds in base Windows
  4. Proceed to come up with a creative way to resolve the conflicts so Glaze has unique keybinds compared to all of the above.
lars-berger commented 1 month ago

Have some kind of windows keybinding (Win + Alt + G, for example) to be able to switch in/out of GlazeWM context,

In v3, we've added an alt+shift+p keybinding in the default config that does exactly this (temporarily disables all other keybindings until alt+shift+p is pressed again)

IMO it could still be solved better if we could remap keybindings depending on the active application. Opened an issue for that here #675