proxypoke / quickswitch-for-i3

A python utility to quickly change to and locate windows in i3
Do What The F*ck You Want To Public License
144 stars 39 forks source link

allow combining -e and -m #29

Closed clinta closed 7 years ago

clinta commented 8 years ago

Allows specifying both -e and -m to move the current window to the next empty workspace.

OliverUv commented 7 years ago

This feature exists in my fork. Proxypoke let me take over maintenance a long time ago~ https://github.com/OliverUv/quickswitch-for-i3

clinta commented 7 years ago

Thanks for the info. Turns out I'm actually running your fork because it's what the archlinux AUR package is based on. But quickswitch -e -m does not move the current window to the next empty workspace. Is this feature implemented differently?

OliverUv commented 7 years ago

oh, sorry. For moving the currently selected window to a new workspace (by default the first empty number), use -e -j

clinta commented 7 years ago

I see. Would you consider merging this PR if I open it on your branch so you can move the window to the next empty workspace and move the current container to that workspace with one command?

OliverUv commented 7 years ago

Oh, that seems to exist already now that I read the code! -j -E should send the currently selected container to the next empty numbered workspace that's also higher in number than your current workspace.

Lotta functionality in quickswitch that I don't use myself, that has been added to benefit other users. Had to go digging to see that this already existed :)

clinta commented 7 years ago

That still doesn't do the same thing. It sends the window to the next empty workspace, but the container stays on the current workspace. So after moving, you then need to switch to that workspace yourself.

OliverUv commented 7 years ago

Wait, I must be getting some terminology wrong here? I thought "container" was just a group of windows, (i.e. an arbitrary node in the window tree) and moving one wouldn't change which workspace you currently have focused. Everything in quickswitch works on containers, not windows, so you can always do stuff like i3's select parent, to move multiple windows at once by moving their parent container.

If you want to implement a switch like -f to follow any moved container, that'd be excellent. If you also want to implement -F to follow it only if the currently selected workspace becomes empty after the move, that'd be super great, and would close this old issue https://github.com/OliverUv/quickswitch-for-i3/issues/3

clinta commented 7 years ago

That sounds like a good solution. I'll send in a pr soon.