Commit Graph

228 Commits

Author SHA1 Message Date
a0dbdcc3ab Replace find with contains/has where applicable
* Replaces `find(...) != -1` with `contains` for `String`
* Replaces `find(...) == -1` with `!contains` for `String`
* Replaces `find(...) != -1` with `has` for containers
* Replaces `find(...) == -1` with `!has` for containers
2024-05-08 12:37:42 +02:00
955d5affa8 Reduce and prevent unnecessary random-access to List
Random-access access to `List` when iterating is `O(n^2)` (`O(n)` when
accessing a single element)

* Removed subscript operator, in favor of a more explicit `get`
* Added conversion from `Iterator` to `ConstIterator`
* Remade existing operations into other solutions when applicable
2024-05-04 16:08:55 +02:00
789c6ebdfd Implement amplitude to Input.vibrate_handheld
Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>
Co-authored-by: m4gr3d <m4gr3d@users.noreply.github.com>
2024-05-02 19:09:42 +03:00
1f303e0019 Merge pull request #89790 from bruvzg/ios_safe_delete
[iOS Export] Check directory content before deleting old export leftovers.
2024-04-29 13:00:30 +02:00
947f5a8741 Merge pull request #91247 from AThousandShips/callable_fix
Fix unsafe uses of `Callable.is_null()`
2024-04-29 10:10:32 +02:00
dee1231ce6 Merge pull request #91220 from Repiteo/scons/colorize-warn-error
SCons: Colorize warnings/errors during generation
2024-04-29 10:10:16 +02:00
bdeed8e750 Merge pull request #90375 from bruvzg/ios_privacy
[iOS export] Add support for privacy manifest configuration.
2024-04-29 10:09:38 +02:00
e0e8ce1fc0 SCons: Colorize warnings/errors during generation 2024-04-28 16:24:48 -05:00
31e7ee63f2 Fix unsafe uses of Callable.is_null()
`Callable.is_null()` is not equivalent to `!Callable.is_valid()` and
doesn't guarantee the call is valid.
2024-04-27 16:22:57 +02:00
7f52e5bd44 [iOS] Fix sensors orientation. 2024-04-23 12:59:24 +03: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
7446826ab9 [iOS export] Add support for privacy manifest configuration. 2024-04-16 12:10:12 +03:00
3ea7dec7d3 Fix the initialization order for the iOS driver
The problem is that we were initializating the main loop (SceneTree)
when we were supposed to just set it.  Which would cascade into a
series of issues, including having the EditorNode being flagged as
"inside_tree" and having a tree, before it was supposed to.

This meant that some code would assume it was fully initialized, when
it was not.   And this manifested as the project not being scanned for
resources, which meant that during the importing, the resources would
not match using the uid path, and produce lots of errors.

One line fix
2024-04-13 11:18:53 +02:00
e73f40e260 Merge pull request #87117 from DmitriySalnikov/rename_pdb
Add renaming of PDB files to avoid blocking them
2024-04-11 11:02:31 +02:00
a057158d75 Revert pack trimming introduced by #82084 2024-04-10 12:00:04 +02:00
bf558adcdd [.NET] Disable output embedding on macOS, move it to the advanced options on other platforms. 2024-04-09 17:47:39 +03:00
328b00774b Use [codeblock lang=text] more often in class ref 2024-04-08 16:17:50 +02:00
30babfc789 [iOS Export] Fix adding static libs to the Xcode project. 2024-04-08 11:55:59 +03:00
b73e740786 Add renaming of PDB files to avoid blocking them 2024-04-05 00:14:23 +03:00
b0cda1f85f Core: Use fixed-width integer types in Variant 2024-04-04 08:54:11 -05:00
dc01658ee9 [DisplayServer] Add separate feature flags for different native dialog types. 2024-03-26 15:18:06 +02:00
a277361321 Merge pull request #89594 from LeonardoDemartino/ios_airpods_routing
iOS: Fix AirPods routing when Play and Record category is used.
2024-03-24 01:18:51 +01:00
f49efbe0e5 Merge pull request #89229 from akien-mga/main-refactor-os-exit-code
Refactor OS exit code to be `EXIT_SUCCESS` by default
2024-03-24 01:15:06 +01:00
b3043674f6 [iOS Export] Check directory content before deleting old export leftovers. 2024-03-22 23:45:54 +02:00
3bdbf90f49 Fix AirPods routing when Play and Record category is used. 2024-03-17 02:39:16 -03:00
9834733f6f [iOS] Disable PCRE2 JIT. 2024-03-15 10:24:08 +02:00
3b3e2374c9 clang-tidy: Enforce modernize-use-nullptr 2024-03-12 10:59:53 -05:00
0475011c66 Merge pull request #82084 from ogapo/pr/pck-cache-merge
Merge `uid_cache.bin` and `global_script_class_cache.cfg` after mounting PCKs
2024-03-11 14:01:16 +01:00
810f127022 Merge pull request #89365 from Repiteo/scons/run_in_subprocess-to-env.Run
SCons: Convert remaining `run_in_subprocess` to `env.Run`
2024-03-10 21:13:22 +01:00
8116d70d4b SCons: Convert remaining run_in_subprocess to env.Run 2024-03-10 14:01:23 -05:00
2cd4a4e7e2 [iOS] Restore backward compatibility with old export templates. 2024-03-10 11:04:26 +02:00
023dcd44c1 Refactor OS exit code to be EXIT_SUCCESS by default
- `Main::setup` early exits (failure or `--help`/`--version`) now
  consistently return `EXIT_FAILURE` or `EXIT_SUCCESS` on all platforms,
  instead of 255 on some and a Godot Error code on others.
- `Main::start` now returns the exit code, simplifying the handling of early
  failures.
- `Main::iteration` needs to explicit set the exit code in OS if it errors
  out.
- Web and iOS now properly return `OS::get_exit_code()` instead of 0.
2024-03-08 23:31:24 +01:00
5e6adb4a2d Merge uid_cache.bin and global_script_class_cache.cfg after mounting PCKs
fixes godotengine#82061
fixes godotengine#61556

Also, distinguish between main pack and DLC packs.
It's desirable to downloaded content to be as small as possible. This change avoids bloating non-main pack files with new versions of resources that are all read on startup and never used again. They have no effect if loaded after startup.
- project.godot/project.binary file
- extension_list.cfg
- app icon and boot_splash
- .ico and .icns files (these can still be opted in for DLC by listing them explicitly in the include filter)
2024-03-06 12:14:21 -05:00
c65a667924 Move global_menu_* methods to a separate NativeMenu class. 2024-03-04 23:41:41 +02:00
d5a3a9aea6 Fix low volume sound output on iOS when Play and Record category is used. 2024-02-29 08:54:55 -03:00
fc49964de4 Fix crash on documentation generation on macOS. 2024-02-19 13:42:27 +02:00
033821c595 Merge pull request #88245 from shana/simplify-mono-support-detection
C#: Let platforms signal if they support the mono module or not
2024-02-19 00:08:07 +01:00
e697774f61 Merge pull request #87823 from KoBeWi/ban_adb
Don't invoke adb with no runnable Android preset
2024-02-17 15:54:49 +01:00
343bfb112f Don't invoke adb with no runnable Android preset 2024-02-15 22:37:32 +01:00
ef5d6ccfb7 Merge pull request #86966 from Muller-Castro/value2ref-core
Add const lvalue ref to `core/*` container parameters
2024-02-15 15:44:43 +01:00
633dcf6dfd SCons: "Environment" to "SConsEnvironment" 2024-02-14 09:26:47 -06:00
a8bc9f3e78 Add const lvalue ref to core/* container parameters 2024-02-14 11:20:36 -03:00
3a2fb42838 Merge pull request #85100 from ztc0611/fix-ios-focus-mainloop-notifs
Enhance mobile suspend MainLoop notifications
2024-02-14 14:07:54 +01:00
21e524a798 C#: Let platforms signal if they support it or not
Instead of hardcoding platform names that support C#, let platforms
set a flag indicating if they support it. All public platforms
except web already support it, and it's a pain to maintain a patch
for this list just to add additional names of proprietary console
platforms.

This makes adding new platforms or variants or existing platforms
much easier, as the platform can signal what it supports/doesn't
support directly, and we can avoid harcoding platform names.
2024-02-13 22:48:43 +01:00
ee53ae28df Add method to get "base" system UI color (macOS/Windows) and system theme change callback. 2024-02-13 18:38:53 +02:00
b50001ecfe Merge pull request #87999 from bruvzg/metal_layer
[macOS / iOS] Switch Vulkan init to `VK_EXT_metal_surface` extension.
2024-02-13 17:24:15 +01:00
ae603f2dc6 Merge pull request #87908 from bruvzg/mac_gen_plist
[macOS] Generate min. `Info.plist` for frameworks if it's missing. Validate framework bundle ID characters.
2024-02-13 17:24:07 +01:00
f458943455 [macOS / iOS] Switch Vulkan init to VK_EXT_metal_surface extension. 2024-02-13 16:57:02 +02:00
94238d0462 [iOS/macOS] Add option to automatically build (and sign / archive) bundles. 2024-02-13 16:36:41 +02:00