I3: Enhancement: $mod+r toggles resize mode

Created on 31 Oct 2017  ·  5Comments  ·  Source: i3/i3

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.

4.14 accepted enhancement

Most helpful comment

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.

All 5 comments

Wanted to quickly add that this pattern is already found throughout i3's defaults:

  1. $mod+f both enables and disables full-screen
  2. $mod+e will toggle between splits
  3. $mod+Shift+space toggles between floating and not
  4. workspace_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.

Was this page helpful?
0 / 5 - 0 ratings