exwm
exwm copied to clipboard
Workspaces, tabs, and multi-monitor support
EXWM currently supports "workspaces" by creating a new frame per workspace. Additionally, multiple monitors can be supported by assigning workspaces to monitors.
Unfortunately:
- Assignment of workspaces to monitors isn't automatic.
- With the introduction of the tab-bar, frame-based workspaces are mostly redundant.
So, my proposal is to:
- Remove or deprecate the current workspace feature.
- Associate floating windows with tabs, unless they're marked as sticky. We may have to advise
tab-bar-select-tab
, but I'm hoping that thewindow-configuration-change-hook
is enough. - Make the randr module automatically create/delete frames.
The tricky parts will be:
- Making this "just work", especially monitor configuration.
- Backwards compatibility. We can probably introduce some aliases for, e.g.,
exwm-workspace-next
and friends, but we likely won't be able to replicate all features.
The upsides are:
- Better integration with Emacs packages by using the tab-bar.
- Visual indication of the current workspace (again, via the tab-bar).
- Automatic support for multiple monitors.