Commit Graph

77 Commits

Author SHA1 Message Date
c3747884da Add some important profiling hooks. 2025-11-08 00:08:48 +01:00
e80194e31f Add profiler option to SCons builds.
Add `tracy` option to `profiler`. If set, a tracy profiling client will be injected into the Godot binary.

# Conflicts:
#	platform/linuxbsd/godot_linuxbsd.cpp
2025-11-08 00:08:45 +01:00
546ead2abd Merge pull request #109795 from bruvzg/mac_reg_policy
[macOS] Always use "Regular" activation policy for GUI, and headless main loop for command line only tools.
2025-10-07 13:06:56 +02:00
5935a32e32 Core: Cleanup headers in core/config
- `MainLoop` now forward-declared in `OS`
2025-10-06 09:20:56 -05:00
ead282ff13 Remove file_access.h and script_backtrace.h includes from logger.h. 2025-10-05 17:49:23 +09:00
1c59038555 Change macos.permission.RECORD_SCREEN version check from 10.15 to 11.0. 2025-09-26 19:25:49 +03:00
326b22124a Merge pull request #108794 from bruvzg/macos_actool_export
[macOS] Add support for exporting macOS 26 Liquid Glass icons.
2025-09-20 13:41:38 -05:00
b9bafbd2ca [macOS] Process joypad input directly in the embedded process. 2025-08-29 13:40:56 +03:00
6e76a9467f [macOS] Always use "Regular" activation policy for GUI, and headless main loop for command line only tools. 2025-08-20 10:07:33 +03:00
838cb0eefc [macOS] Add support for exporting macOS 26 Liquid Glass icons. 2025-07-28 14:35:48 +03:00
09a9024658 [macOS] Add Tahoe 26.0 to version alias 2025-07-25 14:25:52 -04:00
8b045ca8fe [macOS] Do not use NSApplication main loop for headless mode. 2025-07-17 08:42:55 +03:00
0b3496fb4f Add support for SDL3 joystick input driver
Made possible by EIREXE, xsellier and the SDL team.

This commit includes statically linked SDL3 for Windows, Linux and macOS.
The vendored copy of SDL3 was setup to only build the required subsystems
for gamepad/joystick support, with some patches to be able to make it as
minimal as possible and reduce the impact on binary size and code size.

Co-authored-by: Álex Román Núñez <eirexe123@gmail.com>
Co-authored-by: Xavier Sellier <xsellier@gmail.com>
Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2025-06-25 01:28:50 +02:00
939f29f6d5 Apple: Improve reliability of Apple Embedded build and deployment 2025-06-19 06:33:08 +10:00
dfb11f8cea [macOS] Add --path argument when instance is created by project started from editor. 2025-06-13 10:22:31 +03:00
bb9d6d0d02 Merge pull request #107113 from mihe/macos-open-in-program
Add `OS::open_with_program` for opening files/directories with a specific program on macOS
2025-06-05 13:13:49 +02:00
f610c81943 Add OS::open_with_program for opening files/directories with a specific program on macOS
Co-authored-by: bruvzg <7645683+bruvzg@users.noreply.github.com>
2025-06-05 10:12:01 +02:00
98f377d9d0 Use system timer/wait functions for frame delay when screen reader is active. 2025-06-04 13:44:02 +03:00
ee181951b6 [macOS] Add support for loading shell environment from UI apps. 2025-06-03 18:27:29 +03:00
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
00e1fdec2c MacOS: Embedded window support. 2025-05-06 06:09:05 +10:00
e6d3cf63fb [ColorPicker, macOS] Add link to request required screen recording permission. 2025-04-23 22:25:10 +03:00
889410dcda Add String::replace_char(s) methods for performance and convenience 2025-04-10 13:08:45 +02:00
23129a66ed Replace append_utfx with direct String::utfx 2025-03-30 19:56:38 +02:00
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
ffa6ef220b Use append_ instead of parse_ for String methods. 2025-03-27 17:51:02 +01:00
5665e55f9a [macOS] Fix running with DisplayServerHeadless. 2025-03-27 15:08:07 +02:00
698ff2a192 [macOS] Fix cleanup with some command line tools. 2025-03-25 18:41:20 +02:00
a317ce75a6 [macOS] Replace custom main loop with [NSApp run] and CFRunLoop observer. 2025-03-24 10:31:16 +02:00
2fa721b1bc Merge pull request #104127 from Ivorforce/360-noclip
Remove `String` clipping constructors.
2025-03-19 12:27:10 +01:00
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
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
97ee05e9b7 Rename version defines to GODOT_VERSION_* to match GDExtension godot-cpp 2025-03-12 11:11:38 -07:00
c5dcecc6f7 [macOS/iOS] Fix system font family descriptor leak. 2025-03-09 20:57:57 +02:00
713a1ba554 Style: Standardize Obj-C #import syntax 2025-03-08 09:28:34 -06:00
cd17cb0110 [macos, ios]: Refactor joypad support into shared code, numerous bugfixes 2025-01-08 07:00:23 -07:00
928982891e Add OS.get_version_alias() to return a human-readable Windows/macOS version number
Windows 11's major version number is actually 10.x.x, which can be confusing
if you don't know about this quirk. `OS.get_version_alias()` avoids this
by displaying the "branding" version number and the build number as a suffix,
so that individual updates can still be distinguished from each other.

On macOS, `OS.get_version_alias()` returns the version number prepended
with the version name (e.g. Sequoia for macOS 15).

On other operating systems, this returns the same value as `OS.get_version()`.
2024-12-14 18:47:50 +01:00
156bc92282 Merge pull request #98397 from adamscott/add-tmp-support
Add temp utilities (alias `OS::get_temp_dir()`, `FileAccess::create_temp()`, and `DirAccess::create_temp()`)
2024-12-03 14:40:59 -06:00
a135a6478a Merge pull request #98383 from RandomShaper/deprecate_unsafe_th_rend
Deprecate the pointless unsafe threading model for rendering
2024-12-03 14:40:56 -06:00
1b3e483899 Add file and dir temporary utilities
Co-authored by @Alex2782 for the Android bindings.
Many thanks to the reviewers also.

Co-authored-by: Alex <alex.hart.278@gmail.com>
2024-12-02 12:08:14 -05:00
a46ea9d064 Deprecate the pointless unsafe threading model for rendering 2024-11-14 10:43:29 +01:00
a6dfd1cf6e Implement get_model_name on macOS and Windows. 2024-11-12 10:34:24 +02:00
8d039146d9 [macOS] Fix dynamic library lookup for system libraries. 2024-09-14 18:22:36 +03:00
9949d5a089 [macOS] Remove kill override. 2024-08-08 21:39:00 +03:00
393741a7e2 [macOS] Attempt to terminate process normally before using forceTerminate. 2024-08-06 12:45:56 +03:00
1dfcbccfe6 [macOS] Fix is_process_running and kill for bundled apps. 2024-07-31 16:54:53 +02:00
764de7fe31 Collapse the gdextension arguments into the GDExtensionData struct
This is used to reduce the number of arguments to `OS::open_dynamic_library(...)`.
2024-04-19 07:56:02 -07:00
ede88cf59d Fix loading GDExtension dependencies on Android 2024-04-19 07:55:08 -07:00
b73e740786 Add renaming of PDB files to avoid blocking them 2024-04-05 00:14:23 +03:00
3b3e2374c9 clang-tidy: Enforce modernize-use-nullptr 2024-03-12 10:59:53 -05:00