WebPageProxy.cpp and WebChromeClient.mm have CG calls for pointer lock on Mac. CGDisplayHideCursor(CGMainDisplayID()); CGAssociateMouseAndMouseCursorPosition(false); CGAssociateMouseAndMouseCursorPosition(true); CGDisplayShowCursor(CGMainDisplayID()); Move these to a platform specific manager class in WebCore to be used by WK1 and WK2.