Mouse pointer stuck to edge when switching to smaller monitor in dual display setup
Solution 1:
Open system preferences, click 'displays', and then click the 'arrangement' tab. Here you will see a scaled down representation of your displays' positions relative to one another. Drag the displays around until the mouse switches over at the correct position. For your case, it'll probably look something like this:
Solution 2:
Sadly this is just the default behavior. In their defense, it's the same in Windows.
I've never been able to find a 3rd party app that handles this quite the way I want. It's easier to just have screens with the same resolution, quite honestly as well as sensible virtual display arrangement.
There are many applications that move your mouse to another screen via shortcut, but to me, that just doesn't cut it. It's too clunky.
As a side note: DisplayFusion (windows only) has the desired features implemented in the best possible way. It just slides to the other screen as if there was no corner there at all. It's fantastic. It has two settings:
- Prevent mouse cursor snagging on unaligned monitor edges
- Prevent mouse cursor from sticking in Sticky Corners (Windows 10 Only)
I think the most useful application I have found to get around this issue is Mouse Warp 2. It warps your mouse to the center of the active window when you switch to it using Cmd+Tab
. It also has the option to only warp the mouse cursor if the activated application is on a different screen.
I haven't used Mouse Warp in a while because it had a small issue, where if you Cmd+Tab
too fast, I think if you release Cmd
before the application switcher appears, it won't center the cursor.
Because of that, I've been using Keyboard Maestro
KBM is expensive enough that you probably won't be buying it just for this feature, but it does have a trial if you want to try it out.
I made a macro that kind of replicates Mouse Warp's behavior. It's a little janky and could be improved but it works very well (no matter how fast I Cmd+Tab
).
Also, because this works by detecting that an application was activated, it is not limited to just Cmd+Tab
, which may or may not be a good thing depending on what you like. That's why there is a conditional saying that if you click a window, don't center the mouse. If you open a new application, for instance, the cursor will be centered on it.
I also included a version of that macro called Active Window
(disabled by default). It's included in the same package. It will trigger every time a window activates. Literally any window. This includes "open file" windows. And likely most regular Alert windows. I like the Active App
better personally.
Dropbox link