Commit Graph

21 Commits

Author SHA1 Message Date
Justin Jia 93c396382d iOS: Fix ignored orientation changes in embedded mode
When running under the SwiftUI app lifecycle, the Godot view controller can be wrapped by a hosting controller that becomes the window's root view controller. In that case, orientation-related UIKit selectors must be propagated to the root controller before requesting an interface orientation update.

This also fixes orientation settings not being applied correctly on iOS.
2026-05-26 13:52:21 +08:00
ArchercatNEO 3f29efc8a2 HDR: Implement surface supports HDR output.
Previously the Wayland display server would attempt to enable
HDR output and try to detect if it failed afterwards which had some issues.
Now we can query the rendering driver for support and avoid ever enabling
HDR output when this would fail.
2026-05-06 19:51:54 +01:00
Allen Pestaluky 4309120a4a Fix DisplayServerWayland::window_is_hdr_output_supported to check rendering device for HDR output support and adjust warnings/errors. 2026-04-20 11:11:01 -04:00
Allen Pestaluky 0810756a9f Add HDR output support to Vulkan on macOS.
Co-authored-by: Josh Jones <kilauea.jones@gmail.com>
Co-authored-by: Stuart Carnie <stuart.carnie@gmail.com>
2026-04-06 11:11:18 -04:00
Allen Pestaluky f9145cbc72 Add HDR events for Wayland and Apple display servers
Co-authored-by: ArchercatNEO <tururu.pompella@gmail.com>
2026-04-02 12:50:38 -04:00
Rémi Verschelde 98868393cc Style: Enforce #include validation hook 2026-03-18 10:41:59 +01:00
Rémi Verschelde 727b06a79f Move ProcessID typedef out of OS
This allows decoupling a number of files from `os.h`.
2026-03-04 15:00:45 +01:00
Rémi Verschelde a447ac95ec Move DisplayServer enums and typedefs to DisplayServerEnums
This will allow decoupling `display_server.h` from a number of headers in the
codebase which only require those enums and not all the DisplayServer API.
2026-03-03 12:44:02 +01:00
Stuart Carnie d5504ffc69 feat: Add EDR support to Metal and all Apple platforms 2026-02-27 05:23:56 +11:00
Rémi Verschelde ad4b910a10 Minimize include dependencies of display_server.h
- Removes `native_menu.h` dependency from `display_server.h`.
  It's now forward-declared in all DisplayServer implementations and should
  be included in the .cpp's.
- Removes some unused `rb_set.h` and `rb_map.h` dependencies, which leads to
  having to include them explicitly in half the scene and editor codebase...
  which shows how much we depend on `display_server.h`.
- Forward-declare `input_event.h`, so now we need only `keyboard.h`.
2026-02-17 19:45:31 +01:00
Stuart Carnie b815c88dec Metal: Refactor for future Metal 4, switch to C++; fix dynamic uniforms 2026-02-06 07:07:10 +11:00
Dario 542f8ddf22 Fix fallback to OpenGL3 from Vulkan initialization on Android. 2026-01-14 23:55:21 -03:00
Hugo Locurcio 6de36fe6b2 Silence warnings about DisplayServer icons on iOS and visionOS
Setting window icons is not supported on iOS or visionOS,
but there is no concept of window icons on those platforms anyway.
2025-11-18 23:33:13 +01:00
Pāvels Nadtočajevs 281c74550a Make utterance_id 64-bit. 2025-11-07 10:21:20 +02:00
Ricardo Sanchez-Saez 038f5934e7 [Apple embedded] Adopt SwiftUI lifecycle for Apple embedded platforms
- Introduces a SCons builder for Swift files
- Increases the minimum deployment targets to iOS 14.0, and visionOS 26.0.
- Replaces manually UIWindow management by a SwiftUI instantiated app.
2025-09-22 18:20:04 -07:00
Talkashie bc7e68dfd1 Typos 2025-08-19 18:32:59 -05:00
Travis Lange d4b7222ca0 fixed screen_orientation not being assigned on ios 2025-08-09 20:46:17 -04:00
Youngmin Koo fd4d5cc77f iOS: Prevent startup crash with Input singleton null check 2025-06-05 00:34:04 +09:00
Pāvels Nadtočajevs 2d93e004b9 Cleanup and unify DisplayServer screen methods and documentation. 2025-06-02 08:03:48 +03:00
Ricardo Sanchez-Saez 47971c0a27 Introduce 'visionos' platform derived from 'apple_embedded' 2025-05-19 15:47:01 -07:00
Ricardo Sanchez-Saez 457299449d Introduce 'drivers/apple_embedded' abstract platform for code reuse 2025-05-19 15:37:13 -07:00