Commit Graph

126 Commits (cb1569345a6f17da08241e645ab03cb2e1b78d2f)

Author SHA1 Message Date
Pāvels Nadtočajevs 281c74550a
Make `utterance_id` 64-bit. 2025-11-07 10:21:20 +07:00
Thaddeus Crews 9283328fe7
Merge pull request #109491 from syntaxerror247/window-color
Android: Add method to set root window color at runtime
2025-09-26 13:47:32 +07:00
Talkashie bc7e68dfd1 Typos 2025-08-19 18:32:59 +07:00
Anish Mishra 0ad232423d Android: Add method to set root window color at runtime 2025-08-11 22:25:53 +07:00
Fredia Huya-Kouadio 3ade4b4b63 Address remaining feedback on https://github.com/godotengine/godot/pull/106709
Address https://github.com/godotengine/godot/pull/106709#discussion_r2114489487
2025-07-07 12:11:21 +07:00
Anish Mishra c82f7feb53 Document that `native file dialog` is only available on Android 10+ devices. 2025-06-27 17:07:50 +07: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
Pāvels Nadtočajevs 2d93e004b9
Cleanup and unify `DisplayServer` screen methods and documentation. 2025-06-02 08:03:48 +07: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 +07: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 +07:00
bruvzg 3e4e6e6c0c Improve native file dialog parent window selection. 2025-03-06 17:15:39 +07:00
Adam Scott 47f553ae0b
Delegate to the DisplayServer the task of handling mouse_mode
- Add `MOUSE_MODE_MAX` and various index checks
2025-01-28 11:22:27 +07:00
Rémi Verschelde 4d1cfc1784 Merge pull request #101061 from syntaxerror247/first-pr-2025
Android: Implement support for `native dialog`
2025-01-14 15:05:59 +07: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 +07:00
Pāvels Nadtočajevs e1f129cb52 Support MIME types in file dialog filters on macOS and Linux. 2025-01-04 22:05:35 +07:00
Hilderin 9d2a4c03be Embedding game process in editor 2024-12-18 17:52:42 +07:00
Anish Mishra 70b24c3d16 Android: Support for base color retrieval 2024-12-18 02:14:48 +07:00
Thaddeus Crews 7d950c1567
Merge pull request #98712 from syntaxerror247/android_accent_color
[Android] Implement support for accent color retrieval
2024-11-04 21:52:04 +07:00
Thaddeus Crews 2b49543478
Merge pull request #98709 from darksylinc/matias-upsidedown-splash
Fix splash screen upside down on Android
2024-11-04 21:52:01 +07:00
Anish Mishra 7b866f302f [Android] Implement support for accent color retrieval 2024-11-01 16:19:09 +07:00
Matias N. Goldberg b9a2f108fc Fix splash screen upside down on Android
Fixes an issue introduced in #96439 (see
https://github.com/godotengine/godot/pull/96439#issuecomment-2447288702)

Godot was relying on Java's
activity.getWindowManager().getDefaultDisplay().getRotation(); to apply
pre-rotation but this is wrong.

First, getRotation() may temporarily return a different value from the
correct one; which is what was causing the splash screen to be upside
down. It would return -90 instead of 90 for the first rendered frame.

But unfortunately, the splash screen is just one frame rendered for a
very long time, so the error lingered for a long time for everyone to
see.

Second, to determine what rotation to use, we should be looking at what
Vulkan told us, which is the value we pass to
VkSurfaceTransformFlagBitsKHR::preTransform.

This commit removes the now-unnecessary
screen_get_internal_current_rotation() function (which was introduced by
#96439) and now saves the preTransform value in the swapchain.
2024-10-31 16:52:26 +07:00
Anish Mishra b2130efb31 [Android] Implement native file picker support 2024-10-30 14:53:02 +07:00
Anish Mishra 0dfd18c84b [DisplayServer] Add feature flag for native file dialog access to `user/res` and `options` 2024-10-30 14:13:43 +07:00
Thaddeus Crews 05a4620e88
Merge pull request #98615 from Summersay415/three-opengls-please
Fix fallbacks to OpenGL
2024-10-29 19:25:48 +07:00
Thaddeus Crews 08d8909a65
Merge pull request #98574 from syntaxerror247/android_input_dialog
[Android] Implement native input dialog support
2024-10-29 19:25:37 +07:00
Clay John 748f4079e3
Merge pull request #96439 from darksylinc/matias-TheForge-pr03-rebased
Add Swappy & Pre-Transformed Swapchain
2024-10-29 12:34:40 +07:00
Anish Mishra be5d7f757d [Android] Implement native input dialog support 2024-10-29 20:02:08 +07:00
Matias N. Goldberg aaa0e2fddf Add Swappy & Pre-Transformed Swapchain
- Adds Swappy for Android for stable frame pacing
- Implements pre-transformed Swapchain so that Godot's compositor is in
charge of rotating the screen instead of Android's compositor
(performance optimization for phones that don't have HW rotator)

============================

The work was performed by collaboration of TheForge and Google. I am
merely splitting it up into smaller PRs and cleaning it up.

Changes from original PR:

- Removed "display/window/frame_pacing/android/target_frame_rate" option
to use Engine::get_max_fps instead.
- Target framerate can be changed at runtime using Engine::set_max_fps.
- Swappy is enabled by default.
- Added documentation.
- enable_auto_swap setting is replaced with swappy_mode.
2024-10-28 18:55:37 +07:00
Summersay415 6d14cd6ff9 Fix fallbacks to OpenGL 2024-10-28 22:57:19 +07:00
Thaddeus Crews 07e759b74a
Merge pull request #97771 from dsnopek/openxr-linux-egl
OpenXR: Add support for Wayland on Linux
2024-10-25 13:04:08 +07:00
David Snopek 256699ee31 OpenXR: Add support for Wayland on Linux 2024-10-04 11:44:05 +07:00
bruvzg 25f439c573
[DisplayServer] Implement has_hardware_keyboard method for Android and iOS. 2024-10-02 20:09:48 +07:00
SheepYhangCN 3b839347df Added fallback_to_opengl3 2024-09-20 06:10:05 +07:00
Robert Cadena 42b0e91ee4
Remove debug print from Android `DisplayServer.screen_get_scale` implementation 2024-09-16 11:17:26 +07:00
Fredia Huya-Kouadio 923b0f2e56 Restore 'Toggle fullscreen' menu for the Android editor and clean up the immersive mode logic 2024-08-28 09:50:34 +07:00
Fredia Huya-Kouadio 5e59819727 Cleanup Android input on render thread settings
Follow up to https://github.com/godotengine/godot/pull/93933
Clean up the set of settings use to control whether Android input should be dispatched on the render thread.

Addresses comments in https://github.com/godotengine/godot/pull/93933#issuecomment-2210437977
2024-07-09 09:15:18 +07:00
Pedro J. Estébanez 32d9c93af3 Improve handling of rendering startup errors 2024-06-28 19:31:50 +07:00
Paulo Poiati a3769c0edc Properly set window class in Wayland 2024-05-22 10:42:12 +07:00
A Thousand Ships 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 +07:00
bruvzg dc01658ee9
[DisplayServer] Add separate feature flags for different native dialog types. 2024-03-26 15:18:06 +07:00
bruvzg c65a667924
Move `global_menu_*` methods to a separate `NativeMenu` class. 2024-03-04 23:41:41 +07:00
bruvzg ee53ae28df
Add method to get "base" system UI color (macOS/Windows) and system theme change callback. 2024-02-13 18:38:53 +07:00
Dario 73eff10c76 Finish splitting functionality of the Vulkan and D3D12 backends into RenderingDeviceDriver. 2024-02-12 10:02:18 +07:00
Pedro J. Estébanez d5a5dd52e8 Avoid several null-dereferences of ApiContextRD 2024-02-06 19:55:01 +07:00
Pedro J. Estébanez 12a519bae2 Split RenderingDevice into API-agnostic and RenderingDeviceDriver parts
Credit and thanks to @bruzvg for multiple build fixes, update of 3rd-party items and MinGW support.

Co-authored-by: bruvzg <7645683+bruvzg@users.noreply.github.com>
2023-12-20 19:18:08 +07:00
Pedro J. Estébanez 2f47c57385 Add Direct3D 12 RenderingDevice implementation 2023-12-12 19:10:04 +07:00
Alexander Hartmann 5137497c18
Fix Android logic for deferred window input events being inverted
Notably fixes issues with `is_action_just_*` queries in `_physics_process`
for TouchScreenButton.

Fixes #66318.
Fixes #82396.
2023-10-24 10:43:05 +07:00
kobewi 09b30be86d Add vararg call() method to C++ Callable 2023-10-05 11:35:29 +07:00
Zae 428eb1309a Support dark mode on Android and iOS. 2023-09-26 11:00:04 +07:00
bruvzg 1887a9df19
[macOS/Windows] Add optional ANGLE backed OpenGL renderer support. Add EGL_ANDROID_blob_cache caching.
Co-authored-by: Riteo <riteo@posteo.net>
2023-09-21 14:21:00 +07:00