Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add an 'alternating' layout mode #121

Closed
Lilith-In-Starlight opened this issue Sep 11, 2022 · 8 comments
Closed

Add an 'alternating' layout mode #121

Lilith-In-Starlight opened this issue Sep 11, 2022 · 8 comments

Comments

@Lilith-In-Starlight
Copy link

The idea is to make it so that the behavior you get when alternating between horizontal and vertical layout mode before opening a window is done automatically, and you can move windows without destroying the structure that this creates. I think this would be A really good way to distribute the space that the windows take up on screen.

@lars-berger
Copy link
Member

Similar to #102

IMO what could be interesting is having some way of changing where new windows will be inserted.

One possible implementation is having a property default_insertion_algorithm: <i3 | alternating>, and then being able to change the insertion algorithm on the fly via keybinding commands, eg. insertion algorithm <i3 | alternating>.

Are there any WM's that take a sort of hybrid approach to i3 and layout-based WM's like bspwm? Will leave this open for brainstorming & discussion.

@jervw
Copy link

jervw commented Sep 20, 2022

I've been using this python script to alternate between horizontal and vertical windows on i3wm.

Maybe something like this could be implemented?

@Lilith-In-Starlight
Copy link
Author

if we're gonna do a command for changing where new windows are put, it woudl also be useful to be able to refresh all windows so that they are set up in the way the current algorithm does it

so i could bind some key to change the insertion algorithm to alternating, and then press some other key so my windows are changed so that they align with that algorithm. or, bind both to the same key

this could disrupt with the thing you've been doing with the config files, which is having every possible config setting have a default key

@maphew
Copy link

maphew commented Dec 9, 2022

Related, perhaps better as new feature request, is: how does or can a user know what the current insertion mode is?

@b1scu1t
Copy link

b1scu1t commented Mar 24, 2023

@maphew I'm thinking a new bar-component or expanding the existing 'tiling direction' component.

@anodynos
Copy link

anodynos commented May 4, 2023

In my first attempt, i tried to use layout horizontal to rearrange my 4 windows into a grid, instead of the 4 vertical bars (the default).
It does nothing, I think I'm missing something or is it a bug?

@burgr033
Copy link

burgr033 commented Sep 19, 2023

as per release 2.0.1 I tried my luck with a python script which alternates between the tiling directions after a new container is "managed" with sizePercentage equal or lower than 0.5
Animation

if you are interested, you can check it out here: https://github.com/cigh033/GlazeWM-autotiling-python/blob/main/main.py

Don't know if it works on every setup, with my monitor and laptop it works perfectly fine. Please handle it as a reference. I suck at coding.

@lars-berger
Copy link
Member

Closing in favor of #678

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

7 participants