Blinue / Magpie

An all-purpose window upscaler for Windows 10/11.
GNU General Public License v3.0
9.14k stars 484 forks source link

Wrong positioning of mouse cursor in the scaled window #996

Open vitlgit opened 1 week ago

vitlgit commented 1 week ago

Magpie version 程序版本

0.11.1

Windows version 系统版本

Win11 23H2

Related screenshot (optional) 相关截图(可选)

Screenshot

Reproduction steps 复现步骤

My setup: 2 monitors one above another. Top monitor has lower resolution than bottom, bottom one is the main. Scaled window is on the bottom. In the scaled windows I have two issues:

  1. When cursor touches the bottom of the scaled window, it instantly moved to the top left corner of scaled window (bottom screen). Expected behavior: If there is no actual screen to move cursor, it should stay at the border of the screen

  2. When cursor touches top of the scaled window in the place outside of common border between top/bottom screens, it moves to top left corner of the scaled window OR sometimes to the top left corner of the top screen.

  3. If cursor moved between top and bottom screens through common border, it correctly positioned in both screens. Also I tried to connect another monitor to the left side of the bottom screen. Behavior is the same - if there is common border, cursor moved as expected, if no common border - it jumps to top left corner of the scaled screen

Log files 日志文件

magpie.log

Blinue commented 6 days ago

Can't reproduce the issue on my side. Magpie uses ClipCursor to keep the cursor within the screen boundaries when it reaches the edge, but it seems that ClipCursor isn't working properly on your system.