1
0
Fork 0
Commit Graph

680 Commits

Author SHA1 Message Date
Thaddeus Crews 12b97c250d
Merge pull request #104907 from bruvzg/scr_ids
Cleanup and unify `DisplayServer` screen methods and documentation.
2025-06-02 18:51:45 -05:00
Mikael Hermansson 6929823838 Fix various race conditions with capturing of script backtraces 2025-06-02 19:46:19 +02:00
kobewi b41d6ecf8c Allow to override editor settings per project 2025-06-02 17:51:26 +02:00
Pāvels Nadtočajevs 2d93e004b9
Cleanup and unify `DisplayServer` screen methods and documentation. 2025-06-02 08:03:48 +03:00
Pāvels Nadtočajevs 798a644dd5
[macOS] Fix borderless window maximization. 2025-05-30 00:13:53 +03:00
Dario 5a30a7e7cd Add shader baker to project exporter.
Metal Support contributed by Migeran (https://migeran.com) and Stuart Carnie.

Co-authored-by: Stuart Carnie <stuart.carnie@gmail.com>
Co-authored-by: Gergely Kis <gergely.kis@migeran.com>
2025-05-27 12:45:27 -03:00
Lukas Tenbrink 4cb8a0c77e Add `resize_initialized` and `resize_uninitialized` to `Vector`. These functions serve as replacements for `resize`, to make sure the caller understands whether elements need to be initialized 'by hand' after the call. 2025-05-26 18:35:41 +02:00
Pāvels Nadtočajevs d609cf62a0
Implement `get_filesystem_type` on macOS and Linux. 2025-05-23 23:05:06 +03:00
Pāvels Nadtočajevs ffc948c6c4
Fix `GodotApplicationDelegate` init. 2025-05-21 13:49:07 +03:00
Rémi Verschelde 25a3c27c41
Merge pull request #105628 from rsanchezsaez/apple/ios-visionos-4.5
Native visionOS platform support
2025-05-20 23:09:07 +02:00
Stuart Carnie aae3370fcd macOS: Support vsync when embedding OpenGL processes
Closes #106379
2025-05-20 09:39:13 +10:00
Ricardo Sanchez-Saez 457299449d
Introduce 'drivers/apple_embedded' abstract platform for code reuse 2025-05-19 15:37:13 -07:00
Stuart Carnie c58078ba42 macOS: Ensure LayerHost size is set when first embedded
Closes #106431
2025-05-18 08:36:29 +10:00
Stuart Carnie 9a631d1e45 macOS: Send initial modifier keys as input events
This ensures if a user is holding SHIFT or OPTION to perform a modified
action, it is correctly handled by the application.

Examples include SHIFT+Click to add to the selection.
2025-05-15 16:58:49 +10:00
Thaddeus Crews 428a762e98
Merge pull request #106367 from stuartcarnie/sgc_fix_embedded_crash
macOS: Fix a crash if no input event is set for a specific window
2025-05-14 09:44:17 -05:00
Thaddeus Crews ae68a216b9
Merge pull request #106383 from bruvzg/macos_isdef
Fix macOS build with `dev_build=yes` and `target=template_debug`
2025-05-14 09:44:12 -05:00
Thaddeus Crews ffb7358232
Merge pull request #105673 from bruvzg/macos_close_fs
[macOS] Fix close button hidden and title bar transparent in fullscreen mode.
2025-05-14 09:44:07 -05:00
Pāvels Nadtočajevs dfb2bc5f7e
Fix macOS build with dev_build=yes and target=template_debug 2025-05-14 09:47:51 +03:00
Thaddeus Crews aad8f57f95
Merge pull request #106355 from bruvzg/mac_emb_trans
[macOS] Fix transparent window state detection for embedded process.
2025-05-13 16:22:30 -05:00
Stuart Carnie 19dcd7162b macOS: Fix a crash if no input event is set for a specific window 2025-05-14 06:57:56 +10:00
Pāvels Nadtočajevs 887fa78fc1
[macOS] Fix transparent window state detection for embedded process. 2025-05-13 17:09:51 +03:00
Pāvels Nadtočajevs ddefe73c41
[macOS] Fix embedded window position when host control is moved, but not resized. 2025-05-13 14:17:45 +03:00
Rémi Verschelde af62a09b42
Merge pull request #106348 from akien-mga/macos-fix-template_debug-build
macOS: Fix `template_debug` build after #105884
2025-05-13 12:49:11 +02:00
Rémi Verschelde 3e2c064302
macOS: Fix `template_debug` build after #105884 2025-05-13 12:42:13 +02:00
Pāvels Nadtočajevs 6a118b5027
Draw checkerboard (or clear color) under embedded window. 2025-05-13 13:16:22 +03:00
Rémi Verschelde c0ebba60de
Merge pull request #106166 from stuartcarnie/macos_embed_fixes
macOS: Embedded window fixes
2025-05-13 12:11:35 +02:00
Stuart Carnie 544ab4ccab macOS: Process first click event without requiring focus
This improves the user experience for macOS users, to be consistent with
other macOS applications. When a Godot window is not focused, and the
user clicks on the window, the event is forwarded to the receiving
control to be processed as if the window was already focused.
2025-05-13 05:21:51 +10:00
Stuart Carnie f658161619 macOS: Embedded window can be dismissed by clicking close
- Installed a SIGINT handler to terminate the application gracefully.
- Handle varying display scaling
2025-05-12 07:09:42 +10:00
Thaddeus Crews 872ca1b3c9
Merge pull request #106139 from akien-mga/crash-handler-backtrace-print
Improve script backtrace print in crash handlers
2025-05-07 12:48:25 -05:00
Rémi Verschelde a6398d71a3
Improve script backtrace print in crash handlers
Also fix the editor crash handler message for bug reports not properly
using the `.editor` override.
2025-05-07 09:52:50 +02:00
Stuart Carnie 9290adee38 MacOS: Additional improvements and fixes for embedded window support 2025-05-07 06:11:05 +10:00
Thaddeus Crews 4cb030d6bf
Merge pull request #106089 from mihe/rogue-newlines
Fix empty lines being added for errors with no script backtrace
2025-05-06 08:38:04 -05:00
Thaddeus Crews aa24e3b671
Merge pull request #105884 from stuartcarnie/macos_embedded
macOS: Embedded window support.
2025-05-06 08:37:59 -05:00
Stuart Carnie 00e1fdec2c MacOS: Embedded window support. 2025-05-06 06:09:05 +10:00
Thaddeus Crews c40c56b406
Merge pull request #105822 from bruvzg/mm_update_enter
[macOS] Update entered state from `mouseMoved`.
2025-05-05 11:24:15 -05:00
Mikael Hermansson 31b90246e7 Fix empty lines being added for errors with no script backtrace 2025-05-05 13:27:21 +02:00
Thaddeus Crews 01fc9aee6c
Core: Modernize C headers with C++ equivalents 2025-05-02 08:23:01 -05:00
Adam Scott 1fbc0c5631
[Buildsystem] Add `EnumVariable(ignorecase=2)` 2025-04-29 13:35:40 -04:00
Thaddeus Crews 4104931e4a
Merge pull request #105804 from bruvzg/tb_crash
[macOS] Fix touch bar observer crash.
2025-04-27 19:21:25 -05:00
Thaddeus Crews 1a2a1b07df
Merge pull request #105799 from Repiteo/scons/enum-conversion-warnings
SCons: Add enum conversion warning
2025-04-27 19:21:23 -05:00
Thaddeus Crews 3947cbe3b2
Merge pull request #104386 from Repiteo/core/cpp-math
Core: Replace C math headers with C++ equivalents
2025-04-27 19:21:22 -05:00
Pāvels Nadtočajevs 152423230c
[macOS] Update entered state from `mouseMoved`. 2025-04-27 16:00:28 +03:00
Pāvels Nadtočajevs 4450594fb5
[macOS] Fix touch bar observer crash. 2025-04-26 23:29:07 +03:00
Thaddeus Crews dc9c34f0c6
SCons: Add enum conversion warning 2025-04-26 12:06:20 -05:00
Thaddeus Crews 60726563c9
Merge pull request #105621 from Repiteo/scons/begin-decouple
SCons: Begin decoupling generation & build code
2025-04-25 11:36:04 -05:00
Thaddeus Crews 5c9f93ce03
SCons: Begin decoupling generation & build code 2025-04-25 08:23:01 -05:00
Pāvels Nadtočajevs e61edcadb8
Print script backtrace in the crash handler. 2025-04-25 09:15:20 +03:00
Thaddeus Crews 28089c40c1
Merge pull request #91006 from reduz/live-backtrace
Ability to print and log script backtraces
2025-04-24 17:18:52 -05:00
reduz d1dcb40d56 Ability to print and log script backtraces
Co-authored-by: Mikael Hermansson <mikael@hermansson.io>
2025-04-24 18:54:41 +02:00
Thaddeus Crews 240cf0d60a
Merge pull request #105709 from bruvzg/angle_no_vlk
Fix macOS build with ANGLE enabled and Vulkan disabled.
2025-04-24 09:09:28 -05:00
Pāvels Nadtočajevs e096e2fa8a
Fix macOS build with ANGLE enabled and Vulkan disabled. 2025-04-24 15:57:13 +03:00
Pāvels Nadtočajevs e6d3cf63fb
[ColorPicker, macOS] Add link to request required screen recording permission. 2025-04-23 22:25:10 +03:00
Pāvels Nadtočajevs e45dd45156
[macOS] Fix close button hidden and title bar transparent in fullscreen mode. 2025-04-23 08:13:33 +03:00
Thaddeus Crews ad40939b6f
Core: Replace C math headers with C++ equivalents
- Minor restructuring to ensure `math_funcs.h` is the central point for math functions
2025-04-16 15:49:02 -05:00
Thaddeus Crews 0d267e7b1e
Core: Add dedicated `BitField` template 2025-04-11 11:53:26 -05:00
Thaddeus Crews 0964badc05
Merge pull request #105210 from nikitalita/gdsoftclass-fa-da
Add GDSOFTCLASS to FileAccess and DirAccess derived classes
2025-04-11 09:51:08 -05:00
Thaddeus Crews cad0cd94ef
Merge pull request #105225 from bruvzg/ds_gdsoft
Change `DisplayServerMacOS` from `GDCLASS` to `GDSOFTCLASS`. Add `GDSOFTCLASS` to other display servers.
2025-04-10 16:53:42 -05:00
Thaddeus Crews cade15a163
Merge pull request #92475 from AThousandShips/string_replace_char
Add `String::replace_char(s)` methods for performance and convenience
2025-04-10 10:18:16 -05:00
Thaddeus Crews fc1dbda769
Merge pull request #105164 from stuartcarnie/apple_pthread
Apple: Add pthread implementation of `Thread` class
2025-04-10 10:18:12 -05:00
A Thousand Ships 889410dcda
Add `String::replace_char(s)` methods for performance and convenience 2025-04-10 13:08:45 +02:00
Pāvels Nadtočajevs 0497522933
Change `DisplayServerMacOS` from `GDCLASS` to `GDSOFTCLASS`. Add `GDSOFTCLASS` to other display servers. 2025-04-10 09:18:58 +03:00
Stuart Carnie 8c8d6de3e7 Apple: Add pthread implementation of `Thread` class
This allows Apple platforms to override the default stack size of
a thread in the WorkerThreadPool, which is 512KiB by default.

This must be increased, as SPIRV-Cross, used by the Metal driver, can
use deeply nested stacks, as can debug builds.
2025-04-10 09:35:40 +10:00
nikitalita 2d0ae77719 add GDSOFTCLASS to FileAccess and DirAccess derived classes 2025-04-09 11:52:50 -07:00
Thaddeus Crews a8598cd8e2
Merge pull request #71542 from bruvzg/export_project_settings
[Export] Use project settings overrides with the target preset features instead of current platform features.
2025-04-09 08:51:47 -05:00
Thaddeus Crews 4362b11557
Merge pull request #103405 from van800/shakhov/macosx
Fix `.sln` project generation logic for Rider to support all OS and all C++ toolchains
2025-04-09 08:51:45 -05:00
bruvzg c6739f64df
[Export] Use project settings overrides with the target preset features instead of current platform features. 2025-04-08 21:22:37 +03:00
Thaddeus Crews e6a61b1ecc
Merge pull request #76829 from bruvzg/ac_kit_direct
Implement screen reader support using AccessKit library.
2025-04-08 12:32:47 -05:00
Pāvels Nadtočajevs 4310cb82b8
AccessKit integration for macOS, Linux, and Windows. 2025-04-08 20:25:47 +03:00
Ivan Shakhov 6ff86e49cf Fix .sln project generation logic for Rider to support all OS and all C++ toolchains
Co-authored-by: Andreia Gaita <shana@spoiledcat.net>
Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2025-04-08 15:40:05 +02:00
Pāvels Nadtočajevs f37fb49739
Add separate `minimize_disabled` and `maximize_disabled` window flags. 2025-04-07 18:58:11 +03:00
Thaddeus Crews 6bd249a4c2
Merge pull request #104850 from Repiteo/core/warning-macros
Core: Integrate warning suppression macro helpers
2025-04-03 16:50:22 -05:00
Pāvels Nadtočajevs 65129d2aa2
[macOS] Fix native menu submenu items have wrong action and accelerators set. 2025-04-03 18:47:23 +03:00
Thaddeus Crews 207a2b6472
Core: Integrate warning suppression macro helpers 2025-04-03 10:13:46 -05:00
Thaddeus Crews 1f56d96cf2
Merge pull request #104893 from Repiteo/scons/external-includes-alt
SCons: Add `CPPEXTPATH` for external includes
2025-04-02 07:48:03 -05:00
Thaddeus Crews f25fc34439
SCons: Add `CPPEXTPATH` for external includes 2025-04-02 07:29:08 -05:00
Pāvels Nadtočajevs 4638ade13f
Enable TTS on demand, instead of fully disabling it when project setting is not set. 2025-04-01 15:24:46 +03:00
Kiro 23129a66ed Replace append_utfx with direct String::utfx 2025-03-30 19:56:38 +02:00
Thaddeus Crews 780cf03051
Merge pull request #104556 from Ivorforce/string-extend-instead-of-parse
Use `append_` instead of `parse_` for `String` methods.
2025-03-29 10:16:33 -05:00
Rémi Verschelde 0419c92705
Merge pull request #104644 from bruvzg/macos_sync_mb
[macOS] Release keys and regenerate mouse events after native popup menu tracking.
2025-03-28 14:33:34 +01:00
Lukas Tenbrink ffa6ef220b Use `append_` instead of `parse_` for `String` methods. 2025-03-27 17:51:02 +01:00
Pāvels Nadtočajevs 5665e55f9a
[macOS] Fix running with `DisplayServerHeadless`. 2025-03-27 15:08:07 +02:00
Pāvels Nadtočajevs d1edf66a13
[macOS] Release keys and regenerate mouse events after native popup menu tracking. 2025-03-26 12:18:55 +02:00
Pāvels Nadtočajevs 698ff2a192
[macOS] Fix cleanup with some command line tools. 2025-03-25 18:41:20 +02:00
Thaddeus Crews c3ecb72c3a
Merge pull request #104397 from bruvzg/mac_main_loop
[macOS] Replace custom main loop with `[NSApp run]` and `CFRunLoop` observer.
2025-03-25 11:09:02 -05:00
Thaddeus Crews d35e22ff22
Merge pull request #104415 from zlago/patch-1
Export: Change unportable `echo` in the Linux/macOS debug launcher script
2025-03-24 10:00:57 -05:00
Pāvels Nadtočajevs a317ce75a6
[macOS] Replace custom main loop with `[NSApp run]` and `CFRunLoop` observer. 2025-03-24 10:31:16 +02:00
Thaddeus Crews f09ee0171a
Style: Begin integrating simple `.clangd` fixes 2025-03-22 13:24:35 -05:00
zlago 7e0ede1a16 change unportable `echo` in the linux/macos debug launcher script
`-n` and `-e` are not guaranteed to be supported by posix `echo`
2025-03-21 17:31:37 +01:00
Rémi Verschelde 0648f55276
Merge pull request #104328 from Grublady/popup-mouse-enter
Update mouse-entered state when subwindow closes (macOS display server)
2025-03-19 12:27:30 +01:00
Rémi Verschelde 2fa721b1bc
Merge pull request #104127 from Ivorforce/360-noclip
Remove `String` clipping constructors.
2025-03-19 12:27:10 +01:00
Pāvels Nadtočajevs f6891b0305
[DisplayServer] Decouple `show_window(MAIN_WINDOW_ID)` from `DisplayServer` constructor, update project manager size/position after DS init. 2025-03-19 11:23:04 +02:00
Thaddeus Crews 89a2f3634c
Merge pull request #103857 from bruvzg/macos_trans_b
[macOS] Enable transparency for windows with decorations.
2025-03-18 14:42:54 -05:00
Thaddeus Crews d6aef7a1ba
Merge pull request #103872 from bruvzg/mac_f_lk
[macOS/iOS] Fix system font family descriptor leak.
2025-03-18 14:42:53 -05:00
Grublady f3c54c1a32 Update mouse-entered state when subwindow closes (macOS display server) 2025-03-18 15:25:03 -04:00
Thaddeus Crews 83cf424b5f
SCons: Expand `NoCache` coverage 2025-03-18 09:54:55 -05:00
Lukas Tenbrink a23f630781 Remove `String` clipping constructors.
Callers should instead call constructors with explicit encoding names, with known length `Span`.
2025-03-15 12:34:44 +01:00
Thaddeus Crews c1b7865ae9
Merge pull request #103557 from aaronfranke/godot-version-defines
Rename version defines to `GODOT_VERSION_*` to match GDExtension godot-cpp
2025-03-13 08:57:42 -05:00
Thaddeus Crews 6e5ec1920a
Merge pull request #103788 from Grublady/mac_mouse_tracking
Fix macOS mouse tracking in tooltip popups
2025-03-13 08:57:34 -05:00
Aaron Franke 97ee05e9b7
Rename version defines to GODOT_VERSION_* to match GDExtension godot-cpp 2025-03-12 11:11:38 -07:00
Thaddeus Crews a5acf1dc81
Merge pull request #101174 from Repiteo/style/objc-import-syntax
Style: Standardize Obj-C `#import` syntax
2025-03-10 10:01:02 -05:00