Please change update_desktop_dimensions() from _X_HIDDEN to _X_EXPORT in input.h so that 3rd party driver can make use of it to update the ScreenPtr and pScrnInfo when resizing the X screen.
http://lists.x.org/pipermail/xorg-devel/2012-October/033901.html
Further explanation on this bug: update_desktop_dimensions() was added to servers 1.12 and later to update the internal representation the server has of the total desktop area (all outputs together). The input code uses those dimensions to apply the transformation matrix. The call to update_desktop_dimensions() is in the part of the server that is circumvented by the NVIDIA binary driver. Output reconfigurations are thus not reflected in the input code, leading to erroneous device-to-screen mappings. A new call xf86UpdateDesktopDimensions() was provided upstream together with a minor ABI version bump to allow for the NVIDIA driver to detect and utilise that call.
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.