macOS: Store UUID in MonitorHandle instead of CGDirectDisplayID (#4167)

The monitor UUID is what actually represents the monitor,
CGDirectDisplayID is closer in correspondence to a specific framebuffer.
This commit is contained in:
Mads Marquart 2025-04-29 12:26:03 +02:00 committed by GitHub
parent a5e6d0aaaf
commit 1800fa1670
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
4 changed files with 106 additions and 54 deletions

View file

@ -248,10 +248,11 @@ changelog entry.
- On macOS, fixed the scancode conversion for `IntlBackslash`.
- On macOS, fixed redundant `SurfaceResized` event at window creation.
- On Windows, fixed ~500 ms pause when clicking the title bar during continuous redraw.
- On macos, `WindowExtMacOS::set_simple_fullscreen` now honors `WindowExtMacOS::set_borderless_game`
- On macOS, `WindowExtMacOS::set_simple_fullscreen` now honors `WindowExtMacOS::set_borderless_game`
- On X11 and Wayland, fixed pump_events with `Some(Duration::Zero)` blocking with `Wait` polling mode
- On macOS, fixed `run_app_on_demand` returning without closing open windows.
- On Wayland, fixed a crash when consequently calling `set_cursor_grab` without pointer focus.
- On Wayland, ensure that external event loop is woken-up when using pump_events and integrating via `FD`.
- On Wayland, apply fractional scaling to custom cursors.
- On macOS, fixed `VideoMode::refresh_rate_millihertz` for fractional refresh rates.
- On macOS, store monitor handle to avoid panics after going in/out of sleep.