pcbnew: object incorrectly moved with "warp mouse to origin of moved object" global preference enabled
Description
Dragging an object under PCBNew with "warp mouse to origin of moved object" global preference enabled makes the object warp to the mouse cursor if the origin to warp to is outside of the visible area. The object warps such that the origin matches the mouse cursor location. The problem doesn't happen if the above option is disabled.
Steps to reproduce
- Open PCBNew
- Open an existing file and select an object.
- With the object magnified and fully visible, select it, drag it, and locate the origin to which the mouse cursor warps.
- Zoom even more so that the object be partially visible with the above origin outside of the visible area.
- Select the object at the same location as o, Step 3 and start dragging it: it will immediately be warped such that the above origin matches the mouse cursor location.
KiCad Version
Application: KiCad x64 on x64
Version: 8.0.6, release build
Libraries: wxWidgets 3.2.6 FreeType 2.13.2 HarfBuzz 9.0.0 FontConfig 2.14.2 libcurl/8.8.0-DEV Schannel zlib/1.3.1
Platform: Windows 10 (build 19045), 64-bit edition, 64 bit, Little endian, wxMSW
Build Info: Date: Oct 14 2024 01:02:33 wxWidgets: 3.2.6 (wchar_t,wx containers) Boost: 1.85.0 OCC: 7.8.1 Curl: 8.8.0-DEV ngspice: 43 Compiler: Visual C++ 1939 without C++ ABI
Build settings: