Commit Graph

2205 Commits

Author SHA1 Message Date
Rémi Verschelde 0f53286459 Merge pull request #117682 from syntaxerror247/sigal-registration-issue
Fix plugin signal registration error on Android
2026-03-23 22:35:50 +01:00
Anish Kumar 2e208489e7 Fix plugin signal registration error on Android 2026-03-21 00:07:37 +05:30
Thaddeus Crews fb4a304dee Merge pull request #111965 from Ivorforce/memnew-typed
Make `memnew(RefCounted)` return `Ref`, to improve ownership safety
2026-03-19 15:39:15 -05:00
Fredia Huya-Kouadio 46984cf152 Bump the minimum api version and hardware version for Vulkan support
Follows the recommendations from https://developer.android.com/games/develop/vulkan/native-engine-support#recommendations
2026-03-18 20:47:48 -07:00
Lukas Tenbrink 05c33acbb1 Make memnew(RefCounted) return Ref, to force callers to take ownership of it through a reference. 2026-03-18 20:34:08 +01:00
Rémi Verschelde e33e98a26f Style: Apply clang-format grouping rules 2026-03-17 20:11:01 +01:00
Thaddeus Crews be33d1ceb0 Merge pull request #114941 from syntaxerror247/fix-HashMap-crash
Android: Fix java.util.HashMap handling
2026-03-17 13:44:11 -05:00
Anish Kumar 5387f0d596 Android: Fix crash when emitting signal with java.util.HashMap 2026-03-17 22:55:18 +05:30
Rémi Verschelde 7795057e4b Misc includes or modernize fixes found via clangd-tidy 2026-03-16 21:38:26 +01:00
Rémi Verschelde 0d7bd115da Remove unused includes in drivers with clangd-tidy 2026-03-14 22:38:02 +01:00
Rémi Verschelde d9b81615e5 Remove unused includes in platform with clangd-tidy
Handled Linux, Windows, Android, and (partially) Web.
2026-03-14 22:37:05 +01:00
uno1982 e2e1c89723 Android: Add haptic feedback on long-press right-click in the editor
Trigger haptic feedback when a long-press gesture fires a right-click
(context menu) in the Android editor. Uses Android's native
`HapticFeedbackConstants.LONG_PRESS` on the render view surface.

An editor setting `interface/touchscreen/haptic_on_long_press` is added
under the existing touchscreen section to allow users to disable this
behavior. The setting defaults to enabled on native touchscreen devices.
2026-03-14 11:32:07 +01:00
Pāvels Nadtočajevs dd0387fcb0 Remove AccessKit dynamic wrappers, add download script and build warning if libs are missing. 2026-03-11 14:52:38 +02:00
Fredia Huya-Kouadio ef0163ba9f Add support for PiP mode 2026-03-06 23:29:16 -08:00
Rémi Verschelde 19726167ce Merge pull request #117131 from syntaxerror247/fixing-my-blunder
Android: Fix FileAccess crash when using treeUri in Gradle-built apps
2026-03-06 12:44:43 +01:00
Rémi Verschelde a772f16387 Merge pull request #117109 from syntaxerror247/script-editor-portrait
Android editor: Enable orientation change in Script Editor
2026-03-06 12:44:31 +01:00
Anish Kumar 25a203aa34 Android editor: Enable orientation change in Script Editor 2026-03-06 06:24:42 +05:30
Anish Kumar ed8853b8d1 Android: Fix FileAccess crash when using treeUri in Gradle-built apps 2026-03-06 05:48:42 +05:30
StarryWorm 3cb2d376f8 Get rid of all unnecessary class_db.h includers 2026-03-04 17:40:05 -05:00
Rémi Verschelde eabb9a63d4 Rename callable_method_pointer.h to callable_mp.h and include it explicitly
This allows removing it from `class_db.h`, significantly reducing the amount of files
that include it transitively.

Also includes some include cleanup in `control.h` and `rich_text_label.h` done while
ensure they don't depend on `callable_mp`.
2026-03-04 16:23:23 +01:00
Rémi Verschelde 727b06a79f Move ProcessID typedef out of OS
This allows decoupling a number of files from `os.h`.
2026-03-04 15:00:45 +01:00
Rémi Verschelde 765362b033 Explicitly include core/config/engine.h where used 2026-03-04 10:17:10 +01:00
Rémi Verschelde f332faf46b Explicitly include core/os/os.h where used 2026-03-04 09:54:10 +01:00
Rémi Verschelde 8c0f175c94 Decouple RenderingServer from as much of the codebase as possible
Notably decouples it from:
- AccessibilityServer
- DisplayServer
- Viewport
- Window
2026-03-03 12:48:07 +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
StarryWorm 357fa00a4a rm class_db.h from resource.h 2026-02-27 19:08:29 -05:00
Thaddeus Crews abdde1b69d Core: Remove class_db.h include from ref_counted.h 2026-02-26 18:14:23 -06:00
Thaddeus Crews e380a41752 Style: Add class_db.h includes explicitly 2026-02-26 15:50:28 -06:00
Thaddeus Crews b62cbfdaa8 Merge pull request #115888 from m4gr3d/fix_platform_bom_dependency_insertion
Android: Add support for plugins gradle platform dependencies
2026-02-24 09:29:30 -06:00
Thaddeus Crews 2db05b08de Merge pull request #116548 from m4gr3d/check_for_android_devices_when_runnable_is_set
Android: Only poll for devices when a runnable export preset is configured
2026-02-23 11:58:40 -06:00
Josef Ott fc711baa23 FEATURE_NATIVE_DIALOG_FILE always true for android 2026-02-21 17:18:23 +01:00
Fredia Huya-Kouadio 51eb1a3013 Poll for Android devices only when a runnable Android export preset is configured 2026-02-20 10:52:39 -08:00
Hugo Locurcio 7d6d11f8d8 Fix EditorSettings error due to android_sdk_path when exporting a project
This editor setting is queried once every 3 seconds, as it is used
to check whether devices have been (dis)connected for one-click deploy.

This method may be called early on depending on initialization order,
which has led to occasional error messages when exporting a project.
The method now returns early if EditorSettings isn't ready yet
(it will be called again soon after anyway).
2026-02-20 01:25:33 +01:00
Rémi Verschelde ad4b910a10 Minimize include dependencies of display_server.h
- Removes `native_menu.h` dependency from `display_server.h`.
  It's now forward-declared in all DisplayServer implementations and should
  be included in the .cpp's.
- Removes some unused `rb_set.h` and `rb_map.h` dependencies, which leads to
  having to include them explicitly in half the scene and editor codebase...
  which shows how much we depend on `display_server.h`.
- Forward-declare `input_event.h`, so now we need only `keyboard.h`.
2026-02-17 19:45:31 +01:00
Thaddeus Crews 4cccd55af8 Merge pull request #116161 from syntaxerror247/copy-keystore-to-temp
Android Editor: Copy keystore to temp file during export
2026-02-16 10:19:23 -06:00
Thaddeus Crews 3f57dc07cc Merge pull request #116153 from m4gr3d/add_project_godot_associations
Implement `project.godot` file associations for the Android editor
2026-02-13 07:40:27 -06: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
Anish Kumar 6a65e06e69 Android Editor: copy keystore to temp file during export 2026-02-11 13:44:57 +05:30
Fredia Huya-Kouadio 8d14a178e9 Implement project.godot file associations for the Android editor 2026-02-10 14:13:07 -08:00
Thaddeus Crews 833889aec0 Merge pull request #115710 from syntaxerror247/fix-seek
Fix `FileAccess.seek_end` behavior on Android
2026-02-09 15:07:07 -06:00
Anish Kumar 0c89904687 Fix FileAccess.seek_end behavior on Android 2026-02-08 00:16:34 +05:30
Thaddeus Crews 79eb6694a1 Merge pull request #112381 from Ivorforce/no-right-align
Don't right-align escaped newlines (e.g. for `#define`)
2026-02-05 09:18:36 -06:00
Fredia Huya-Kouadio 88b292a098 Update the logic to insert plugins dependencies to support gradle platform dependencies 2026-02-04 17:12:18 -08:00
Lukas Tenbrink c5df0cb82b Don't right-align escaped newlines, e.g. for #define. This has previously led to long diffs in the commit history. 2026-02-04 19:31:28 +01:00
Fredia Huya-Kouadio 8e5c352b48 Fix Android JavaClassWrapper test crashes on API 26 and lower 2026-02-04 08:26:16 -08:00
Thaddeus Crews 2487a297b2 Merge pull request #113469 from m4gr3d/deprecate_dev_buildtype
Deprecate the Android studio `dev` buildtype
2026-02-03 18:06:52 -06:00
Fredia Huya-Kouadio feb8e6ff13 Deprecate the Android studio dev buildtype
The project is setup in Android Studio with three buildtypes:
- `release` for release builds of the engine
- `debug` for debug builds of the engine with `dev_mode`, `dev_build`, and `debug_symbols` disabled
- `dev` for debug builds of the engine with `dev_mode`, `dev_build`, and `debug_symbols` enabled

This commit deprecates and removes the `dev` buildtype and instead enables `dev_mode`, `dev_build`, and `debug_symbols` for the `debug` buildtype when building with Android Studio.

The `release` buildtype has also been updated such that a `release` build built with Android Studio and signed with non-production keys can be installed side-by-side with a production-signed release (e.g: from the store).
2026-02-03 06:55:00 -08:00
Anish Kumar 1c80b25af8 Android: Fix Bad file descriptor in SAF/MediaStore in long term access 2026-02-02 15:47:16 +05:30
Rémi Verschelde e273d83ff5 Merge pull request #115718 from syntaxerror247/fix-file-access-tests
Fix file access tests failing on older Android devices
2026-02-02 10:10:55 +01:00
Rémi Verschelde e04d564215 Merge pull request #115713 from dsnopek/android-fail-incomplete-instrumented-test
Android: Fail instrumented tests when test function doesn't complete
2026-02-02 10:10:51 +01:00