SIGN IN SIGN UP

[Cocoa] fix window coordinates on multi-monitor setups (#1828)

move() added the cached screen's origin to coordinates that are already absolute, so a
frameless window dragged on a screen with a non-zero origin jumped off-screen: the drag
region JS sends ev.screenX/ev.screenY, which are absolute already.

move() and get_position now treat x/y as absolute and flip y against the primary screen
instead of the window's screen, so both agree on any monitor arrangement. initial_x and
initial_y stay relative to the target screen, as on the qt backend.

Fixes #1820

Co-authored-by: Victor Purcallas Marchesi <6121411+VictorPurMar@users.noreply.github.com>
V
Victor Purcallas Marchesi committed
8b02c10e351f5bc24d9680b56eb82187ef2f8a52
Parent: 78dc468
Committed by GitHub <noreply@github.com> on 8/27/2026, 12:53:21 PM