Re: [i3] egde snapping for floating windows

  • From: Michael Stapelberg <michael+i3@xxxxxxxxxxxxx>
  • To: i3-discuss <i3-discuss@xxxxxxxxxxxxx>
  • Date: Mon, 05 Sep 2011 19:04:25 +0200

Hi Jan,

Thanks for your patch, sorry for taking so long to respond.

Excerpts from Jan Krcmar's message of 2011-08-26 10:58:31 +0200:

now, the windows are snapping while moving and while resizing

i've also pushed the new configuration option into the config file
determining the edge snap threshold
I tried your patch with the default snap_threshold of 10 pixels. I noticed
multiple issues:

1) I can’t seem to position my windows within the 10 pixels to every screen
edge (e.g. I cannot position them at x=6, y=3). It always snaps. That is a
serious usability problem, but I don’t see a good way to solve it within the
existing i3 codebase.

A way that could work better (without having tried it): Signaling the user
that the window could snap. If you have ever used Apple Keynote or Xcode’s
User Interface Builder you know the helper lines they have to signal that
something can be aligned somewhere [1]. After signaling, the user could
either let the mouse button go (and the window would snap) or keep on
positioning and would be allowed to do it like he wants. As I said, I don’t
see how to implement this with i3’s codebase (in particular not without
using compositing).

Another way would be to press a specific key while dragging, like Control.
Not sure if Control is a good choice for that, and also not sure if using it
together with the floating_modifier (which might already include Control
:-/) is a reasonable key combination to press.

2) You don’t consider dock clients but always snap to the screen edges.

3) There are various little code style points which I’m omitting in this mail,
due to the reasons below.

Now that I saw how it looks and feels, I don’t think this is a good feature for
i3. It feels a little weird to use and frankly, I don’t think we need it.
Floating mode is mainly implemented for (modal) popup dialogs like password
prompts. i3 does not aim to become a good floating window manager.

So, in conclusion: Thanks for your efforts, but I say no to this version of the
patch and probably also to further versions, unless you can convince me that
it’s really worth it and that you sorted out the usability problems.

Best regards,
Michael

[1] See
http://www.techotopia.com/images/7/74/Interface_builder_align_objects.png for
example – the blue dashed line signals that the button is centered below the
input field.

Other related posts: