Fredia Huya-Kouadio
5f4a3e57de
Small set of fixes to the input logic
2022-11-07 08:57:08 -08:00
Fredia Huya-Kouadio
13e4770b97
Add double_tap attribute to InputEventScreenTouch
...
This provides parity with the `InputEventMouseButton` allowing for proper conversion between the two events.
2022-10-22 07:30:46 -07:00
Fredia Huya-Kouadio
ea9bb98f26
Merge pull request #66946 from m4gr3d/cursor_shape_logic_cleanup_main
...
Cleanup of the Android cursor shape logic
2022-10-05 13:07:34 -07:00
Fredia Huya-Kouadio
ffe0e3970f
Cleanup of the Android cursor shape logic
2022-10-05 11:57:57 -07:00
Fredia Huya-Kouadio
38113acf0d
Merge pull request #66941 from winterpixelgames/bugfix-android-null-input-event
...
Fix null in android keyboard handling.
2022-10-05 10:51:58 -07:00
Jason Knight
88df3e8d53
Fix null in android keyboard handling.
2022-10-05 11:17:02 -06:00
Fredia Huya-Kouadio
3178b042b3
Fix the gradle build configuration for the Android platform following https://github.com/godotengine/godot/pull/66242
2022-10-05 08:41:48 -07:00
clayjohn
4a1c7de57c
Split rendering driver project setting into renderer_name and rendering_driver. To differentiate between a driver (e.g. Vulkan or D3D12) and a renderer (e.g. clustered or mobile renderer).
2022-09-19 10:26:10 -07:00
Rémi Verschelde
df5a356e6c
Merge pull request #65501 from m4gr3d/fix_invalid_project_manager_path_main
...
Fix issue causing the project manager to crash because of missing path argument
2022-09-08 09:19:25 +02:00
Fredia Huya-Kouadio
cd544fd86b
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:21:34 -07:00
Fredia Huya-Kouadio
c3c0bea615
Enable long press, pan and scale gestures for the Godot Android Editor
...
Fix the bug causing the editor to crash when running the project.
2022-09-07 13:30:10 -07:00
Fredia Huya-Kouadio
1b3511ad49
Cleanup the Android input logic implementation
2022-09-07 13:30:10 -07:00
Aaron Franke
27b0f18275
Unify bits, arch, and android_arch into env["arch"]
...
Fully removes the `bits` option and adapts the code that relied on it.
Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2022-08-25 11:19:20 +02:00
Fredia Huya-Kouadio
b3117b6369
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:22:10 -07:00
Rémi Verschelde
557c16bb88
Merge pull request #62885 from madmiraal/fix-59931
2022-08-08 15:53:48 +02:00
Brian Semrau
103c0fa6e6
Add support for multiple virtual keyboard types
2022-08-04 10:41:33 -04:00
Fredia Huya-Kouadio
9679c67904
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:44:08 -07:00
Marcel Admiraal
6661141c21
Fix incorrect Android scancodes
2022-07-13 16:24:01 +01:00
Fredia Huya-Kouadio
f9c19298ce
Add full support for Android scoped storage.
...
This was done by refactoring directory and file access handling for the Android platform so that any general filesystem access type go through the Android layer.
This allows us to validate whether the access is unrestricted, or whether it falls under scoped storage and thus act appropriately.
2022-07-05 03:00:37 -07:00
Fredia Huya-Kouadio
6a7471b204
Merge pull request #62289 from madmiraal/fix-61816
...
Remove broken scroll gesture on Android
2022-06-25 18:48:14 -07:00
Gustavo Maciel
ec6d5d6cba
Update android:targetSdkVersion from 30 to 31
...
Starting in August 2022, new apps will need to target API level 31 (Android 12) or higher and adjust for behavioral changes.
Read more here: https://developer.android.com/google/play/requirements/target-sdk
2022-06-23 15:17:15 +02:00
Marcel Admiraal
076638f13b
Remove broken scroll gesture on Android
2022-06-21 17:14:20 +01:00
Marcel Admiraal
806e7d18d1
Ensure joystick has been added or not already removed when processing input
2022-06-16 18:15:25 +01:00
Rémi Verschelde
cd7871867f
Merge pull request #61579 from madmiraal/android-kotlin-java-version
...
Ensure Android Java and Kotlin compile to the same version
2022-06-01 18:31:09 +02:00
Marcel Admiraal
b19bbadcf0
Ensure Android Java and Kotlin compile to the same version
2022-06-01 16:23:44 +01:00
Fredia Huya-Kouadio
6f7ec7f723
Misc editor tweaks and polishes:
...
- Using a bucketized approach to select the editor scale in order to avoid too high values
- Add default app dimensions: used on Android devices with free floating app windows to set the default app frame
- Add ability to launch the Game window in an adjacent frame when in multi window mode
2022-05-31 23:49:40 -07:00
Rémi Verschelde
3bee0689bc
Merge pull request #61333 from m4gr3d/fix_restart_logic_main
2022-05-23 23:11:53 +02:00
Fredia Huya-Kouadio
d38ffda2c3
Fix the logic to restart the Godot application
2022-05-23 13:15:48 -07:00
Marcel Admiraal
cf0f967e6d
Remove duplicate Android sensor listener registrations
2022-05-23 20:33:13 +02:00
Marcel Admiraal
97e87a2daf
Fix screen_get_usable_rect returning display safe area
2022-05-02 09:31:32 +02:00
Rémi Verschelde
bc7ccc909b
Merge pull request #60551 from madmiraal/implement-3466
...
Add a method for obtaining display cutouts on Android
2022-05-02 07:56:41 +02:00
Rémi Verschelde
cbdc33bcf7
Merge pull request #60563 from madmiraal/fix-60562
2022-04-29 00:30:30 +02:00
bruvzg
6ab672d1ef
Implement text-to-speech support on Android, iOS, HTML5, Linux, macOS and Windows.
...
Implement TextServer word break method.
2022-04-28 14:35:41 +03:00
Marcel Admiraal
5924e2b90e
Check for null when retrieving clip data item text on Android
2022-04-27 16:12:33 +02:00
Marcel Admiraal
71ce5857ec
Add a method for obtaining display cutouts on Android
2022-04-26 13:51:21 +02:00
Rémi Verschelde
d9f7da2230
Merge pull request #60433 from madmiraal/remove-superfluous-null-check
...
Remove superfluous null check
2022-04-25 16:02:40 +02:00
Rémi Verschelde
b4a1a76bce
Merge pull request #60457 from madmiraal/replace-index-iterators
...
Replace index iterators with for each loops.
2022-04-25 16:02:28 +02:00
Rémi Verschelde
5e599d7c22
Merge pull request #60441 from madmiraal/remove-superfluous-inputmanager
...
Remove superfluous Android InputManager interface and implementation
2022-04-25 15:41:55 +02:00
Marcel Admiraal
334ebd7eb7
Replace index iterators with for each loops.
2022-04-23 09:45:44 +02:00
Marcel Admiraal
2f225bf2c5
Remove superfluous check for minimum Android SDK.
2022-04-22 18:55:45 +02:00
Marcel Admiraal
22ca5b2eba
Remove superfluous Android InputManager interface and implementation
2022-04-22 18:52:06 +02:00
Marcel Admiraal
988432b8bb
Remove superfluous null check
2022-04-22 17:33:27 +02:00
Fredia Huya-Kouadio
8eabf77f54
Update the editor display scale based on the device's scaled density
2022-04-04 09:23:43 -07:00
Fredia Huya-Kouadio
b176b31f5d
Fix flickering issues with low processor mode on Android
2022-03-29 12:17:09 -07:00
Fredy Huya-Kouadio
5711037bf6
Android port of the Godot Editor
...
These set of changes focus primarily on getting the core logic and overall Godot Editor UI and functionality up and running natively on Android devices.
UI tweaks / cleanup / polish, as well configuration for Android specific functionality / restrictions will be addressed in follow-up PRs iteratively based on feedback.
Co-authored-by: thebestnom <shoval.arad@gmail.com>
2022-03-28 14:04:51 -07:00
Fredia Huya-Kouadio
a2bf47de2b
Setup logic to publish the Godot Android library to MavenCentral
2022-03-14 14:53:39 -07:00
Rémi Verschelde
b8b4580448
Style: Cleanup single-line blocks, semicolons, dead code
...
Remove currently unused implementation of TextureBasisU, could be re-added
later on if needed and ported.
2022-02-16 14:06:29 +01:00
jordi
54dec44dba
Add screen_get_refresh_rate to DisplayServer
2022-02-03 21:50:32 -06:00
Haoyu Qiu
314f309035
Add DisplayServer.clipboard_has()
to check clipboard content
2022-01-19 23:44:20 +08:00
Rémi Verschelde
ba2bdc478b
Style: Remove inconsistently used @author
docstrings
...
Each file in Godot has had multiple contributors who co-authored it over the
years, and the information of who was the original person to create that file
is not very relevant, especially when used so inconsistently.
`git blame` is a much better way to know who initially authored or later
modified a given chunk of code, and most IDEs now have good integration to
show this information.
2022-01-04 20:42:50 +01:00
Rémi Verschelde
fe52458154
Update copyright statements to 2022
...
Happy new year to the wonderful Godot community!
2022-01-03 21:27:34 +01:00
Marcel Admiraal
6e38fc4b80
Only rotate Android sensor values for sensors that need them rotated
2021-12-15 18:15:08 +00:00
Rémi Verschelde
c038768379
Merge pull request #55159 from m4gr3d/add_oculus_openxr_config_master
2021-11-22 10:28:06 +01:00
Marcel Admiraal
2fa4c6498a
Fix Android get_screen_orientation()
not returning valid values
2021-11-21 12:05:25 +00:00
Fredia Huya-Kouadio
882ec0d611
Add support for OpenXR export configurations.
2021-11-20 06:10:44 -08:00
Pedro J. Estébanez
cab870e9d3
Drop pointless Android depth buffer setting
2021-11-15 11:02:01 +01:00
Rémi Verschelde
8a15e404b2
Merge pull request #54463 from RandomShaper/fix_gl3_32bits
2021-11-09 11:55:26 +01:00
Fredia Huya-Kouadio
bd3d99ca8a
Add default minSdkVersion
and targetSdkVersion
in the AndroidManifest.xml file
2021-11-03 21:54:19 -07:00
Hugo Locurcio
665d29c16d
Fix new projects always being created with OpenGL
...
Only Vulkan is fully implemented for now, so OpenGL isn't available
in the project manager yet.
This also makes the rendering driver checks use lowercase names
everywhere for consistency.
2021-11-01 22:04:36 +01:00
Pedro J. Estébanez
07adf1193d
Drop broken Android 32-bit framebuffer setting for a reliable one for depth buffer
2021-11-01 14:04:24 +01:00
Rémi Verschelde
0ae65472e7
clang-format: Enable BreakBeforeTernaryOperators
...
clang-format keeps breaking the way it handles break *after* ternary operators,
so I give up and go with the only style they seem to actually test.
2021-10-28 15:57:41 +02:00
Rémi Verschelde
3a6be64c12
clang-format: Various fixes to comments alignment from clang-format
13
...
All reviewed manually and occasionally rewritten to avoid bad auto formatting.
2021-10-28 15:43:36 +02:00
Rémi Verschelde
3b11e33a09
clang-format: Disable alignment of operands, too unreliable
...
Sets `AlignOperands` to `DontAlign`.
`clang-format` developers seem to mostly care about space-based indentation and
every other version of clang-format breaks the bad mismatch of tabs and spaces
that it seems to use for operand alignment. So it's better without, so that it
respects our two-tabs `ContinuationIndentWidth`.
2021-10-28 15:19:35 +02:00
Marcel Admiraal
23311a6ed3
Use current androidx Fragment library instead of legacy libraries
2021-09-08 10:17:26 +01:00
PouleyKetchoupp
0b681d5834
Add support for adding plugin views behind the main view on Android
...
Doesn't change the default behavior, but allows plugins to add their
view behind the main view, which gives more control over what happens
with inputs and can be useful along with transparent rendering.
2021-09-01 10:01:55 -07:00
Aaron Franke
ae1702bee5
Replace HTTP links with HTTPS for sites with HTTPS versions
2021-08-22 20:13:11 -05:00
Marcus Brummer
47f338fc12
Check if vibration duration is > 0 on Android
2021-08-21 17:33:25 +02:00
Fredia Huya-Kouadio
f4222733ca
Delegate handling and implementation of the restart functionality to the Godot host.
2021-08-18 10:24:42 -07:00
ne0fhyk
3a00ff1cce
Add partial support for Android scoped storage.
...
This is done by providing API access to app specific directories which don't have any limitations and allows us to bump the target sdk version to 30.
In addition, we're also bumping the min sdk version to 19 as version 18 is no longer supported by Google Play Services and only account of 0.3% of Android devices.
2021-08-16 23:11:56 -07:00
Pedro J. Estébanez
e745088f1f
Switch to input buffering on Android
...
Key, touch and joystick events will be passed directly from the UI thread to Godot, so they can benefit from agile input flushing.
As another consequence of this new way of passing events, less Java object are created at runtime (`Runnable`), which is good since the garbage collector needs to run less.
`AndroidInputHandler` is introduced to have a smaller cross-thread surface. `main_loop_request_go_back()` is removed in favor just inline calling `send_window_event()` at the most caller's convenience (i.e., leveraging the new `p_deferred`` parameter as appropriate).
Lastly, `get_mouse_position()` and `get_mouse_button_state()` now just call through `Input` to avoid the need of sync of mouse data tracked on the UI thread.
2021-08-13 11:45:50 +02:00
Fredia Huya-Kouadio
28a99e4cf6
Resolve issue where the Godot app remains stuck when resuming.
...
This was caused by the fact that a new instance of Godot was created at resume while a previous instance already existed.
The previous instance would then go through its cleanup lifecycle, and would thus attempt to close the entire app, leading to the system to restart the app, thus starting the cycle anew.
The fix involves reusing the previous instance of Godot if one is available instead of creating a new one, as well as giving control to the host activity for how the process should be terminated.
2021-08-12 21:05:18 -07:00
Marcus Brummer
20b3e2cc94
Properly finishes Godot's Android activity when destroyed by the system
2021-08-12 15:33:51 +02:00
luz paz
3564c16cb8
Fix various typos with codespell
...
Found via `codespell -q 3 -S ./thirdparty,*.po,./DONORS.md -L ackward,ang,ans,ba,beng,cas,childs,childrens,dof,doubleclick,fave,findn,hist,inout,leapyear,lod,nd,numer,ois,ony,paket,seeked,sinc,switchs,te,uint`
2021-07-25 11:21:51 +02:00
Rémi Verschelde
5d7c23dcc6
Merge pull request #50220 from madmiraal/fix-50125
...
Queue the calls to GodotLib.key when Android virtual done is pressed
2021-07-06 23:46:21 +02:00
Marcel Admiraal
57317ce7b8
Remove Android onKeyMultiple override
2021-07-06 17:39:42 +01:00
Marcel Admiraal
1856f16378
Queue the calls to GodotLib.key when Android virtual done is pressed
2021-07-06 17:32:09 +01:00
Rémi Verschelde
c47b6f4b5c
Merge pull request #50107 from madmiraal/android-use-lambdas
...
Replace single method anonymous classes with lambdas in Godot Java code
2021-07-06 18:10:38 +02:00
Marcel Admiraal
23e152040b
Use static inner classes in Godot Java code
2021-07-03 05:50:04 +01:00
Marcel Admiraal
a7825ca12a
Replace single method anonymous classes with lambdas in Godot Java code
2021-07-03 05:13:31 +01:00
Rémi Verschelde
f2229bb1ea
Merge pull request #50085 from madmiraal/android-replace-stringbuffer
...
Use StringBuilder instead StringBuffer in Godot Java code
2021-07-02 22:09:50 +02:00
Rémi Verschelde
aee59c3547
Merge pull request #50083 from madmiraal/android-fix-raw-use
...
Fix raw use of parameterized Class
2021-07-02 22:09:39 +02:00
Marcel Admiraal
3f95bbed73
Remove redundant explicit types in Godot Java code
2021-07-02 17:45:30 +01:00
Marcel Admiraal
61ee51d2bf
Use StringBuilder instead StringBuffer in Godot Java code
2021-07-02 16:57:12 +01:00
Rémi Verschelde
710effdaad
Merge pull request #50078 from madmiraal/android-remove-unused-imports
2021-07-02 17:45:29 +02:00
Marcel Admiraal
d237f7d33d
Fix raw use of parameterized Class
2021-07-02 16:35:52 +01:00
Marcel Admiraal
a38fd4a4c2
Remove unused imports from Android Java code
2021-07-02 12:57:55 +01:00
Rémi Verschelde
6ef0b8fcd3
Merge pull request #50074 from madmiraal/android-replace-c-array
...
Use Java array declarations not C-style declarations in Android Java code
2021-07-02 13:44:22 +02:00
Rémi Verschelde
42184dd6d5
Merge pull request #50072 from madmiraal/android-remove-interface-modifiers
...
Remove redundant interface modifiers from Android Java code
2021-07-02 12:35:14 +02:00
Marcel Admiraal
721b3d56c5
Use Java array declarations not C-style declarations in Android Java code
2021-07-02 11:09:09 +01:00
Marcel Admiraal
a74e803a4f
Remove redundant interface modifiers from Android Java code
2021-07-02 09:37:45 +01:00
Marcel Admiraal
360447001d
Remove unnecessary semicolons from Android Java code
2021-07-02 08:54:09 +01:00
Marcel Admiraal
8270e101a7
Fix unchecked call to put() warning in GodotInputHandler.java
2021-06-30 12:13:05 +01:00
Rémi Verschelde
bc1fcb9c65
Merge pull request #49435 from madmiraal/add-android-external-dir
...
Add OS.get_external_data_dir() to get Android external directory
2021-06-10 22:11:02 +02:00
Marcel Admiraal
b3a962945e
Add OS.get_external_data_dir() to get Android external directory
2021-06-10 16:48:17 +01:00
Marcel Admiraal
4ba2ed332e
Remove unused AudioDriverAndroid from Android
2021-06-10 08:32:56 +01:00
Rémi Verschelde
c1c76850cb
Style: Cleanup uses of double spaces between words
...
Or after punctuation. Tried to leave third-party stuff alone, unless it has
been heavily modified for Godot.
2021-06-07 11:03:08 +02:00
Szymon Majewski
5634093703
Fixed screen orientation on Android
2021-05-24 16:58:35 -07:00
thebestnom
f5b5e00a01
Android: Add support for cursor icons
2021-05-19 22:01:51 +03:00
Fredia Huya-Kouadio
1f16ba2696
Add support for forwarding callbacks from Godot's parent activity.
2021-04-12 16:48:35 -07:00
Fredia Huya-Kouadio
a21457155b
Fix issue causing the response callback to be invoked with the invalid requestCode
and deprecate support for forwarding callbacks from Godot's parent activity.
2021-04-09 13:42:49 -07:00