Commit graph

198 commits

Author SHA1 Message Date
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
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
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
Fredia Huya-Kouadio
6d1bf81e01
Address kotlin build warnings
(cherry picked from commit 242ffb72b8)
2023-08-29 12:42:10 +02:00
Omar Shehata
42d2187f38
Fix double tap & drag on Android
(cherry picked from commit 0c94750642)
2023-08-28 17:27:15 +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
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
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
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
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
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
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
48a55ffad3 Provide a delegate implementation for the killProcess logic on Android
The implementation forwards the kill request to the Godot host for handling. If the Godot host is unable to handle the request, it falls back to the `OS_Unix::kill(...)` implementation.
2023-01-26 03:33:22 -08:00
Fredia Huya-Kouadio
48aedb239e Update the logic to calculate the screen scale on Android
Takes into account the ratio between the screen size and the default window dimensions.
2023-01-21 22:47:02 -08:00
Rémi Verschelde
1426cd3b3a
One Copyright Update to rule them all
As many open source projects have started doing it, we're removing the
current year from the copyright notice, so that we don't need to bump
it every year.

It seems like only the first year of publication is technically
relevant for copyright notices, and even that seems to be something
that many companies stopped listing altogether (in a version controlled
codebase, the commits are a much better source of date of publication
than a hardcoded copyright statement).

We also now list Godot Engine contributors first as we're collectively
the current maintainers of the project, and we clarify that the
"exclusive" copyright of the co-founders covers the timespan before
opensourcing (their further contributions are included as part of Godot
Engine contributors).

Also fixed "cf." Frenchism - it's meant as "refer to / see".

Backported from #70885.
2023-01-10 15:26:54 +01:00
Dennis Ranke
55441f2301
handle ambiguous input events as touch events
there can be events can have both SOURCE_TOUCHSCREEN and SOURCE_STYLUS. handle them as touch events rather than mouse events.

(cherry picked from commit 408000752c)
2022-12-15 12:18:41 +01:00
Fredia Huya-Kouadio
de45636fd3
Upgrade Android gradle plugin to version 7.2.1
(cherry picked from commit 151233b702)
2022-12-12 14:49:23 +01:00
Fredia Huya-Kouadio
d08e057194
Fix parsing of the keep_screen_on display setting
(cherry picked from commit 3c75887d41)
2022-11-30 15:52:10 +01:00
Fredia Huya-Kouadio
5149311316 Add support for pointer capture 2022-11-07 08:38:28 -08:00
Fredia Huya-Kouadio
be4b07c3e4 Add double_tap attribute to InputEventScreenTouch
This provides parity with the `InputEventMouseButton` allowing for proper conversion between the two events.
2022-10-20 11:56:11 -07:00
Fredia Huya-Kouadio
6f153593dc
Merge pull request #66945 from m4gr3d/add_mouse_cursor_shape_support_3x
Add cursor shape support for the Android platform
2022-10-05 13:06:58 -07:00
Fredia Huya-Kouadio
46f091a803 Add cursor shape support for the Android platform 2022-10-05 12:08:54 -07:00
Jason Knight
31fe6848e8 Fix null in android keyboard handling. 2022-10-05 11:18:39 -06:00
Rémi Verschelde
bfe60393f5
Merge pull request #65503 from m4gr3d/fix_invalid_project_manager_path_3x 2022-09-08 09:48:43 +02:00
Fredia Huya-Kouadio
4be7c91cd9 Fix issue causing the project manager to crash because of missing path argument
In the process, the initialization logic is updated to show an error message and gracefully close the engine when setup errors occur.
2022-09-07 14:25:22 -07:00
Fredia Huya-Kouadio
440fa10246 Cleanup the Android input logic implementation 2022-09-07 13:29:31 -07:00
Fredia Huya-Kouadio
30479543b0 Fix issue preventing the Android Editor from displaying the project content
The issue was causing by a bug within the logic for `FileAccessFilesystemJAndroid#eof_reached()` causing that value to remain false after the eof was reached.
This in turn caused an infinite loop in the file scanner preventing the project's content from showing up.
2022-08-15 02:21:34 -07:00
Fredia Huya-Kouadio
ef44e63f22 Fix GodotTTS native initialization 2022-08-14 22:01:31 -07:00
Rémi Verschelde
8cc8127bb1
Merge pull request #62886 from madmiraal/fix-59931-3.x 2022-08-08 15:54:39 +02:00
Rémi Verschelde
0bed7ea63f
Merge pull request #61316 from bruvzg/tts_3x
[3.x] Backport text-to-speech support.
2022-08-05 23:45:51 +02:00
Rémi Verschelde
26762a71b6
Merge pull request #58537 from winterpixelgames/feature/virtual-keyboard-types-3.x 2022-08-05 19:37:13 +02:00
Fredia Huya-Kouadio
fc2c202312 Address remaining scoped storage regressions
- Accelerate common path used to check the storage scope for a given path
- Update the logic for the `get_as_text()` method - previous logic loads the content of a text file one byte at a time
2022-07-26 07:42:49 -07:00
Marcel Admiraal
2f7de4c8ed Fix incorrect Android scancodes 2022-07-13 16:24:37 +01:00
Brian Semrau
ce24b48e50 Add support for multiple virtual keyboard types 2022-07-07 14:22:28 -04:00
Fredia Huya-Kouadio
27b63247fd Fix issue causing the Android Editor port to crash when saving a scene
In addition:
- Disable 'adb devices' query (not supported when running the editor on Android devices
- Add `move_to_trash` implementation for Android devices
2022-07-05 02:59:52 -07:00
Fredia Huya-Kouadio
0abc4ad129 Fix the directory copy bug issue
The issue was caused by a logic bug causing end of file to be reported for empty files.
2022-07-04 12:56:53 -07:00