Cinnamon: Sticky Window Edges / Edge Resistance for dual monitor setups

Created on 26 Apr 2016  路  5Comments  路  Source: linuxmint/cinnamon

Ubuntu's Unity desktop (spits on floor) has an option in the display section, called 'sticky window edges' or something very similar. It's purpose is specifically for multi monitor setups whereby crossing the cursor over the border between the two monitor areas gives some cursor resistance.

Intended (I presume) for the scenario where trying to click a menu button or browser 'back' button doesn't result in the user moving the cursor too far and past the button he/she is trying to click. Very much like how back in gnome 2 days there was an option to have on option for 'edge resistance' to prevent dragging a window onto a different workspace by accident but apply this principle to multiple monitors.

I find regularly that I've have 'lost' my cursor because I nudged my mouse and moved it to another monitor (I don't keep my second monitor on all the time) and edge resistance would prevent any unintentionally drifting over to another monitor.

I think this would be a good addition to Cinnamon and would love to see it implemented, alas I am no coder so if someone feels up to the challenge.

My heartfelt thanks and gratitude are the only reward I can offer.

FEATURE REQUEST

Most helpful comment

This bothers me as well, we need edge resistance at monitor edges. I'll have to try unity out for this, and maybe dig and see how they're accomplishing it.

All 5 comments

This bothers me as well, we need edge resistance at monitor edges. I'll have to try unity out for this, and maybe dig and see how they're accomplishing it.

I can vouch for the Unity implementation being extremely good. The code is in unity/launcher/EdgeBarrierController.cpp, and as complicated as it is, I think the complexity is 100% worth it. I'd recommend reusing at least the logic 1:1, and possibly the code too (depending on how easy it is to adapt it to Cinnamon and whether you can get the authors to agree to release it under GPLv2+ instead of just GPLv3).

Of particular note: Once the edge resistance is overcome through slow pressure, the edges are unlocked (resistanceless) for a certain amount of time (I believe 1 second) from the last time an edge has been passed. So if you keep passing back and forth, you don't encounter the resistance again. I believe this is quite important for the feature to be pleasant to use.

Fast movements let the mouse pass without unlocking the barrier. I'm not sure if not unlocking is a side effect of the implementation or intentional and whether it is important for usability.

Many thanks for contributing to Cinnamon. Your suggestion was reviewed.

For more information on our workflow and feature requests, read https://linuxmint-troubleshooting-guide.readthedocs.io/en/latest/faq.html.

The suggestion was reviewed and the outcome was...?

@ioquatix
I like this features, that Windows has. That sticky corners, so it is easier for me to aim at the close button, or the button for showing the desktop.
image

Was this page helpful?
0 / 5 - 0 ratings