autotiling
autotiling copied to clipboard
Can no longer move containers laterally between halves of screen
If I have my splits like so and try to move the bottom right container leftward,
| | |
| |_____|
| |\\\\\|
| |\\\\\|
I get this and the container becomes stuck and can't be moved leftward any further
| |\\\| |
| |\\\| | (Actual)
| |\\\| |
| |\\\| |
| | |
|_____| | (Desired)
|\\\\\| |
|\\\\\| |
I'm using sway 1.6, wlroots 0.13, and the autotiling script manually copied from repo
The active indicator flashes right? I'm experiencing the same issue
Please read this. There are pros and cons of this script, but we can't do much to change it.
BTW: if you focus another container, and back the one that got stuck, it gets movable again.
Please read this. There are pros and cons of this script, but we can't do much to change it.
BTW: if you focus another container, and back the one that got stuck, it gets movable again.
Yeah. That's been my solution for the past month
~~I've tried autotiling-rs and it seems to have fixed the issue~~
I've tried autotiling-rs and it seems to have fixed the issue
Just checked. Behaves exactly the same way.
Oh sorry. Wrong issue... I was half asleep when I posted that.
The issue that the rust version has fixed is that changing the layout indicator now works as expected. Sometimes with this version the indicator doesn't change
What layout indicator do you mean?
This one
LOL, I forgot the even existed, as I always look at the layout icon on the taskbar. Anyway, they seem to behave perfectly well for me.

Here's what I mean.
https://user-images.githubusercontent.com/35975961/137644601-cd8da95c-e8a4-4076-a86a-c93bd99c7273.mp4
Does this deserve its own issue?
I think I understand how this happens and have an idea how to maybe fix it. I would like some feedback if this is something that has been tried before. I suspect is has (unwanted) side effects.
How to work around it currently:
- Go to new workspace (running autotiling, ofc)
- Open 3 new tiling windows/container
| | |
| |_____|
| |\\\\\|
| |\\\\\|
- Focus the left container (this will trigger a splitv)
|\\\\\| |
|\\\\\|_____|
|\\\\\| |
|\\\\\| |
- Focus back on the right container
| | |
| |_____|
| |\\\\\|
| |\\\\\|
- Move container to left
| | |
|_____| |
|\\\\\| |
|\\\\\| |
What if when checking for the split in the current window, the script also checks the neighbor and splits it (with the same logic, no action on tabbed/stacked, etc.). I think you would need to go to the sibling containers but I am not sure if it can be done consistently.
Also I am wondering if you send splitv/splith to a specific container with i3ipc. I did not find anything.
Edit: yes, something like: i3.get_tree().find_focused().parent.parent.parent.nodes[0].nodes[0].command("splitv")
The logic of this script is quite simple, and this will make it much more complicated. No idea if it's going to work.
I'll sleep over it and give it a try on my next free weekend :)