feat(wm): promote

The first tile of a layout is its largest, and the place for the window being
worked on. `komorebic promote` moves the focused window there, with the windows
that were before it each moving one tile on; `promote-swap` swaps it with the
window that has the first tile, and from the first tile swaps it back with the
window it was last swapped with; `promote-window left|right|up|down` promotes
the window on that side of the focused one; and `promote-focus` gives the focus
to the first tile and moves nothing.

The grid layout has no largest tile, so the four do nothing there.

The vm-commands sweep gains the four.
This commit is contained in:
LGUG2Z committed 2026-10-28 07:20:37 -07:00
1 parent 95eb4d5039
commit 554d77aed9
17 files changed
+419 -6

No files matched your search

+10
View File
@@ -0,0 +1,10 @@
```text
Promote the user focus to the largest window container
Usage: promote-focus
Options:
-h, --help
Print help
```
+10
View File
@@ -0,0 +1,10 @@
```text
Promote the focused window to the largest tile by swapping container indices with the largest tile
Usage: promote-swap
Options:
-h, --help
Print help
```
+14
View File
@@ -0,0 +1,14 @@
```text
Promote the window in the specified direction
Usage: promote-window <OPERATION_DIRECTION>
Arguments:
<OPERATION_DIRECTION>
[possible values: left, right, up, down]
Options:
-h, --help
Print help
```
+10
View File
@@ -0,0 +1,10 @@
```text
Promote the focused window to the largest tile via container removal and re-insertion
Usage: promote
Options:
-h, --help
Print help
```