Commit Graph

194 Commits

Author SHA1 Message Date
LD ae3cbe4b12
cocoadisplay: Add support for high-dpi screens (#1308) 2023-10-10 16:56:04 +02:00
rdb c99fe581d3 Merge branch 'release/1.10.x' 2023-09-16 09:57:09 +02:00
rdb 144479d8e4 cocoa: squelch secure restorable state warning on macOS 14 2023-09-16 09:50:17 +02:00
rdb b22b970d10 makepanda: Require macOS SDK 10.12 or higher
This does not remove support for older macOS versions, they can still be targeted by newer SDKs (10.9 can still be targeted by the macOS 12 SDK)

I would like to require macOS 11 SDK, but we still need 10.13 for FMOD
2023-08-29 22:51:17 +02:00
Max Rodriguez b6c427f2b4 putil: Deprecated MouseData alias for PointerData
Co-authored-by: rdb <git@rdb.name>

Closes #1513
2023-08-02 08:13:02 +02:00
LD 53f32e440e cocoadisplay: Fix compilation errors due to missing includes 2023-03-24 17:24:05 +01:00
rdb 52dc6dbd28 cocoadisplay: Remove accidentally checked-in file
[skip ci]
2023-03-23 08:57:02 +01:00
rdb 545ede9d94 cocoa: Split out GL-specific code into new cocoagldisplay module
This makes it possible to create subclasses for tinydisplay and vulkandisplay without having to duplicate code
2023-03-21 23:16:36 +01:00
rdb 8bc1743d75 Merge branch 'release/1.10.x' 2023-01-27 16:17:41 +01:00
LD 518ee0fb8e cocoadisplay: Capture display before switching to fullscreen mode 2023-01-20 18:16:43 +01:00
rdb b282e8920d Merge branch 'release/1.10.x' 2023-01-13 22:32:35 +01:00
rdb e696ac4046 cocoa: Fix black bar when switching to fullscreen while z-order is top 2023-01-13 22:05:06 +01:00
rdb 76386bc4c0 cocoa: Fix window sizing bug when simultaneously changing undecorated 2023-01-13 22:04:42 +01:00
rdb 8c5e2e74f5 cocoa: Fix undecorated setting ignored when switching off fullscreen 2023-01-13 22:03:33 +01:00
rdb 92185bcb28 Merge branch 'release/1.10.x' 2022-12-19 16:42:29 +01:00
rdb e5a8eb5b1d cocoadisplay: Fix Command+Q in green-button-style fullscreen mode
It seems macOS has an extra NSWindow without a delegate in this mode
2022-12-19 12:55:57 +01:00
rdb 8354e175cf Merge branch 'release/1.10.x' 2022-12-16 17:36:04 +01:00
rdb 9cb60ccd93 cocoadisplay: Fix oversized window getting an awkward offset
We currently do the centering based on the total screen size, not the screen size that macOS actually lets us use.

See #1312
2022-12-16 16:07:58 +01:00
rdb e1b4083d6d Merge branch 'release/1.10.x' 2022-12-12 17:19:10 +01:00
rdb dae26c2e4b cocoadisplay: Fix fullscreen regression on Intel macs
Partially backs out 619050bb32

Fixes #1316 (for good this time hopefully)
2022-12-08 15:20:14 +01:00
rdb 4040e7b390 Merge branch 'release/1.10.x' 2022-12-07 19:04:12 +01:00
rdb bdb55c480b cocoadisplay: Fix missing includes 2022-12-07 18:58:54 +01:00
rdb 5751fc6478 cocoadisplay: Fix a whitespace error 2022-12-07 18:58:38 +01:00
rdb 72376e95f1 cocoadisplay: Even better applicationShouldTerminate handling
It seems that performClose doesn't actually work properly for fullscreen windows
2022-12-07 18:34:36 +01:00
rdb fe8ed9dec7 Merge branch 'release/1.10.x' 2022-12-07 17:58:28 +01:00
rdb 4979a8ba3f cocoadisplay: More graceful application termination behavior
See #1321
2022-12-07 17:52:11 +01:00
LD 5fa3f3eb68 cocoadisplay: Call remove_all_windows() when the application is about to close
Part of #1321
2022-12-07 17:22:23 +01:00
rdb c85cc8f2e8 cocoadisplay: fix unprotected debug/spam prints 2022-12-07 17:20:41 +01:00
rdb 2a65f583d0 cocoadisplay: Small tweak to fullscreen fix 2022-12-07 17:16:18 +01:00
rdb c82f95ad6b Merge branch 'release/1.10.x' 2022-12-06 20:02:35 +01:00
rdb 619050bb32 cocoadisplay: Fix fullscreen issues on M1 macs
The OpenGL-on-Metal drivers used on these machines don't support CGLSetFullScreenOnDisplay, so we need to disable it on those machines.  This also applies when running a x86_64 app through Rosetta 2, hence the sysctlbyname check.

Furthermore, we need to set the appropriate shielding level, which need not be `NSMainMenuWindowLevel+1`.

Fixes #1316

Co-authored-by: LD <laurent.deru@gmail.com>
2022-12-06 16:59:55 +01:00
rdb 316b0009ae Merge branch 'release/1.10.x' 2022-10-31 23:10:39 +01:00
rdb 4cf8187df7 cocoadisplay: Fix crash with threading-model on newer macOS versions
Updates the context on the main thread instead of the draw thread now. If render_frame happens to run while the context needs updating, it will skip the frame.

Fixes #1286
2022-10-29 20:51:05 +02:00
rdb 79bd743957 Merge branch 'release/1.10.x' 2022-09-02 23:14:15 +02:00
LD 12ae2973ae cocoadisplay: Disable the event suppression interval when moving the position of the mouse pointer 2022-09-01 09:07:16 +02:00
LD 102da5bc35 cocoadisplay: Don't use position delta for confined mouse mode as it lead to invalid estimation of the pointer position 2022-09-01 09:07:16 +02:00
LD 69bf5fa626 cocoadisplay: Remove overzealous coordinates transform performed on mouse position 2022-09-01 09:07:16 +02:00
LD 105f9abbfa cocoadisplay: Trigger handle_move_event() when a resize event is received to also update the origin of the window if needed 2022-09-01 09:07:16 +02:00
rdb e27162df0b Merge branch 'release/1.10.x' 2022-02-06 15:32:24 +01:00
rdb 692221cacb cocoadisplay: Invert direction of horizontal scroll
Now behaves consistent with other applications (tested with Logitech MX Master 3 for Mac on macOS 10.13 in unnatural scrolling configuration).

Set `cocoa-invert-wheel-x true` to revert to old behaviour.
2022-01-22 15:56:53 +01:00
rdb d46651c032 Merge branch 'release/1.10.x' 2022-01-04 16:35:19 +01:00
rdb d1c756713d display: Handle raw event for key between Shift and Z on ISO keyboards
This key is called raw-< for lack of anything better, it's usually mapped as backslash on US keyboards but that would not allow distinguishing between the backslash key near the enter key.
2022-01-04 11:05:46 +01:00
rdb 0e219fa5c9 display: Remove obsolete mouse_mode_relative/absolute methods 2021-07-02 16:00:41 +02:00
rdb 199b797d72 Merge branch 'release/1.10.x' 2021-06-01 11:50:12 +02:00
Ben Humphries 0415a08416 cocoadisplay: Round refresh rates when choosing display mode on macOS
Closes #1144

Co-authored-by: rdb <git@rdb.name>
2021-06-01 10:56:55 +02:00
rdb b817e19ab6 Merge branch 'release/1.10.x' 2021-03-13 16:50:12 +01:00
LD 209e031964 cocoadisplay: Test all the fullscreen modes to find the valid one
Closes #1039
2021-03-13 12:44:30 +01:00
rdb abe3c2bf0b CMake: Mark all system macOS frameworks as advanced variables
It should be extremely unusual to want to change these, and they are just cluttering up the CMake GUI.
2020-12-19 00:33:22 +01:00
rdb 66ac3be604 Merge branch 'release/1.10.x' into master 2020-09-12 23:23:58 +02:00
LD 28f49ffd0b cocoadisplay: Use [event charactersIgnoringModifiers] when UCKeyTranslate() can not translate the input key 2020-09-01 20:29:53 +02:00