1
0
Fork 0
Commit Graph

7101 Commits

Author SHA1 Message Date
Rémi Verschelde 6b14aa07ae
Merge pull request #75950 from pkowal1982/icon
Export: Modify template without rcedit
2025-06-05 17:24:32 +02:00
Rémi Verschelde 5904f4f2d4
SCons: Fix support for compiling .S files on Windows/MinGW 2025-06-05 15:53:10 +02:00
Rémi Verschelde 445a51834e
Merge pull request #107136 from Airyzz/airyzz/web-pen-pressure
[Web] Add support for pen pressure
2025-06-05 13:14:00 +02:00
Rémi Verschelde 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
Rémi Verschelde 8d14f8332f
Merge pull request #105343 from bruvzg/ac_wait_loop_timer
[Accessibility] Use system timer/wait functions for frame delay when screen reader is active.
2025-06-05 13:10:54 +02:00
unknown 6f071a8054 Export: Modify template without rcedit 2025-06-05 13:05:45 +02:00
Airyzz 5f8f0ac305 [web] add support for pen pressure 2025-06-05 18:04:37 +09:30
Mikael Hermansson 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
Pāvels Nadtočajevs 09727b29c3
[macOS] Fix clipboard and TTS not working in embedded game mode. 2025-06-05 11:06:04 +03:00
Adam Scott 64b0d5c1c2
[Web] Add required exported functions and runtime methods for emscripten 2025-06-04 09:53:05 -04:00
Pāvels Nadtočajevs 98f377d9d0
Use system timer/wait functions for frame delay when screen reader is active. 2025-06-04 13:44:02 +03:00
Thaddeus Crews bdc8ef3325
Merge pull request #81266 from bruvzg/mac_shell_env
[macOS] Add support for loading shell environment from UI apps.
2025-06-03 15:30:27 -05:00
Thaddeus Crews 57bf364f36
Merge pull request #107058 from mihe/script-backtrace-deadlock
Fix various race conditions with capturing of script backtraces
2025-06-03 15:30:16 -05:00
bruvzg ee181951b6
[macOS] Add support for loading shell environment from UI apps. 2025-06-03 18:27:29 +03:00
Fredia Huya-Kouadio 547450befd Fix transparency background issue on Android
Fixes https://github.com/godotengine/godot/issues/106703
2025-06-02 22:45:16 -07:00
Thaddeus Crews 7a3d2f6779
Merge pull request #106606 from aaronfranke/pow2_64
Add 64-bit versions of core power of 2 functions
2025-06-02 18:51:56 -05:00
Thaddeus Crews 9ee7d78274
Merge pull request #106859 from syntaxerror247/alias
Add support for `OS.get_version_alias()` on Android
2025-06-02 18:51:56 -05:00
Thaddeus Crews 1c0669bd23
Merge pull request #106970 from m4gr3d/update_documentation_javaclasswrapper_androidruntimeplugin
Update the documentation for `JavaClassWrapper` and `AndroidRuntimePlugin`
2025-06-02 18:51:50 -05:00
Thaddeus Crews a6be6d1cd1
Merge pull request #106959 from bruvzg/w10_cleanup
[Windows] Drop support for Windows 7/8/8.1.
2025-06-02 18:51:46 -05:00
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
Aaron Franke f6f1df7d73
Add 64-bit versions of core power of 2 functions 2025-06-01 23:11:12 -07:00
Pāvels Nadtočajevs 2d93e004b9
Cleanup and unify `DisplayServer` screen methods and documentation. 2025-06-02 08:03:48 +03:00
Rémi Verschelde 4bbef7dd0a
Merge pull request #106942 from bruvzg/macos_borderless_maximize
[macOS] Fix borderless window maximization.
2025-06-01 00:31:53 +02:00
Rémi Verschelde 2df41d8144
Merge pull request #104458 from marcosc90/fix-thread-collision-shape-3d
[Web] Use actual `PThread` pool size for `get_default_thread_pool_size()`
2025-06-01 00:31:44 +02:00
Marcos Casagrande a7d18f51a2 Web: Add godot_pool_size/emscripten_pool_size config 2025-05-30 20:38:24 +02:00
Fredia Huya-Kouadio 658d3736f4 Update the documentation for `JavaClassWrapper` and `AndroidRuntimePlugin`
Follow-up to https://github.com/godotengine/godot-docs/pull/10979
2025-05-30 09:39:53 -07:00
Pāvels Nadtočajevs 617e12a6b4
[Windows] Drop support for Windows 7/8/8.1. 2025-05-30 17:30:23 +03:00
Anish Mishra 458850b2d9 Add support for `OS.get_version_alias()` on Android 2025-05-30 19:57:15 +05:30
Pāvels Nadtočajevs 798a644dd5
[macOS] Fix borderless window maximization. 2025-05-30 00:13:53 +03:00
Thaddeus Crews de37627404
Merge pull request #102552 from DarioSamo/shader-baker
Add shader baker to project exporter.
2025-05-28 17:09:38 -05:00
David Snopek cc7f2e5160 JavaClassWrapper: Don't discard overloaded methods that differ by object type 2025-05-28 14:19:26 -05:00
Thaddeus Crews 6228c7c762
Merge pull request #105451 from bruvzg/x11_splash
Fix X11 boot splash scaling.
2025-05-28 09:47:42 -05:00
Thaddeus Crews bb47f01481
Merge pull request #106390 from akien-mga/linux-drop-ppc32
Linux: Drop `ppc32` (32-bit PowerPC) architecture support
2025-05-28 09:47:34 -05: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
Thaddeus Crews 7eabfab466
Merge pull request #106836 from Riteo/return-is-missing
Wayland: Add missing return in selection logic
2025-05-27 09:39:31 -05:00
Thaddeus Crews 0f67c3e992
Merge pull request #104522 from Ivorforce/localvector-force-trivial-resize
Core: Add `resize_initialized` and `resize_uninitialized` to `Vector` and `LocalVector`
2025-05-27 09:39:27 -05:00
Thaddeus Crews 363b7638b0
Merge pull request #106797 from syntaxerror247/nomedia-crash
Android Editor: Disable `nomedia` file creation for Android 11 (api level 30)
2025-05-27 09:39:22 -05:00
Riteo 67c317c58d Wayland: Add missing return in selection logic
Fixup to "Wayland: Check selection devices before using them"

This slipped under the radar... until for some reason optimized builds
started crashing, perhaps due to timing-related shenanigans, no idea.
2025-05-26 20:36:15 +02: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
Thaddeus Crews d5301d1cc9
Merge pull request #106736 from TCROC/fix-ios-plugins-broken
Fix ios plugin always invalid due to null ConfigFile
2025-05-26 11:24:46 -05:00
Thaddeus Crews 1c151e9980
Merge pull request #106724 from syntaxerror247/theme-attributes
Android: Add export option for custom theme attributes
2025-05-26 11:24:42 -05:00
Thaddeus Crews e2d244b7f1
Merge pull request #106052 from uno1982/correct-get_unique_id-windows-null-termination
Fix Windows `OS.get_unique_id()` null termination issue
2025-05-26 11:24:37 -05:00
Thaddeus Crews 4db474d4ab
Merge pull request #106810 from syntaxerror247/Fix-UI
Fix Android editor UI
2025-05-26 11:24:35 -05:00
Anish Mishra e084e479bf
Fix Android editor UI 2025-05-25 22:59:41 +05:30
Anish Mishra a89f083ffa Fix `OS.get_version()` on Android. 2025-05-25 21:17:07 +05:30
Patrick Gelvin 6842a5861b Workaround X11 crash issue 2025-05-25 08:07:24 -07:00
uno1982 d79258c2e7 Fix: Windows OS.get_unique_id() null termination issue
use ascii for encoding-neutral
check buffer size as well
2025-05-23 15:05:41 -05:00
Pāvels Nadtočajevs d609cf62a0
Implement `get_filesystem_type` on macOS and Linux. 2025-05-23 23:05:06 +03:00
kojurohan42 12ad9ed4e0 Add support for exporting to Google Play Instant 2025-05-23 22:00:14 +05:45
Travis Lange a350e01dc7 Fix ios and android plugin always invalid due to null ConfigFile 2025-05-23 11:41:13 -04:00
Anish Mishra 0312a0cc9e Android: Add export option for custom theme attributes
- Regenerates the `GodotAppMainTheme` and `GodotAppSplashTheme` during Android export. Any manual changes to these styles will be cleared and replaced with default theme attributes.

- Adds a new export option `gradle_build/custom_theme_attributes` for injecting custom theme attributes directly via the export window, avoiding the need to manually modify themes.xml.
2025-05-23 20:00:47 +05:30
Thaddeus Crews cdd3632902
Merge pull request #106672 from bruvzg/macos_delegate_init_fix
Fix `GodotApplicationDelegate` init.
2025-05-22 12:15:00 -05:00
kobewi 42249bb659 Add @export_file_path to export raw paths (no UID) 2025-05-22 13:25:17 +02:00
Thaddeus Crews 7951a1bb87
Merge pull request #106359 from m4gr3d/remove_compress_native_libs_option
Remove the `gradle_build/compress_native_libraries` export option
2025-05-21 09:06:25 -05: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
Adam Scott b0e472c8e4
[Web] Include emscripten headers by default 2025-05-20 10:53:28 -04:00
Stuart Carnie aae3370fcd macOS: Support vsync when embedding OpenGL processes
Closes #106379
2025-05-20 09:39:13 +10: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
Fredia Huya-Kouadio ec7fb37db1 Update to the AAB directory layout
Follow-up to https://github.com/godotengine/godot/pull/106152 to address the regression described in https://github.com/godotengine/godot/issues/106582
2025-05-19 10:50:43 -07:00
Thaddeus Crews 52124a1262
Merge pull request #106538 from stuartcarnie/macos_embedded_size_fix
macOS: Ensure LayerHost size is set when first embedded
2025-05-19 08:01:31 -05:00
Stuart Carnie c58078ba42 macOS: Ensure LayerHost size is set when first embedded
Closes #106431
2025-05-18 08:36:29 +10:00
Adam Scott 6e6c4d3045
[Web] Always return `0` for `OS::get_process_id()` 2025-05-16 15:46:34 -04:00
Thaddeus Crews 202b1176a4
Merge pull request #106251 from ArchercatNEO/wayland-cursor-shape
[Wayland] Implement the cursor-shape-v1 protocol
2025-05-16 10:29:02 -05:00
Thaddeus Crews 596a8eb54c
Merge pull request #106462 from shiena/fix/prevent-camera-permission
Android: Don't request `CAMERA` permission on editor startup
2025-05-16 07:43:14 -05:00
Thaddeus Crews 5620a215a1
Merge pull request #106021 from Alex2782/fix_xbox_controller_on_android
Fix Xbox Controller on Android
2025-05-16 07:43:09 -05:00
Fredia Huya-Kouadio 1b0bd35f09 Update the GodotOpenXR meta-data removal logic
Godot OpenXR Vendor plugin version 4.0.0-stable changed the plugin's manifest declaration, so this updates the logic to remove that manifest declaration to match.
2025-05-15 16:38:11 -07:00
Fredia Huya-Kouadio 773fc96ab2 Update the logic to validate the java version
Loosen the check to allow Java version >= 17
2025-05-15 16:28:07 -07:00
KOGA Mitsuhiro 64e2c31c10 Android: Don't request CAMERA permission on editor startup 2025-05-16 06:45:37 +09:00
Fredia Huya-Kouadio e3d60bbd0c Remove the option to compress Android native libraries
Follow-up to https://github.com/godotengine/godot/pull/106358, this is a separate commit / PR since it shouldn't be cherry-picked in previous releases as it removes existing functionality.

Support for 16kb page size added in the previous PR requires the native libraries to be uncompressed, so we're deprecating and removing the option to compress native libraries.
See https://developer.android.com/guide/practices/page-sizes#agp_version_851_or_higher for more details.
2025-05-15 08:41:46 -07:00
Thaddeus Crews 7d46f0f733
Merge pull request #106365 from stuartcarnie/sgc_macos_modifier_state_focus
macOS: Send initial modifier keys as input events
2025-05-15 10:22:28 -05:00
Thaddeus Crews 82ea0b9293
Merge pull request #106358 from m4gr3d/update_ndk_28
[Android] Add support for 16 KB page sizes, update to NDK r28b
2025-05-15 10:22:27 -05:00
Thaddeus Crews 59cd4b823b
Merge pull request #106435 from akien-mga/android-readd-generate_apk-alias
Android: Re-add `generate_apk` alias for compatibility
2025-05-15 10:22:20 -05:00
Thaddeus Crews 902d2b45bb
Merge pull request #106400 from RandomShaper/win_compat
Improve platform compatibility of Windows and Direct3D 12
2025-05-15 10:22:16 -05:00
Thaddeus Crews 8134f3fe4b
Merge pull request #106394 from vmedea/2025-libdecor
Wayland: Unbreak build with `libdecor=no`
2025-05-15 10:22:15 -05:00
ArchercatNEO 3cd7b5b9a8 [Wayland] Implement the cursor-shape-v1 protocol
Related #106229. The cursor-shape protocol allows us to not have to deal with cursor theming and instead depend on the
compositor for it.
This still does not quite solve the issue when the compositor doesn't implement the protocol
(or running under the x11 backend) but for gnome/kde and a few more this should resolve things.
2025-05-15 15:42:48 +01:00
Rémi Verschelde 8851c5a54d
Android: Re-add `generate_apk` alias for compatibility 2025-05-15 12:42:29 +02:00
Pedro J. Estébanez 820380817a Exclude RD creation test functions from templates 2025-05-15 10:12:38 +02:00
Pedro J. Estébanez 53bee4eb56 Windows: Restrict time API use to the desktop flavor 2025-05-15 10:12:16 +02: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
Riteo a3913b045d Wayland: Fix stuck pointer buttons on window leave
This issue came from the frame-based refactoring done in the multiwin
PR.

It looks like some (all?) compositors group certain events alongside
`wl_pointer::leave`, which I absolutely did not expect. The docs don't
seem to mention it either from what I can tell.

We now fall-back on the old pointed window if and only if the current
window is invalid and the old one isn't. Each state fetch is guarded
with an `ERR_FAIL_NULL` so this should still catch any potentially
corrupted window with missing data but a valid ID.

I also added the usual big comment so that this "quirk" does not get
lost to time.
2025-05-14 23:30:16 +02:00
Pedro J. Estébanez 7759296594 Direct3D 12: Let platforms report support for direct composition 2025-05-14 17:48:19 +02: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 d043be6031
Merge pull request #105585 from marcosc90/fix-web-update-size
[Web] Prevent unnecessary canvas resizes by flooring scaled dimensions
2025-05-14 09:44:13 -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 fb39aa4fd3
Merge pull request #105833 from marcosc90/perf-web-shader-source
[Web] Optimize `GL.getSource` for known-length shader sources
2025-05-14 09:44:08 -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
Thaddeus Crews e3ad8129f7
Merge pull request #105601 from marcosc90/perf-web-gamepad
[Web] Avoid unnecessary gamepad polling when no gamepads are connected
2025-05-14 09:44:04 -05:00
mara d213e72866 wayland: Unbreak build with libdecor=no
In #101774, some libdecor-specific code was added, but without adding the guards. This broke the build with
`libdecor=no`.

Add `#ifdef` guard as necessary.
2025-05-14 13:36:45 +00:00
Rémi Verschelde 1de9789806
Linux: Drop `ppc32` (32-bit PowerPC) architecture support
This was added together with `ppc64le` in #54490, but seemingly only for the
purpose of getting it to compile on a Linux distro that aims at maximizing
support for all CPU architectures.

I don't think anyone has ever _run_ Godot on a `ppc32` system (do those even
support OpenGL ES 3.0?) and so I don't think we should aim to support it.

Debian dropped support for its PowerPC (`ppc32`) arch in Debian 9, released
in 2017.
2025-05-14 10:22:12 +02: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
Thaddeus Crews 4cd27d7fd4
Merge pull request #106094 from shiena/feature/support-android-camera
Add CameraFeed support for Android
2025-05-13 16:22:27 -05:00
Thaddeus Crews d3cd48cb51
Merge pull request #106319 from adamscott/web-simd
[Web] Add WebAssembly SIMD support (`wasm_simd`) and enable it by default
2025-05-13 16:22:18 -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
Fredia Huya-Kouadio 27bdc86ed1 Bump the NDK to version 28.1.13356709
Doing so automatically adds support for 16kib page to the Godot Android shared libraries.
See https://developer.android.com/guide/practices/page-sizes#compile-16-kb-alignment for details.
2025-05-13 08:27:36 -07:00
Pāvels Nadtočajevs 887fa78fc1
[macOS] Fix transparent window state detection for embedded process. 2025-05-13 17:09:51 +03:00
Leo de Penning 296ca79b9d Add CameraFeed support for Android
Co-authored-by: KOGA Mitsuhiro <shiena.jp@gmail.com>
2025-05-13 22:46:06 +09:00
Adam Scott f114a8d1d1
Add WebAssembly SIMD support 2025-05-13 07:35:53 -04: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 20f279cd34
Merge pull request #106345 from bruvzg/gl_leak
[X11] Fix GL init memory leak when transparency is enabled.
2025-05-13 12:49:08 +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 a12503b88c
[X11] Fix GL init memory leak when transparency is enabled. 2025-05-13 13:20:02 +03: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
Rémi Verschelde db66343528
Merge pull request #106317 from stuartcarnie/sgc_macos_first_click
macOS: Process first click event without requiring focus
2025-05-13 01:05:53 +02:00
Rémi Verschelde 8b93b67e14
Merge pull request #106315 from Riteo/popping-up-everywhere
Wayland: Fix error spam when closing popup
2025-05-13 01:05:49 +02:00
Rémi Verschelde cc07dc4273
Merge pull request #106288 from raulsntos/android/store_so_uncompressed
[Android] Store native libraries uncompressed in APK
2025-05-13 01:05:27 +02:00
Rémi Verschelde f23d1968b4
Merge pull request #106247 from bruvzg/ac_wl_resize
Do not call `accessibility_set_window_rect` on Wayland, fix main windows accessibility context creation.
2025-05-13 01:05:08 +02:00
Rémi Verschelde c1d3746a67
Merge pull request #105992 from uno1982/4.5-dev-fix-android-controller
Fix issues with Android controller input handling
2025-05-13 01:04:52 +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
Riteo c3b04e6e1e Wayland: fix error spam when closing popup
Previously we did not check whether the value actually changed or not
and thus would get constant errors for no reason.
2025-05-12 05:11:24 +02: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
Raul Santos 6464347157
[Android] Store native libraries uncompressed in APK 2025-05-11 21:02:44 +02:00
Pāvels Nadtočajevs 5441a82cfb
Do not call `accessibility_set_window_rect` on Wayland, fix main windows accessibility context creation. 2025-05-11 12:51:46 +03:00
Rémi Verschelde e9e8ddc5be
Linux: Fix build with `dbus=no` or `threads=no` 2025-05-09 15:26:13 +02:00
Fredia Huya-Kouadio c29545f793 Bump the minimum supported SDK version to 24
Raise the minimum supported Android version from Android 5 (Lollipop) to Android 7 (Nougat).
2025-05-08 09:45:32 -04:00
Thaddeus Crews 9b6e06dcf3
Merge pull request #106152 from m4gr3d/bump_target_sdk
Annual versions bump for the Android platform
2025-05-08 07:19:34 -05: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
Fredia Huya-Kouadio 4b4144cc39 Annual versions bump for the Android platform
- gradle: 8.2 -> 8.11.1
- androidx.constraintlayout:constraintlayout: 2.1.4 -> 2.2.1
- Android gradle plugin: 8.2.0 -> 8.6.1
- Android compile sdk: 34 -> 35
- Android target sdk: 34 -> 35
- Android build tools: 34.0.0 -> 35.0.0
- kotlin: 1.9.20 -> 2.1.20
- androidx.fragment:fragment: 1.7.1 -> 1.8.6
- OpenXR vendors plugin: 3.1.2-stable -> 4.0.0-stable
2025-05-07 13:14:49 -04: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 8ab73248bc
Merge pull request #106083 from Riteo/pointing-somewhere
Wayland: Ensure pointed window's existence in `mouse_get_position`
2025-05-05 11:24:18 -05: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
Riteo Siuga d4dabd15aa Wayland: Ensure pointed window's existence in mouse_get_position
Should fix a crash with certain compositors.
2025-05-03 20:24:44 +02:00
Alexander Hartmann cf00265386 Fix Xbox Controller on Android 2025-05-03 01:09:05 +02:00
Thaddeus Crews 01fc9aee6c
Core: Modernize C headers with C++ equivalents 2025-05-02 08:23:01 -05:00
uno1982 5ce11b1eac Fix for ps4 and ps5 controller options and share buttons 2025-05-01 11:30:02 -05:00
Thaddeus Crews f4f1471b57
Merge pull request #105910 from lawnjelly/global_get_fast4
Add `GLOBAL_GET` cached macros.
2025-04-30 09:18:44 -05:00
lawnjelly f8f350a32a Add `GLOBAL_GET` cached macros.
GLOBAL_GET is an expensive operation which should not be used each frame / tick.
This PR adds macros which do a cheaper revision check, and only call the expensive GLOBAL_GET when project settings have changed.

Co-authored-by: Lukas Tenbrink <lukas.tenbrink@gmail.com>
2025-04-30 15:08:50 +01:00
tthhr e7a3729175 fix:Compile error in wayland display server when compiling linuxbsd platform after disabling dbus 2025-04-30 14:22:52 +08:00
Thaddeus Crews a13d05421f
Merge pull request #105914 from adamscott/add_ignore_case_2
[Buildsystem] Add `EnumVariable(ignorecase=2)`
2025-04-29 16:05:19 -05:00
Adam Scott 1fbc0c5631
[Buildsystem] Add `EnumVariable(ignorecase=2)` 2025-04-29 13:35:40 -04:00
Anish Mishra f8e935d406 Enable close button on PicoOS 2025-04-29 22:38:37 +05:30
Fredia Huya-Kouadio ccf61650bd Use `separate_debug_symbols` to control generation of the separate Android debug symbols file 2025-04-28 08:33:12 -07:00
Thaddeus Crews 2242bf9b3d
Merge pull request #105697 from akien-mga/scons-x86_32-mfpmath-sse
SCons: Explicitly enable `-mfpmath=sse -mstackrealign` for x86_32
2025-04-28 10:01:31 -05:00
Thaddeus Crews f8a8d6cf04
Merge pull request #105700 from dementive/config-file-get-improvement
Improve ConfigFile get_sections and get_section_keys by returning Vector<String>
2025-04-27 19:21:31 -05: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
Marcos Casagrande 197b307061 [Web] Optimize GL.getSource for known-length shader sources 2025-04-27 17:44:08 +02:00
Pāvels Nadtočajevs 152423230c
[macOS] Update entered state from `mouseMoved`. 2025-04-27 16:00:28 +03:00
Pāvels Nadtočajevs 3e8c99b346
Fix `uiautomationcore` linking in 32-bit x86 MinGW builds. 2025-04-26 23:45:07 +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
Pāvels Nadtočajevs 46c690e4b2
[MinGW] Explicitly link `shell32` library. 2025-04-25 21:27:15 +03:00
Thaddeus Crews 2bf7184ed9
Merge pull request #103865 from Repiteo/scons/__has_include
SCons: Remove `check_c_headers`
2025-04-25 11:36:06 -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 041c69db2f
Merge pull request #101454 from Riteo/fifo_ftw
Wayland: Handle `fifo_v1` and clean up suspension logic
2025-04-25 11:36:04 -05:00
Thaddeus Crews 795b11e705
Merge pull request #105741 from bruvzg/scr_bt_crash
Print script backtrace in the crash handler.
2025-04-25 11:36:03 -05:00
Thaddeus Crews 007717faf9
SCons: Remove `check_c_headers`
• Can instead check for headers directly with `__has_include`, a C++17 feature
2025-04-25 11:30:39 -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
Pāvels Nadtočajevs 43e9b04f66
Update Mesa-NIR library detection and download script. 2025-04-25 08:11:14 +03:00
dementive b8e44a0000 Improve ConfigFile get_sections and get_section_keys by returning Vector<String> 2025-04-24 20:10:31 -04: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
Thaddeus Crews 760fb30b83
Merge pull request #105611 from m4gr3d/upgrade_android_tools_main
Update the Android NDK to the latest LTS version (r27c)
2025-04-24 09:09:27 -05:00
Pāvels Nadtočajevs e096e2fa8a
Fix macOS build with ANGLE enabled and Vulkan disabled. 2025-04-24 15:57:13 +03:00
Rémi Verschelde 08fa148310
SCons: Explicitly enable `-mfpmath=sse -mstackrealign` for x86_32
Passing `-msse2` doesn't seem to be sufficient to opt into SSE floating point math
instead of the less stable x87.

`-mstackrealign` also seems necessary when using SSE on x86_32.
2025-04-24 12:36:29 +02:00
Pāvels Nadtočajevs e6d3cf63fb
[ColorPicker, macOS] Add link to request required screen recording permission. 2025-04-23 22:25:10 +03:00
Thaddeus Crews c00cee3c03
Merge pull request #102171 from Muller-Castro/apksigner-fix
Fix apksigner execution failure on linux
2025-04-23 12:01:28 -05: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
Fredia Huya-Kouadio fac2ebed78 Update the project NDK to the latest LTS version (r27c) 2025-04-22 19:43:59 -07:00
Thaddeus Crews 34cb8999b0
Merge pull request #105605 from m4gr3d/setup_debug_symbols
Android: Enable native debug symbols generation
2025-04-22 18:25:49 -05:00
Muller-Castro d702460caf Fix apksigner execution failure on linux 2025-04-22 19:47:30 -03:00
Fredia Huya-Kouadio 8a514ae56f Enable native debug symbols generation 2025-04-22 09:04:49 -07:00
Marcos Casagrande 3e7e09f915 Web: Avoid unnecessary gamepad polling when no gamepads are connected 2025-04-20 21:47:53 +02:00
Riteo Siuga 48882f3ca4 Wayland: Handle fifo_v1 and clean up suspension logic
Before, the WSI was unfortunately quite broken and we had work around it
by manually pacing frames. Needless to say it was not an ideal solution.

Now, the WSI can make use of the new fifo_v1 protocol to work properly.
If it's available, we'll trust the WSI by disabling manual frame pacing.

While we're at it, let's clean up the suspension code a bit by removing
some duplicated stuff and handling the suspension state through a switch
case.
2025-04-20 18:05:35 +02:00
Marcos Casagrande ed0690dc44 Web: prevent unnecessary canvas resizes by flooring scaled dimensions 2025-04-20 16:53:37 +02:00
jss2a98aj 2e61c7773b Fix OS_Windows::get_video_adapter_driver_info() 2025-04-18 19:11:40 -04: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 d07c162d10
Merge pull request #105430 from bruvzg/fix_llvm20_mingw_crash
Fix crash in release build with llvm-mingw.
2025-04-16 10:45:16 -05:00
Thaddeus Crews 485406b5e0
Merge pull request #104819 from m4gr3d/setup_godot_tools_lib_maven_central
Add maven publishing configuration for Godot tools
2025-04-16 10:45:14 -05:00
Pāvels Nadtočajevs 5ddaaa93e6
Fix X11 boot splash scaling. 2025-04-16 10:45:43 +03:00
Thaddeus Crews 9906016959
Merge pull request #105301 from syntaxerror247/fix-decimal-keyboard
Android: Fix decimal keyboard
2025-04-15 12:28:46 -05:00
bruvzg da1fca613f
Fix crash in release build with llvm-mingw. 2025-04-15 20:18:11 +03:00
Anish Mishra 8f0a642f6c Android: Fix Decimal keyboard 2025-04-15 08:09:37 +05:30
Thaddeus Crews 0d267e7b1e
Core: Add dedicated `BitField` template 2025-04-11 11:53:26 -05:00
Thaddeus Crews 608e7a27eb
Merge pull request #105242 from adamscott/add-wasm-ld-wall
[Web] Add the equivalent of `-Werror` for `wasm-ld`
2025-04-11 09:51:12 -05:00
Thaddeus Crews 4972a524fc
Merge pull request #96139 from Alex2782/reverting_pr_84331
Add configuration option to disable `Scroll Deadzone` on Android
2025-04-11 09:51:08 -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 717df3ee88
Merge pull request #105249 from Repiteo/core/math-defs-namespace
Core: Use `Math` namespace for constants
2025-04-11 09:51:04 -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 94282d88f9
Core: Use `Math` namespace for constants 2025-04-10 16:29:30 -05:00
Adam Scott ce4f64583a
Add the equivalent of `-Werror` for `wasm-ld` 2025-04-10 11:49:03 -04: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 722ddf6e6f
Merge pull request #103802 from Rindbee/set-unsupported-to-true-on-error-in-FreeDesktopScreenSaver
Set `unsupported` to true on error in `FreeDesktopScreenSaver`
2025-04-10 10:18:14 -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
Thaddeus Crews 7a6c3b309f
Merge pull request #105130 from bruvzg/uri_fix_plus
Add uri_file_decode to handle + in file names.
2025-04-09 18:11:56 -05: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 295c0f5bd2
Merge pull request #105129 from Riteo/soft-serve
Wayland: Fix error spam for closed windows
2025-04-08 12:32:48 -05: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
Thaddeus Crews 95dc68c8c6
Merge pull request #105107 from bruvzg/min-max-flag
Add separate `minimize_disabled` and `maximize_disabled` window flags.
2025-04-08 12:32:44 -05:00
Thaddeus Crews d98c3f5ffe
Merge pull request #104333 from Mickeon/documentation-even-more-miscellaneous-oddities
Fix *even* more miscellaneous oddities around the class reference
2025-04-08 12:32:41 -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 9abe2e5294
Add `uri_file_decode` to handle `+` in file names. 2025-04-07 23:49:17 +03:00
Alex cd68034e01 Add configuration option to disable `Scroll Deadzone` on Android 2025-04-07 22:15:31 +02:00
Riteo 36d96f7f37 Wayland: Fix error spam for closed windows
I ported the new softclass macro too blindly. Apparently the various
window messages did not cast properly, skipping some important "deleted
window" checks.
2025-04-07 20:22:08 +02:00
Pāvels Nadtočajevs f37fb49739
Add separate `minimize_disabled` and `maximize_disabled` window flags. 2025-04-07 18:58:11 +03:00
Micky 7603945d14 Fix *even* more miscellaneous oddities around the class reference 2025-04-07 17:37:08 +02:00
Thaddeus Crews 1b9f269700
Merge pull request #105015 from syntaxerror247/improve-touchActionsPanel
Android Editor: Add an editor setting to enable/disable `TouchActionsPanel`
2025-04-07 08:43:24 -05:00
Anish Mishra b462db5adb Android: Hardware keyboard connection status callback
Adds a DisplayServer method to register hardware keyboard connection change callback.
2025-04-05 08:14:29 +05:30
Riteo 84d3adcf2f Wayland: Implement native sub-windows
The backend is now mature enough to not explode with multiple windows
but the `DisplayServer` API still cannot meet some guarantees required
by the various Wayland protocols we use. To meet those guarantees this
patch adds three new elements to the DisplayServer API, with relative
handling logic for `Window` and `Popup` nodes:

 - `WINDOW_EVENT_FORCE_CLOSE`, which tells a window to *forcefully*
close itself and ensure a proper cleanup of its references, as Wayland
enforces this behavior;

 - `WINDOW_FLAG_POPUP_WM_HINT`, which explicitly declares a window as a
"popup", as Wayland enforces this distinction and heuristics are not
reliable enough;

 - `FEATURE_SELF_FITTING_WINDOWS`, which signals that the compositor can
fit windows to the screen automatically and that nodes should not do
that themselves.

Given the size of this feature, this patch also includes various
`WaylandThread` reworks and fixes including:

 - Improvements to frame wait logic, with fixes to various stalls and a
configurable (through a `#define`) timeout amount;

 - A proper implementation of `window_can_draw`;

 - Complete overhaul of pointer and tablet handling. Now everything is
always accumulated and handled only on each respective `frame` event.
This makes their logic simpler and more robust.

 - Better handling of pointer leaving and pointer enter/exit event
sending;

 - Keyboard focus tracking;

 - More solid window references using IDs instead of raw pointers as
windows can be deleted at any time;

 - More aggressive messaging to window nodes to enforce rects imposed by
the compositor.
2025-04-04 20:23:25 +02: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 6392241742
Merge pull request #104959 from bruvzg/kde_swap
Linux: Detect KDE/LXQt and swap OK/Cancel buttons to Windows style.
2025-04-03 09:27:56 -05:00
Pāvels Nadtočajevs 52009b52d2
Detect KDE/LXQt and swap OK/Cancel buttons to Windows style. 2025-04-03 12:47:11 +03:00
Aaron Franke 2800948d61
Organize ifdefs for disabling navigation, physics, and XR 2025-04-02 08:24:24 -07: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
Yufeng Ying 4f4031a675 Replace size() == 0 with is_empty(). 2025-04-02 19:18:43 +08: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
Thaddeus Crews abd565eb19
Merge pull request #104844 from Ivorforce/gdsoftclass
Add and require `GDSOFTCLASS` for `Object` subclasses that want to cast but do not use `GDCLASS`.
2025-03-31 19:02:03 -05:00
Lukas Tenbrink fa0a3c9c6e Add and require `GDSOFTCLASS` for `Object` subclasses that want to cast but do not use `GDCLASS`. 2025-03-31 20:49:50 +02:00
Fredia Huya-Kouadio 19700dacdf Add maven publishing configuration for Godot tools
The Godot Android library on MavenCentral is a `template` build; this updated configuration adds a new 'Godot Tools' publishing artifact, allowing developers access to the `editor` build of the Godot Android library.
2025-03-31 10:29:06 -07:00
Thaddeus Crews 64f80ca0e9
Merge pull request #104810 from kiroxas/utf8_cleanup
Replace `append_utfx` with direct `String::utfx`
2025-03-31 12:03:44 -05:00
Kiro 23129a66ed Replace append_utfx with direct String::utfx 2025-03-30 19:56:38 +02:00
LuoZhihao 138e990262 Replace the deprecated version macro 2025-03-30 18:00:19 +08: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
Thaddeus Crews 7a28334596
SCons: Ensure MinGW as fallback if missing MSVC 2025-03-29 10:14:20 -05:00
Rémi Verschelde be1333dc0a
Merge pull request #97002 from bruvzg/mbchar_iconv
Add methods to decode/encode multibyte encodings.
2025-03-28 17:29:47 +01:00
Rémi Verschelde 3b90bb56ad
Merge pull request #89782 from KoBeWi/stdArrayList
Use initializer list in Arrays
2025-03-28 17:29:40 +01:00
bruvzg 48bfe13e4f
Add methods to decode/encode multibyte encodings. 2025-03-28 17:32:34 +02: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
Rémi Verschelde 3f82efa65d
Merge pull request #104613 from zaevi/caching_csharp_tfm_validation
[.NET] Add caching for dotnet TFM validation result
2025-03-28 14:33:14 +01:00
Rémi Verschelde e9d827b440
Merge pull request #103173 from m4gr3d/fix_prebuilt_manifest_config
Updates and fixes to the Android prebuilt export logic
2025-03-28 14:31:57 +01:00
Rémi Verschelde fceae7ed89
Merge pull request #103000 from rburing/tell_me_WHICH_keystore
When code signing, specify which keystore is not found
2025-03-28 14:31:52 +01:00
Rémi Verschelde 0a502d31dc
Merge pull request #94689 from Cliear/master
[Windows] Fix issue where newly created window incorrectly acquired the popup property.
2025-03-28 14:31:05 +01:00
Cliear 9dfa751425 [Windows] Fixed the issue where newly created window incorrectly acquired the popup property on Windows. 2025-03-28 04:10:03 +08: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 e00b7dc72d
[Windows] Fix borderless maximized window mode. 2025-03-27 10:19:07 +02:00