Lukas Tenbrink
a30e7e1151
Avoid releasing main thread identity on platforms that don't need to drop it, making it a platform detail.
...
(cherry picked from commit 92cb8246a5b67b36482ea597f23773984f53cf37)
2026-07-30 11:26:19 -05:00
Fredia Huya-Kouadio
1edc952740
Fix issue causing the engine to crash when starting while the screen is off.
...
(cherry picked from commit dd94c2c5af4126b46ecc90fcd173c6e9513e52b7)
2026-07-25 13:19:49 -05:00
uno1982
ea5c2a36d8
Android: Fix EditorSettings not instantiated error when running game
...
Add null check in getEditorSetting JNI call to match setEditorSetting.
Fixes error when game runner process calls getEditorSetting before
EditorSettings is initialized.
(cherry picked from commit 19bbd4ccdd22a5ac9ed134f93ceb0db9149a13ae)
2026-06-30 09:28:41 -05:00
Fredia Huya-Kouadio
50f6eff29b
[Android] Clean up Godot.kt by moving natively accessed methods to the (new) GodotNativeBridge.kt internal class
2026-04-08 10:24:37 -07:00
Rémi Verschelde
e33e98a26f
Style: Apply clang-format grouping rules
2026-03-17 20:11:01 +01:00
Fredia Huya-Kouadio
ef0163ba9f
Add support for PiP mode
2026-03-06 23:29:16 -08:00
Rémi Verschelde
f332faf46b
Explicitly include core/os/os.h where used
2026-03-04 09:54:10 +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
Fredia Huya-Kouadio
0ad63522d7
Quick fix to address https://github.com/godotengine/godot/issues/115924
...
The fix resets the Android global vulkan context when running in XR mode to allow the XR module to drive the initialization via vulkan hooks.
2026-02-12 14:14:23 -08:00
Thaddeus Crews
ea1e6640f0
Merge pull request #115434 from syntaxerror247/landscape-or-portrait
...
Add device orientation change signal to DisplayServer
2026-01-27 15:18:22 -06:00
Anish Kumar and bruvzg
e2369a834b
Add device orientation change signal in DisplayServer
...
This PR:
- Fixes the orientation detection logic on Android
- Adds an orientation_changed signal in DisplayServer
Co-Authored-By: bruvzg <7645683+bruvzg@users.noreply.github.com >
2026-01-27 23:35:44 +05:30
Dario
542f8ddf22
Fix fallback to OpenGL3 from Vulkan initialization on Android.
2026-01-14 23:55:21 -03:00
Fredia Huya-Kouadio
be24804e1a
Trigger save of the RD pipeline cache on application pause
2025-12-30 19:25:29 -08:00
Thaddeus Crews
cd8a292324
Merge pull request #113297 from shiena/feature/lifecycle-callbacks
...
Add platform lifecycle callbacks to CameraServer base class
2025-12-02 11:51:52 -06:00
Rémi Verschelde
71d4ded745
Merge pull request #113279 from Ivorforce/tracy-gdscript-codeloc
...
Add support for profiling GDScript with tracy.
2025-12-02 14:16:56 +01:00
KOGA Mitsuhiro
85ec5b9f42
Add platform lifecycle callbacks to CameraServer base class
2025-12-02 00:31:51 +09:00
Lukas Tenbrink and Samuel Nicholas
acefbbbbcd
Add support for profiling GDScript with tracy.
...
This adds macro `GodotProfileZoneGroupedFirstScript`, and uses interning for speedy lookups.
Co-authored-by: Samuel Nicholas <nicholas.samuel@gmail.com >
2025-11-28 16:36:36 +01:00
Rémi Verschelde
b22d15311c
Merge pull request #113159 from dsnopek/android-variant-to-jvalue-memory-issues
...
Android: Fix memory issues in `_variant_to_jvalue()`
2025-11-27 09:56:04 +01:00
David Snopek
c2f8d1a29b
Android: Fix memory issues in _variant_to_jvalue()
2025-11-26 11:17:34 -06:00
Fredia Huya-Kouadio
023024440b
Deprecate and remove vendors specific XR APIs from the Godot core Android library
...
Follow-up to https://github.com/GodotVR/godot_openxr_vendors/pull/380 , done in order to prevent vendors specific dependencies onto the Godot core Android library.
2025-11-25 17:06:43 -08:00
Thaddeus Crews
e46c2ea3fa
Merge pull request #112379 from bruvzg/tts64id
...
Make `utterance_id` 64-bit.
2025-11-14 14:23:17 -06:00
Benjamin Dobell
585389af24
Fix crash when gamepad connects immediately upon Android app startup
2025-11-15 01:13:17 +11:00
Lukas Tenbrink
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
Pāvels Nadtočajevs
281c74550a
Make utterance_id 64-bit.
2025-11-07 10:21:20 +02:00
KOGA Mitsuhiro
4483871cd3
Android: Stabilize camera lifecycle handling
...
- Pause camera feeds during lifecycle transitions to avoid crashes
- Refresh camera metadata after rotation to keep orientation accurate
2025-10-23 01:32:16 +09:00
Thaddeus Crews
5935a32e32
Core: Cleanup headers in core/config
...
- `MainLoop` now forward-declared in `OS`
2025-10-06 09:20:56 -05:00
Aaron Franke
3d1c9fd5de
Move server files into their subfolders
2025-09-30 19:39:39 -07:00
Fredia Huya-Kouadio
35fda7f857
Fix JNI local reference table overflow when wrapping Java class with large method counts
2025-09-23 12:23:26 -04:00
Serhii Snitsaruk
fa36abeacc
Fix FindClass() failing to find Dictionary on Android leading to crash
2025-08-01 17:46:58 +02:00
A Thousand Ships
f11aff3841
Editor: Restructure editor code
...
Moving various editor files into sub folders to reduce clutter
2025-07-04 18:18:22 +02:00
Fredia Huya-Kouadio
dc589e239c
Add support for using an Android Service to host the Godot engine
...
- Provide a `GodotService` Android service implementation which can be used to host an instance of the Godot engine
- Provide a `RemoteGodotFragment` Android fragment implementation which provides the view and logic to wrap connection to a `GodotService` instance
2025-06-12 16:37:38 -07:00
lawnjelly and Lukas Tenbrink
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
Thaddeus Crews
0d267e7b1e
Core: Add dedicated BitField template
2025-04-11 11:53:26 -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
Aaron Franke
2800948d61
Organize ifdefs for disabling navigation, physics, and XR
2025-04-02 08:24:24 -07:00
Thaddeus Crews
ea62170dac
Core: Add constexpr constructors/operators to math structs
...
• Begin integrating `constexpr` on math tests; use `static_assert` where appropriate
2025-03-17 12:15:31 -05:00
Thaddeus Crews
67d4a245d8
Merge pull request #103267 from YeldhamDev/reality_got_too_extended
...
Allow to compile the engine without XR support
2025-03-07 15:12:54 -06:00
Rémi Verschelde
a7dd4ad5f8
Android: Fix build with disable_3d
...
Fixes #103516 .
2025-03-03 22:19:05 +01:00
Michael Alexsander
aea559b39a
Allow to compile the engine without XR support
2025-02-25 17:07:21 -03:00
Anish Mishra and Pāvels Nadtočajevs
28d1dccf63
Android: Fix export and runtime logic to check if using Vulkan
...
Also fix iOS export logic that would force a min target of iOS 14.0 (for Metal)
even when targeting the Compatibility renderer.
Co-authored-by: Pāvels Nadtočajevs <7645683+bruvzg@users.noreply.github.com >
2025-02-23 12:28:59 +01:00
Fredia Huya-Kouadio
7495a8a02e
Add support for embedding game process in the Android Editor
...
- Implement Android editor specific `EmbeddedGodotGame` to support embedding the game window in the Android editor
2025-02-11 02:20:18 -08:00
Anish Mishra
cb9ee099ac
Android: Implement support for native dialog
...
This adds support for DisplayServer::dialog_show() on Android, aligning it with the functionality already available on macOS and Windows.
2025-01-14 15:03:14 +05:30
Fredia Huya-Kouadio
23cea1b9d2
Additional fixes and improvements to JavaClassWrapper
...
- Fix crashing bug when invoking class constructor with parameters
- Add support for accessing class constants
- Add support for Godot Callable arguments. A Godot Callable can be wrapped by a Java Runnable to allow Java logic to run arbitrary Godot lambdas
- Automatically convert java.lang.CharSequence to Godot String as needed
- Code cleanup
2024-12-17 18:46:34 -08:00
Anish Mishra
b2130efb31
[Android] Implement native file picker support
2024-10-30 14:53:02 +05:30
Anish Mishra
be5d7f757d
[Android] Implement native input dialog support
2024-10-29 20:02:08 +05:30
Fredia Huya-Kouadio
07cae26abe
Remove the restriction on supported types for Godot Android plugins
...
The Android plugin implementation is updated to use `JavaClassWrapper` which was fixed in https://github.com/godotengine/godot/pull/96182 , thus removing the limitation on supported types.
Note that `JavaClassWrapper` has also been updated in order to only provide access to public methods and constructor to GDScript.
2024-09-29 14:32:10 -07:00
Fredia Huya-Kouadio
3ff95ef12a
Only request OpenXR permissions for a XR game running off the Android editor when the xr/openxr/extensions/automatically_request_runtime_permissions project setting is enabled
2024-09-11 14:47:08 -07:00
Fredia Huya-Kouadio
92ffa93c58
Fix Android builds when OpenXR is disabled
2024-08-30 23:11:50 -07:00
Fredia Huya-Kouadio
794ea99240
Update the storage access handler logic to support accessing / retrieving contents with the assets:/ prefix
2024-08-26 11:16:37 -07:00
Rémi Verschelde
82adfebcf8
Merge pull request #94799 from m4gr3d/memory_allocation_cleanup_and_optimizations
...
Android memory cleanup and optimizations
2024-08-16 23:45:39 +02:00