After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 679609 - Window edge resistance/snapping (not tiling!). No way to disable.
Window edge resistance/snapping (not tiling!). No way to disable.
Status: RESOLVED FIXED
Product: mutter
Classification: Core
Component: general
unspecified
Other Linux
: Normal normal
: ---
Assigned To: mutter-maint
mutter-maint
: 712352 753279 (view as bug list)
Depends on:
Blocks:
 
 
Reported: 2012-07-09 04:22 UTC by unimbox
Modified: 2020-10-26 14:51 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description unimbox 2012-07-09 04:22:12 UTC
I know there is an option to enable or disable edge-tiling feature. But I couldn't find an option that enables or disables edge resistance/snapping features that provide specific interactions between windows, which are enabled by default. I find it very hard to work when I have many (over 5, usually) windows opened on my desktop; dragging a window feels like a game of tug-of-war. Very annoying.

That would be great if I could enable and disable those features with dconf-editor or something similar (even with a simple conf file(s)).
Comment 1 Jasper St. Pierre (not reading bugmail) 2012-07-09 05:13:30 UTC
It does exist. It's under the hard-to-find key of

  org.gnome.mutter edge-tiling

For gnome-shell, there's:

  org.gnome.shell.overrides edge-tiling
Comment 2 unimbox 2012-07-09 06:38:55 UTC
(In reply to comment #1)
> It does exist. It's under the hard-to-find key of
> 
>   org.gnome.mutter edge-tiling
> 
> For gnome-shell, there's:
> 
>   org.gnome.shell.overrides edge-tiling

No, I mentioned about that option, edge-tiling, in my first sentence to avoid misunderstanding >> I know there is an option to enable or disable edge-tiling feature.<<. What I talked about is interactions between window and screen edges/bounds themselves. When I drag a window it sticks to another window edge until I've moved my cursor further away (like ~20 pixels) only then the window releases and continues to be dragged by the mouse. 

Or another example: when I want to place the half of my window outside the screen I start dragging it and when the edge of the window hits the edge of the screen it stops even I continue dragging, after ~20 pixel away the window releases and continues following my cursor.

The option "edge-tiling" provides interaction only between window and screen bounds with resizing and tiling them.
Comment 3 unimbox 2012-07-11 11:03:55 UTC
To get the problem more clear, the thing that I'm talking about is provided by file edge-resistance.c
Comment 4 Martin Meyer 2012-10-02 16:46:54 UTC
I would like the edge snapping to be cancelable at use time. I often want to put windows in the upper-right corner of my monitor, and it would be nice if I could press a key to not have it title/tile the window.

I don't *always* want this, so disabling tiling feature entirely isn't a good option for me. Maybe we could make it an opt-in/opt-out sort of toggle, with the default state being that windows wile tile unless a certain key is pressed? The setting could toggle whether that key press turns the feature temporarily on or off.
Comment 5 unimbox 2015-04-04 18:59:24 UTC
*** Bug 712352 has been marked as a duplicate of this bug. ***
Comment 6 unimbox 2015-04-04 19:14:53 UTC
It's been quite some time. No reports at all, so far. I don't know whether I should create another bug report with more clearer description about this issue. 

Has there been some work done on this? 
And I'll clarify this again. I'm not talking about the tiling, I'm talking about the window interaction mechanism where windows sort of grip along their edges.
Comment 7 Owen Taylor 2015-04-09 17:40:20 UTC
Please don't file another bug report - this is sufficient.

I don't think there is enough demand for this to add even a hidden option - it seems to have taken ~5 years after the feature was implemented in Metacity for anybody to request an option to disable (see Bug 612822).

A patch to allow disabling with a modifier key (see bug 341767) would be a bit more likely to be accepted - it doesn't seem to me that there are  people who *never* want edge snapping. Rather, for the set of people who like to position their windows really carefully, there are sometimes cases where edge snapping doesn't do what they want.
Comment 8 anders 2017-05-26 11:15:59 UTC
"it doesn't seem to me that there are  people who *never* want edge snapping."

I for one would want to disable this with an option. I never want windows to snap when I'm dragging them. The more windows I have on the the desktop, the more edges it will have to snap too. The end-effect is that dragging windows looks like a laggy mess, and it's really annoying. 


"A patch to allow disabling with a modifier key (see bug 341767) would be a bit more likely to be accepted"

I wouldn't want to hold a modifier key for my desktop experience not to be laggy.

"Rather, for the set of people who like to position their windows really carefully, there are sometimes cases where edge snapping doesn't do what they want."

The main issue here isn't that I want to have my windows non-aligned, I want the drawing of moving windows to be smooth.

Microsoft Windows doesn't do this, and if it did, I'm sure they'd add it as an option and not as a default that you cannot turn off.
Comment 9 anders 2017-05-29 12:38:51 UTC
This seems like a duplicate as well: https://bugzilla.gnome.org/show_bug.cgi?id=753279
Comment 10 Daniel Boles 2017-08-20 10:48:20 UTC
*** Bug 753279 has been marked as a duplicate of this bug. ***
Comment 11 Daniel van Vugt 2017-10-25 08:16:15 UTC
I've just realized what I was seeing is not gnome-shell being bad at redraws, but just window snapping where you wouldn't expect. Made a suggestion for improving the feature here:

https://bugs.launchpad.net/bugs/1727225
Comment 12 anders 2018-11-12 10:35:47 UTC
Still no takers for this feature? Should be fairly easy for someone with knowledge of the code, and it now pays $215 from https://www.bountysource.com/issues/35544484-window-edge-resistance-snapping-not-tiling-no-way-to-disable
Comment 13 Florian Müllner 2018-11-12 18:09:22 UTC
(In reply to anders from comment #12)
> Still no takers for this feature?

Comment #7 still very much applies and doesn't go away with money.
Comment 14 anders 2018-11-12 21:02:00 UTC
You mean the comment: "it doesn't seem to me that there are  people who *never* want edge snapping"?

I mean, multiple people willing to pay money for an option to never have edge snapping might not make that comment go away, but it does disprove the assertion. Having to press a modifier key to not have a terrible experience moving windows around on the desktop is outrageous.

IMO smooth movement _should_ be the default behavior. Having windows snap to whatever else is on the desktop (aka overriding the user input) seems like the the kind of _modification_ of the user actions that would require holding a _modifier_ key. However, not even having an option of changing this behavior seems like the worst choice of all.

As a general design practice respecting the users input is a good idea. An example of the opposite is Microsoft asking if you're sure you don't want to use Edge instead, while opening Chrome (https://www.theinquirer.net/inquirer/news/2431042/windows-10-will-nag-you-not-to-ditch-default-microsoft-edge-browser...

As a side note, the fact that it took 5 years, might have more to do with the expectation of graphics performance under linux. It took me a while to realize that it wasn't poor graphics performance, but a "feature" that caused it.
Comment 15 fplust 2018-12-08 05:49:58 UTC
please add an option to disable it !
Comment 16 Chris Billington 2019-02-21 05:04:07 UTC
I have exposed this as a dconf setting and submitted the change as a merge request to mutter:

https://gitlab.gnome.org/GNOME/mutter/merge_requests/455
Comment 17 anders 2019-02-27 22:16:25 UTC
Great work! I doubled my bountysource contribution to the bounty for this. Hope others will contribute as well. Looking forward to see this merged!
Comment 18 Daniel van Vugt 2019-03-06 02:25:05 UTC
I understand why people might want snapping enabled by default, but I also think the argument that there's little demand to disable it is a poor one.

The problem is that casual users may never realize that it's window snapping making their window drags appear to stutter. I think if they were told this then a higher number of people might opt to disable it.

But I wouldn't disable it myself. I would hunt for some middle ground - a way to make snapping not visibly interfere with window dragging *as much*. That could be achieved by some combination of modifying the snapping distance or automatically disabling snapping when the pointer is above some moderate velocity.
Comment 19 yves_bos 2019-03-22 14:00:59 UTC
I've been wanting to disable the edge resistance as well.
Any update on this feature getting merged?
Comment 20 Daniel van Vugt 2019-03-25 01:23:29 UTC
You can monitor the progress in https://gitlab.gnome.org/GNOME/mutter/merge_requests/455
Comment 21 Daniel van Vugt 2020-04-06 09:53:06 UTC
Also tracking in https://gitlab.gnome.org/GNOME/mutter/-/issues/181
Comment 22 Daniel van Vugt 2020-10-15 01:38:01 UTC
Fixed by https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/1268