Archive. This is an archive of the Apple Support Community. Discussions are being restored and soon you will be able to read and post here again.

Mouse pointer freezes when wiggled on one user account

Wiggling my mouse behavior varies - on one account it simply enlarges the mouse pointer, on another it ALSO briefly freezes the mouse pointer. (What I'd REALLY like is a way to "warp" the pointer to the dock or some fixed location.)

2 replies

The visual freezing behavior you are experiencing on one account is a known macOS WindowServer rendering bug linked to Fast User Switching. When you keep multiple user accounts logged in simultaneously and switch between them, the "Shake to find cursor" feature often causes the cursor UI to desynchronize, rendering it completely frozen for a brief second while the scale animation triggers. 


Fixing the Shake-to-Freeze Bug

Because this is an active operating system glitch tied to concurrent user sessions, you can eliminate the freeze by applying one of these methods:

  • Turn off "Shake to Find" on the affected account: Go to the Apple menu > System Settings > Accessibility > Display. Scroll down to the Pointer section and toggle off "Shake mouse pointer to locate". This stops the system from trying to scale the cursor, which immediately prevents the UI freeze. 

  • Avoid concurrent active sessions: If you completely log out of your first account before signing into the second one (instead of using Fast User Switching), the rendering bug will not trigger.


How to "Warp" Your Pointer

macOS does not have a native, built-in feature to automatically warp or snap your cursor to the Dock or a specific quadrant via a keyboard shortcut. However, you can achieve this easily using native scripting.


You can create a custom automation that teleports your cursor to a fixed screen coordinate.

  • Open the built-in Shortcuts app on your Mac.
  • Click the + (plus icon) to create a new shortcut.
  • Search for the Run AppleScript action on the right side and drag it into your workflow.
  • Replace the default text with the following script (adjust the coordinates for where you want the cursor to go):


on run {input, parameters}
    -- Change the numbers below to match your preferred X and Y coordinates
    -- For example, X=960 and Y=1000 centers the cursor near the bottom dock on a 1080p display
    do shell script "python3 -c 'import objc; ns = objc.lookUpClass(\"NSEvent\"); print(ns.mouseLocation())'"
    -- To force set coordinate, we use CoreGraphics via python:
    do shell script "python3 -c 'import ctypes; cg = ctypes.CDLL(\"/System/Library/Frameworks/CoreGraphics.framework/CoreGraphics\"); cg.CGWarpMouseCursorPosition((0, 0), ctypes.c_double(960), ctypes.c_double(1000))'"
    return input
end run


  • Click the Shortcut Settings icon (the sliders in the top right corner), select Add Keyboard Shortcut, and record your favorite key combination (e.g., Control + Option + Command + D)


I actually like the momentary "freeze" - even with a large mouse pointer it can be hard to spot!