Files
komorebi/docs/cli/toggle-workspace-layer.md
T
LGUG2Z 12b0aa9301 feat(wm): the floating layer
A workspace with floating windows had no way to say which of the two kinds of
windows a focus or move command was about, so the commands always acted on the
tiles. A workspace is now on one of two layers, tiling or floating, and
`komorebic focus`, `cycle-focus`, `move` and the resize commands act on the
windows of that layer. Floating a window puts the workspace on the floating
layer, and so does a window that a float rule floats when it opens and a focus
change to a floating window; putting the window back, tiling a new window and a
focus change to a tile put it on the tiling layer. `komorebic
toggle-workspace-layer` switches it by hand: the windows of the layer it goes to
are raised, the focused one last, and one of them is given the focus. Going to
the tiles hides the floating windows, and going back to the floating layer shows
them.

On the floating layer, focusing in a direction goes to the nearest floating
window on that side and, where there is none, crosses to the next workspace or
the monitor on that side as it does for tiles, and fails where there is none.
Cycling goes round the floating windows in the order they were floated, `move`
moves the focused floating window by the resize delta without leaving the work
area, the resize commands change its frame, and `preselect-direction` does
nothing. A floating window that is maximized leaves the floating windows. The
layer is in the state of each workspace.

A window that opens while a workspace is on its floating layer floats when the
floating layer behavior says so: the workspace's own, else its monitor's, else
the window manager's. All three tile by default, and only the configuration
file, which is not here yet, sets the first two.

komorebi/tests/floating_layer.rs drives the layers against the fake desktop,
with the floating layer behavior as well, and the vm-commands sweep runs the new
command.
2026-10-28 07:20:37 -07:00

11 lines
159 B
Markdown

```text
Toggle between the Tiling and Floating layers on the focused workspace
Usage: toggle-workspace-layer
Options:
-h, --help
Print help
```