Hyprland icon indicating copy to clipboard operation
Hyprland copied to clipboard

Split-direction preselection

Open freundTech opened this issue 1 year ago • 0 comments

Feature:

As a user coming from bspwm I would really like to see split-direction preselection support in Hyperland.

Currently Hyperland decides whether to split horizontally or vertically based on the window W/H ratio and after that chooses between top/bottom or left/right based on the pointer position.

I would like to see a dispatcher that allows manually setting the split direction for the next opened window.

When preserve_split is true any of the direction left, right, up and down can be preselected. Without preserve_split only left/right or only up/down can be preselected based on the W/H ration of the window.

Hyperland could visualize an active preselection by drawing a rectangle over the area where the new window will be placed. An active preselection could be removed by either calling the dispatcher again with the same direction or by a special clear parameter to the dispatcher.

Scenario example:

The user config contains

preserve_split=true
bind=SUPER_CTRL,left,splitpresel,l
bind=SUPER_CTRL,right,splitpresel,r
bind=SUPER_CTRL,up,splitpresel,u
bind=SUPER_CTRL,down,splitpresel,d

The user opens a window (window1) Window1 takes up the whole screen space.

The user opens another window (window2) while window1 is active and the pointer is in the left half of window1 Window1 takes up the right half of the screen. Window2 takes up the left half of the screen

The user presses Super + Ctrl + left while window2 is active. Window1 takes up the right half of the screen. Window2 takes up the left half of the screen. A rectangle is overlayed above the left half of window2.

The user opens a new window (window3). Window1 takes up the right half of the screen. Window2 takes up the 3rd quarter from the right of the screen. Window3 takes up the left quarter of the screen.

+------------------+---------+---------+
|                  |         |         |
|                  |         |         |
|                  |         |         |
|      window1     | window2 | window3 |
|                  |         |         |
|                  |         |         |
|                  |         |         |
+------------------+---------+---------+

freundTech avatar Oct 12 '22 13:10 freundTech