Commit Graph

1089 Commits

Author SHA1 Message Date
Alexander Hartmann e482dcbc68 fix lost old callback when continuous call requestRenderAndNotify 2024-06-24 20:56:12 +02:00
melquiadess cd9f18dbf0
Add POST_NOTIFICATIONS permission to the list of permissions available in the Export dialog
(cherry picked from commit 739190ca2b)
2024-05-01 12:08:26 +02:00
Fredia Huya-Kouadio 4e7f4ee864
Fix gradle build errors when the build path contains non-ASCII characters
(cherry picked from commit f1887a30f3)
2024-04-25 16:24:14 +02:00
lawnjelly 758daacd24
Merge pull request #88490 from AlekseyKapustyanenko/Rotary-input-3.x
[3.x] Add rotary input support for Android platform
2024-03-08 14:11:51 +00:00
Aleksey Kapustyanenko 99c8cd2b17 Rotary input for 3.x 2024-02-18 22:25:10 +04:00
BZ1234567890 1065527ca7 [3.x] [Android 14] Fix GodotEditText white box showing during game load 2024-02-15 01:10:00 +01:00
Fredia Huya-Kouadio eba77be573 Update Android dependencies for the project
- Update Java version from 11 to 17
- Update Android gradle plugin version from 7.2.1 to 8.2.0
- Update gradle version from 7.4.2 to 8.2
- Update target SDK from 33 to 34
- Update build tools version from 33.0.2 to 34.0.0
- Update kotlin version from 1.7.0 to 1.9.20
- Update Android fragment version from 1.3.6 to 1.6.2
- Update AndroidX window version from 1.0.0 to 1.2.0
- Update Nexus plugin version from 1.1.0 to 1.3.0
2024-01-25 13:58:08 -08:00
Fredia Huya-Kouadio 194452bf38 Update the logic used to start / stop the GL thread
Currently the GL thread is started / stopped when the activity is respectively resumed / paused. However, according to the `GLSurfaceView` documentation, this should be done instead when the activity is started / stopped, so this change updates the start / stop logic for the GL thread to match the documentation.
2023-12-20 20:38:34 -08:00
Rémi Verschelde 4c4cb12e38
Merge pull request #84409 from m4gr3d/add_android_gestures_project_settings
[3.x] Add Android project settings for gesture support
2023-12-13 13:24:35 +01:00
Rémi Verschelde e96c42f0e1
Merge pull request #84279 from m4gr3d/update_godot_app_launch_mode_3x
[3.x] Update the `launchMode` for the `GodotApp` activity to allow other activities to be part of the same task
2023-11-15 18:28:18 +01:00
Rémi Verschelde 6618a2e745
Merge pull request #84415 from m4gr3d/fix_editor_crash_after_backing_from_game_3x
[3.x] Fix Android editor crash issue
2023-11-14 11:37:39 +01:00
Fredia Huya-Kouadio ec8a4c025d Fix Android editor crash issue
Fix issue causing the Android editor to crash when pressing back from a running project
2023-11-03 07:54:04 -07:00
Fredia Huya-Kouadio e9045a6d03 Add Android project settings for gesture support
- Include project setting to enable long press for Android devices
- Include project setting to enable pan and scale gestures on Android devices
2023-11-03 05:25:18 -07:00
Fredia Huya-Kouadio 1ce2b800b5 Automatically pick the Android sdk path using environment variables 2023-11-01 07:36:41 -07:00
Fredia Huya-Kouadio cf706e2dc3 Update the `launchMode` for the `GodotApp` activity to allow other activities to be part of the same task
For details, see https://developer.android.com/guide/topics/manifest/activity-element#lmode
2023-10-31 19:12:34 -07:00
Fredia Huya-Kouadio 620fdd1f07 Fix Android input routing logic when using a hardware keyboard
When a hardware keyboard is connected, all key events come through so we can route them directly to the engine.
This is not the case for soft keyboards, for which the current logic was designed as it requires extra processing.
2023-09-14 04:29:15 -07:00
Ben Rog-Wilhelm 1e2e3b21f3
Fix: incorrectly .gitignored files.
(cherry picked from commit 90f3992036)
2023-08-29 12:55:44 +02:00
Fredia Huya-Kouadio 6d1bf81e01
Address kotlin build warnings
(cherry picked from commit 242ffb72b8)
2023-08-29 12:42:10 +02:00
Hiroki Taira 4c00ecd146
Add support for DPAD Center key of Android TV remote controller
(cherry picked from commit 9dc84e3581)
2023-08-28 17:27:16 +02:00
Omar Shehata 42d2187f38
Fix double tap & drag on Android
(cherry picked from commit 0c94750642)
2023-08-28 17:27:15 +02:00
Rémi Verschelde 55550da68b
SCons: Disable C++ exception handling
Upon investigating the extremely slow MSVC build times in #80513, I noticed
that while Godot policy is to never use exceptions, we weren't enforcing it
with compiler flags, and thus still included exception handling code and
stack unwinding.

This is wasteful on multiple aspects:

- Binary size: Around 20% binary size reduction with exceptions disabled
  for both MSVC and GCC binaries.
- Compile time:
  * More than 50% build time reduction with MSVC.
  * 10% to 25% build time reduction with GCC + LTO.
- Performance: Possibly, needs to be benchmarked.

Since users may want to re-enable exceptions in their own thirdparty code
or the libraries they compile with Godot, this behavior can be toggled with
the `disable_exceptions` SCons option, which defaults to true.
2023-08-16 10:34:10 +02:00
Fredia Huya-Kouadio 5cf0ba88e3 Add parameters for the Godot Activity starting intent to allow restarting or force-quitting the engine
Follow-up code cleanup for https://github.com/godotengine/godot/pull/78130
2023-06-15 21:45:30 -07:00
Fredia Huya-Kouadio ee07f60b07 Fix issue causing the last edited project to open while switching to another one.
Fixes https://github.com/godotengine/godot/issues/76562
2023-06-11 23:19:02 -07:00
Fredia Huya-Kouadio f3026c2aa0
Merge pull request #78085 from m4gr3d/fix_multitouch_detection_spatial_viewport_3x
[3.x] Fix spatial viewport multitouch detection support
2023-06-11 18:08:30 -07:00
Fredia Huya-Kouadio 8f44765831 Fix spatial viewport multitouch detection support
Regression introduced by https://github.com/godotengine/godot/pull/77497
2023-06-10 08:52:26 -07:00
Fredia Huya-Kouadio b5a908c985 Add setting to control the window used to run the project for the Android editor
The follow options were added to the (new) `run/window_placement/android_window` editor setting:

- `Auto`: choose how to run the project based on the device screen size
- `Same as Editor`: run the project in the same window as the editor
- `Side-by-side with Editor`: run the project in an adjacent window to the editor
2023-06-07 18:20:14 -07:00
Fredia Huya-Kouadio 9c334fa242 Fix issue causing the Android editor to crash when creating a new AudioStreamMicrophone
Fixes https://github.com/godotengine/godot/issues/73801
2023-05-31 00:21:57 -07:00
Rémi Verschelde b71701714f
Merge pull request #77497 from m4gr3d/improve_keyboard_mouse_support_3x
[3.x] Improve touchpad and mouse support for the Android editor
2023-05-28 12:03:09 +02:00
bruvzg 18ee8da7d6
Add audio/general/text_to_speech project setting to enable/disable TTS. 2023-05-26 20:57:29 +03:00
Fredia Huya-Kouadio ccd36e0dbe Improve touchpad and mouse support for the Android editor 2023-05-25 20:09:35 -07:00
Fredia Huya-Kouadio 3bef5f29ec Update the format for the app version code and name 2023-05-24 14:40:37 -07:00
Rémi Verschelde 1538b870f1
Merge pull request #76715 from m4gr3d/add_input_event_cancelled_state_3x
[3.x] Augment the `InputEvent` class with a `CANCELED` state
2023-05-17 18:21:42 +02:00
Rémi Verschelde e5e73e7068
Merge pull request #74583 from m4gr3d/setup_play_store_builds_3x
[3.x] Update the gradle build tasks to generate play store builds.
2023-05-17 18:21:36 +02:00
Fredia Huya-Kouadio 94d6c3dcc6 Augment the `InputEvent` class with a `CANCELED` state
The `InputEvent` class currently supports the `pressed` and `released` states, which given the binary nature, is represented by a `bool` field.
This commit introduced the `CANCELED` state, which signals that an ongoing input event has been canceled.
To represent all the states, the `InputEventState` enum is added and the `InputEvent` logic is refactored accordingly.
2023-05-12 15:22:54 -07:00
Fredia Huya-Kouadio f9ae38d87c
Merge pull request #73692 from m4gr3d/update_touchscreen_editor_settings_3x
[3.x] Enable granular control of touchscreen related settings
2023-05-08 09:10:36 -07:00
Fredia Huya-Kouadio 30e3e301e0 Update the gradle build tasks to generate play store builds.
Configure the gradle builds to sign and build the release version of the Godot Android Editor
2023-04-27 22:13:00 -07:00
Fredia Huya-Kouadio 3943de2e6c
Merge pull request #71875 from m4gr3d/editor_optimization_3x
[3.x] Add benchmark logic
2023-04-22 20:18:45 -07:00
Fredia Huya-Kouadio 837db0b051 Downgrade android gradle plugin to version 7.2.1.
Version 7.3.0 changes the build layout which causes updates to the generated shared libraries to not be picked up.
2023-04-21 13:19:45 -07:00
Jason Knight cec8e09948 Fix null in android text entry system. 2023-04-12 09:20:44 -06:00
Rémi Verschelde 2c2ae757a8
Merge pull request #75205 from m4gr3d/bump_target_sdk_33_3x
[3.x] Bump the target SDK version to 33 (Android 13)
2023-04-11 10:53:39 +02:00
Fredia Huya-Kouadio 61e41facc7 Enable granular control of touchscreen related settings 2023-04-05 10:11:53 -07:00
Fredia Huya-Kouadio 2803c471e8 Bump the target SDK version to 33 (Android 13) 2023-03-21 19:24:39 -07:00
Fredia Huya-Kouadio f3cdff46fc Add benchmark logic
Add benchmarking measuring methods to `OS` to allow for platform specific overrides (e.g: can be used to hook into platform specific benchmarking and tracing capabilities).
2023-03-20 23:29:36 -07:00
Fredia Huya-Kouadio e2c7d3e6c0 Fix directory access when the running app has the `All files access` permission 2023-03-20 09:00:48 -07:00
Rémi Verschelde d2ac29abe3
Merge pull request #74469 from m4gr3d/configure_snapshot_publish_version_3x
[3.x] Configure maven central snapshot versions for the Godot Android library
2023-03-06 12:38:49 +01:00
Fredia Huya-Kouadio 0e2292f341 Configure maven central snapshot versions for the Godot Android library
A snapshot version is a version that has not yet been released which allows us to deploy the same transient version incrementally, without requiring projects to upgrade the artifact version they're consuming. Those projects can use the same version to get an updated snapshot version.
2023-03-06 01:29:41 -08:00
necrashter 9bdb585318
Use the new API for virtual keyboard height detection on Android, bugfix 2023-03-06 00:24:09 +03:00
Fredia Huya-Kouadio 6528f984fe Fix the issue causing long-press on a selected node on the scene tree to trigger both the context menu and the rename functionality 2023-02-12 21:20:51 -08:00
Fredia Huya-Kouadio b04c9a71f4 Implement file provider capabilities
The previously used file sharing api was restricted after Android N causing the engine to crash whenever used on devices running Android N or higher.
2023-02-01 01:01:20 -08:00
Fredia Huya-Kouadio aed400cce2
Merge pull request #71654 from m4gr3d/increase_scroll_bar_size_for_touchscreen_3x
[3.x] Update the size of the scrollbar for the editor on touchscreen devices
2023-01-31 21:52:03 -08:00