Why not change the meaning of $mod+r
from "enable resize mode" to "toggle resize mode"?
I believe this is a more desirable and intuitive UX as you can "exit through the door you entered".
Here is my attempt at making the change.
Wanted to quickly add that this pattern is already found throughout i3's defaults:
$mod+f
both enables and disables full-screen$mod+e
will toggle between splits$mod+Shift+space
toggles between floating and notworkspace_auto_back_and_forth
is not a default, but highlighted in the docs.This last one is interesting because the docs touch on the philosophy behind the design decision:
For instance: Assume you are on workspace "1: www" and switch to "2: IM" using mod+2 because somebody sent you a message. You don’t need to remember where you came from now, you can just press $mod+2 again to switch back to "1: www".
Cool idea, but I don't see why that would need to be specifically implemented.
You can configure it for yourself by putting bindsym $mod+r mode "default"
inside mode "resize" {...}
IMO this is a UX improvement, not a preference. After reading about window mangers, it's surprisingly clear that a very significant reason people choose i3 (over Xmonad, etc) is for its superior default behavior.
Since resize
appears to be the only pre-configured mode, it also sets an important precedent for general mode toggling behavior.
I'll also add that it is at no cost to you as I have already made the change and it's ready for a PR.
but I don't see why that would need to be specifically implemented.
It doesn't; the proposed change is just a change to the default config.
@jchook The proposal sounds good to me. Assuming @stapelberg doesn't object, I'll be happy to wait for the PR.
Sounds good to me.
Most helpful comment
It doesn't; the proposed change is just a change to the default config.
@jchook The proposal sounds good to me. Assuming @stapelberg doesn't object, I'll be happy to wait for the PR.