121

It seems Microsoft has tried to solve this problem Multi-monitors and the corners of the screen.

In Windows 7, there is no boundary between monitors and the mouse can move freely across the top of the screen between my 3 monitors, provided I had set their heights equal in display settings. Windows 8 introduced sticky corners. See this question.

Windows 10 got sticky corners as well. There are a few pixels at the top corners of each display where the mouse cannot cross over onto the other display. One must move the cursor down to avoid this region in order to get to the next display.

The image shows roughly the region where mouse movement is not permitted in Windows 10, but is allowed in Windows 7.

enter image description here

Personally, I had no problem with unrestricted mouse movement across the top of my screens - I got used to "aiming" for the x, and the convenience of unrestricted cursor movement. Like all the people who wanted to disable it in W8, I'm wondering if there is a way to disable it in W10.

Edit to address possible duplicate:

Although the problem is identical to the one in this question, solutions to solve the problem in W8 involving editing the registry key MouseCornerClipLength do not work in W10, since that registry key is not present in W10. Also adding that key and setting the value doesn't work. I searched the entire registry and couldn't find it in another location. No other W10 keys in the node referenced in the W8 solution are obvious replacements.

Edit to address possible solutions in comments

harrymc's suggestion 1 and suggestion 2 that worked for for Windows 8.1 do not work in Windows 10.

  • 11
    This has not just to do with the close window button, but other things. For instance, moving a window from one display to the next. You used to be able to drag the display directly across the top of the display into the other one. Now you must move it down while dragging then move it back up. I was crashing into boundaries all last night after installing W10. I can't believe more people haven't complained :) – djv Jul 30 '15 at 21:06
  • 1
    I was not sure hence why i added it as a comment rather than an answer. Thanks for the info. – birdman3131 Jul 31 '15 at 16:12
  • 4
    @harrymc despite a long and widely participated in beta – djv Aug 5 '15 at 15:01
  • 12
    I just want to cry whenever I accidentally close an application by accident thinking that some programmer at Microsoft spent time implementing this stupid feature and did not think one second that people would click on the X button when all they wanted to do was giving the focus to a window on the other screen. Design books will talk about this one in the future – Jean-Simon Brochu Mar 9 '17 at 13:45
  • 1
    @djv: You can use Win+Shift+Arrows to move apps from one display to the other. It's much faster than dragging them. Sticky Corners still very much suck, though. – Eric Duminil Mar 14 '19 at 11:16

11 Answers 11

42
+50

The thread How to disable sticky corners in Windows 10? from answers.microsoft.com treats this same problem :

When moving the mouse from the left monitor to to the top left of the right monitor the 6 pixel corner will catch your mouse.

I have similar problem in windows 8.1 and changing MouseCornerClipLength in registry to 0 from 6 and disable Corner Navigation in Taskbar and Start menu properties helped.

Anyway in Win10 i can't find MouseCornerClipLength, Corner Navigation disabled at all and adding same registry keys won't help.

The answer on June 4, 2015, by a Microsoft Support Engineer named Vijay B was :

We are aware of this issue and it is currently being investigated. Stay tuned and we will update this thread when additional information becomes available.

If any other posters experiencing this have not submitted this through the Windows Feedback App, please do so. This article http://answers.microsoft.com/en-us/insider/forum/insider_apps-insider_feedback/how-to-share-feedback-on-windows-10-technical/5e501781-a580-43e3-8926-40ae19343805 explains using the Windows Feedback App.

It seems that your only option is currently to wait for a future improvement, or for some hacker to come up with the right hack. Adding your voice to the Windows Feedback App might help.

[EDIT] The open-source application Non Stick Mouse is said to offer a solution in the case of multiple monitors. The developer states:

What it does is hop the mouse over the sticking corners, as well as the screen edges when moving windows. Thus it allows the dragging of windows through screens without your mouse getting hijacked by the Snap Assist.
[...]
This application does not read or write to any drive, it does not access the registry or connect to the Internet.

Warning: It has been noted in the comments that virustotal finds malware in the latest version of "non stick mouse".

  • 3
    Nearly three months later. Just updated to Windows 10 and this is still an issue. Thanks for pointing me in the direction of where to complain. – Chaser324 Oct 29 '15 at 7:43
  • 2
    Please, if you give feedback in the Feedback App, either simply vote for whichever one of the many existing posts has the most votes instead of (or at least in addition to) creating another post. Or add a new post and upvote All of the existing posts (which is what I did). I don't see any other way to resolve the issue than to sufficiently raise awareness. – jinglesthula May 23 '16 at 15:51
  • 17
    Still an issue in 2017 – Keith Feb 2 '17 at 18:08
  • 6
    Still an issue at the end of 2018, they'll never fix it. – Arthur Castro Nov 6 '18 at 14:39
  • 10
    The year is 2019, still no improvement. – CustomX Apr 24 '19 at 11:18
25

I developed an application to deal with this issue as Microsoft evidently seem intent to ignore it. You can get it from here: http://www.jawfin.net/nsm

  • Yay, someone noticed! But staying on-topic, if anyone needs help with this app, or has suggestions for improvement please post on my site so all can see it in one place. Cheers :) – Jonathan Barton Dec 17 '15 at 4:20
  • 1
    This works surprisingly well, although it has trouble crossing monitors with different resolutions. – isanae Feb 10 '16 at 19:04
  • @JonathanBarton Your application shows up as a virus in scans. Is there a reason why? It shows as suspicious when scanned by MBAM as well. – mbomb007 May 30 '18 at 14:11
  • Hi @mbomb007 - there are copious comments on the related website here jawfin.net/nsm detailing all the fun I've had with AVs. Please read those for more information and ways you can satisfy yourself the application is clean. Cheers – Jonathan Barton Jun 6 '18 at 7:09
  • @JonathanBarton Thanks, I hadn't checked the comments. – mbomb007 Jun 6 '18 at 13:26
7

Partial solution

  • Disable "Snap"
  • Doesn't fix the whole problem, but makes it a lot less severe.
  • Easy to do: Disable "Snap" in Windows 10. See below for details if link breaks.
  • You can implement the workaround for a full solution if you really want to, but it's a lot of work since you'd literally need to make a program to do it. Details at the end of this post.

Background

I have a 6-monitor set up:

                Monitors
   Top row:  [#1] [#2] [#3]
Bottom row:  [#4] [#5] [#6]   (eye-level; #5 is main display)

Whenever I moved a window from one monitor to another, Windows 10 would check to see if I wanted to maximize it. This features, called "Snap", appears to be bugged because it frequently prevented me from moving a window from one display to another. I found this SuperUser question while frustrated about it.

Disabling Snap really helped me. This also automatically disabled Aero shake, which I consider to be a bonus.

Procedure

To disable "Snap" and "Aero shake":

  1. Go to:
    • "Control Panel"
    • --> "All Control Panel Items"
    • --> "Ease of Access Center"
    • --> "Make the mouse easier to use".
  2. Check "Prevent windows from being automatically arranged when moved to the edge of the screen".
  3. Click "OK" or "Apply".

Results

  • "Snap", which blocked moving windows from one screen to another, is now disabled. Windows can move freely.
  • "Aero shake", which causes all windows to minimize when one window is shaken, is now disabled.
  • "Sticky corners", which causes a similar problem but at just the corners (and not all boundaries), is still a problem. As best as I can tell, there is currently (2015-08-18) no way to disable Sticky Corners or further mitigate the problems it causes.

Workaround

There's a workaround for Sticky Corners, but it's not fun. The gist is that you make a WPF program that puts small black squares at the corner of each of your displays, then when the program detects mouse movement over those squares, it hops your mouse to the next screen as intended. Technically you'd probably want to adjust the shape of the "squares" to match whatever area Sticky Corners actually affects (probably an L-like shape?).

Basically:

  1. Download Visual Studio, e.g. Visual Studio 2015 Community.
  2. Make a WPF project.
  3. Have the WPF application make a Window on every page. For each Window:

    this.Topmost = true;
    this.AllowsTransparency = true;
    this.Background = Brushes.Transparent;
    this.WindowState = WindowStates.Maximized;
    Border border = new Border();
    this.Content = border;
    border.Background = Brushes.Transparent;
    border.BorderBrush = Brushes.Black;
    border.BorderThickness = new Thickness(5);
    border.MouseMove += HandleThisByMovingTheMouseToTheCorrectScreen();
    
  4. Write HandleThisByMovingTheMouseToTheCorrectScreen() to move the mouse to the appropriate location, thus avoiding Sticky Corners from trapping it.

  5. If you want to get fancy, instead of a Border, make a Grid with a separate Canvas for each corner (as opposed to the Border, which would also cover the edges that aren't corners on each screen).

  • What does this have to do with what I'm trying to achieve? – djv Aug 19 '15 at 1:19
  • @Verdolino: It significantly relieved the problem that caused me to find this question, so I thought that it might help others in my position. I added a Workaround section detailing how to make a WPF program that'd fix the Sticky Corners issue, if you'd like to go that far. But it'd probably take an hour or two to write it. – Nat Aug 19 '15 at 1:26
  • 1
    If it solves the problem. But you even said "Sticky corners", which causes a similar problem but at just the corners (and not all boundaries), is still a problem. – djv Aug 19 '15 at 1:31
  • The "solution" I provided disables a "Sticky Edges"-like bug that I seemed to be encountering on Windows 10 Education x64. This problem affected all edges instead of just the corners. Once implemented, that problem goes away, but the more limited "Sticky Corners" problem remains. The work around program fixes the Sticky Corners problem by literally detecting whenever your mouse gets trapped by Sticky Corners and moving it programmatically to the next screen. – Nat Aug 19 '15 at 1:34
  • 2
    I actually did write a program for this. Extremely Quick & Dirty, I even hard-coded my corner points - but it could be friendly if desired! I am only posting though to note the workaround above needs more work that the answer provides. If you just move the mouse to the next corner of the adjacent monitor the sticky corner picks that up too - you have to move it into the current monitor away from the corner (8 pixels does it) - then move it onto the next monitor. You also have to sleep the UI thread to stop Win10 re-grabbing it even after that -.- – Jonathan Barton Nov 24 '15 at 2:22
4

This also bugged me. I've taken a crack at implementing a solution in AutoHotkey which retains all the main "snap" features while allowing you to disable strictly the "sticking" of your mouse that happens in the corners between monitors.

Workaround:

https://github.com/patricknelson/win10-sticky-mouse

  1. Install AutoHotkey
  2. Download and run win10-sticky-mouse.ahk from the above repo.

The key here is to watch messages from WM_MOUSEMOVE and use that to predict where the mouse will be going, then hopping over (cross axis to the primary axis of movement) just enough to ensure Windows doesn't [un]helpfully catch your mouse.

If you're still having issues, please try giving this a shot and let me know if that helps. Any issues or pull requests are very welcome!

  • 1
    This works and isn't flagged as a virus by as many AVs. VirusTotal – mbomb007 Sep 20 '18 at 14:15
  • You can use the exe but I'd still recommend downloading AutoHotkey and loading the ahk script directly (just double clicking); just a safer habit as a general rule of thumb. – chunk_split Nov 12 '18 at 21:54
3

In the spirit of Jonathan Barton's contribution above, I developed a little Windows C# command-line application to deal with this problem, and allow the mouse to move smoothly across multiple monitors, and also to wrap-around between left-most and right-most monitors. Note that this program does not require a "heuristic" to determine when the cursor is near the screen edge, so the cursor flows very smoothly across the edges.

  • MouseUnSnag - GitHub - You can compile it from source, or there is an executable provided as a GitHub "release".

MouseUnSnag also addresses this related superuser.com question about the cursor getting stuck on edges of monitors of differing heights:

  • Thanks for this fantastic tool. It's a pleasure to use. Even better than it sounds, in practice. – Drew Noakes Oct 18 '18 at 10:41
  • This works for me but Chrome detects it as a virus when downloading. I'm only using built-in Windows AV so not sure if Chrome just delegates to that. However, on its readme there are instructions on how to compile and they worked perfectly. I didn't realize how easy nuget is and how small the C# compiler is. Didn't see anything "funny" in the source file so feel good about the AV issue. However, to use permanently, need to have it run not from CLI I think. – Jason Winnebeck Oct 22 '18 at 16:17
  • Thanks for the heads-up on getting flagged by AV. It may be because the EXE is "unsigned", so it might show up as "unknown publisher" or something similar. – dale Oct 22 '18 at 20:30
  • This works beautifully! Better than my script (answer above). Also: For the incredibly lazy/dumb (like me) here's a link to the releases page to download: github.com/dale-roberts/MouseUnSnag/releases -- p.s. Can you update this to not include the console when you launch it? – chunk_split Jan 17 '19 at 6:01
  • p.s. In the meantime, I'll launch this on startup and just minify it to the system tray using RBTray (I also submitted a request there to allow a command line option to minify regular apps on startup, too) – chunk_split Jan 17 '19 at 6:10
0

Try using the application Display Fusion. It takes care of the problem even in Windows 10. The setting you are looking for is under settings:Mouse Management: Prevent mouse cursor from snagging on unaligned monitor edges.

Works like a champ!

  • Where can we get this software?  Please do not respond in comments; edit your answer to make it clearer and more complete. – Scott Sep 19 '17 at 3:57
  • Found it: displayfusion.com. As of now, it costs $35 for a household license, but does appear to solve the problem. – djv Sep 19 '17 at 14:17
0

I am not sure if this has always been an option of if it has recently just been implemented but I found the solution by Going into
Settings > System > Multitasking
Then Shut Off Snap By Shutting off "Arrange Windows automatically by dragging them to the sides or conveners of the screen"

which will shut off all the Snap Settings
I found this setting from a tutorial on this site: https://www.tekrevue.com/tip/how-to-disable-snap-assist-windows-10/

Visual walk through:

Open Settings and Click on System

Open Settings and Click on System

Click on Multitasking and Shut off The First Snap Option

Click on Multitasking and Shut off The First Snap Option

-1

This was a Windows 8 feature called sticky corners (IIRC). Here's someone who claims to have disabled it with a registry change:

  1. In registry, search: MouseCornerClipLength
  2. Set the value to 0 (from 6)
  3. Repeat (there is more than one key with this name, I’m not sure which one(s) are necessary)
  4. Restart

Note that I'm not currently in a situation to try this out, so let me know if this doesn't solve your problem and I'll remove my answer.

  • I'm similarly not in that situation atm, but I will try it first thing when I get home. Thanks – djv Jul 30 '15 at 21:15
  • 7
    Looked promising but it doesn't work in Windows 10. See my edit. – djv Jul 31 '15 at 15:13
  • This answer looks like it belongs to this question that is the same one but for Win 8: superuser.com/questions/498576/… – jinglesthula Feb 29 '16 at 19:18
-2

Temporary fix. I returned to my Logitech wireless mouse. I'd been using a Minicute left hand mouse, but it gets stuck. So far, the Logitech M705 mouse does not. Logitech must have seen it coming.

-3

I don't know if this will help others. But, I simply dragged the monitor numbers to move #1 to where #2 was and vice versa. It worked. And, so far (fingers crossed) it has not reverted to the mouse sticking problem. Good luck.

  • 1
    But then the monitors would be the wrong way around...? – djsmiley2k TMW Mar 10 '17 at 16:24
-3

This issue seems to be present in Windows 10 when there is a gap between two displays in the 'Select and rearrange displays' config section. I was able to fix the issue by slightly moving the two displays towards each other so there is visually no gap between them. See example

Not the answer you're looking for? Browse other questions tagged or ask your own question.