summaryrefslogtreecommitdiff
path: root/platform/android
AgeCommit message (Collapse)Author
2021-08-17Merge pull request #50360 from m4gr3d/address_external_dir_access_masterRémi Verschelde
Add support for Android scoped storage
2021-08-16Add partial support for Android scoped storage.ne0fhyk
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[android] Fixed wrong button mask for right clickModProg
2021-08-13Switch to input buffering on AndroidPedro J. Estébanez
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-13Add input buffering frameworkPedro J. Estébanez
Input buffering is implicitly used by event accumulation, but this commit makes it more generic so it can be enabled for other uses. For desktop OSs it's currently not feasible given main and UI threads are the same).
2021-08-13Improve input event accumulationPedro J. Estébanez
- API has been simplified: all events now go through `parse_input_event()`. Whether they are accumulated or not depends on the `use_accumulated_input` flag. - Event accumulation is now thread-safe (it was not needed so far, but it prepares the ground for the following changes). - Touch drag events now support accumulation.
2021-08-13Merge pull request #51586 from m4gr3d/investigate_godot_resume_stalls_masterRémi Verschelde
Resolve issue where the Godot app remains stuck when resuming.
2021-08-13Merge pull request #51524 from RandomShaper/faster_vmaRémi Verschelde
Upgrade Vulkan Memory Allocator, use Volk on Android
2021-08-12Add support for prompting the user to retain app data on uninstall.Fredia Huya-Kouadio
Supported on Android 10 and higher.
2021-08-12Resolve issue where the Godot app remains stuck when resuming.Fredia Huya-Kouadio
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-13Upgrade Vulkan memory allocatorPedro J. Estébanez
2021-08-12Android: Use volk instead of NDK Vulkan headersRémi Verschelde
We no longer build the Vulkan loader, and volk lets us load it dynamically. Roblox uses volk on Android so it should work well for us too.
2021-08-12Merge pull request #50771 from naithar/feature/platform-export-refactoring-4.0Rémi Verschelde
2021-08-12Split android platform export template into multiple filesSergey Minakov
2021-08-12Properly finishes Godot's Android activity when destroyed by the systemMarcus Brummer
2021-08-12Use "volk" instead of statically linked Vulkan loader.bruvzg
2021-08-10Use Key enum instead of plain integersAaron Franke
2021-08-01Make progress and errors translatable when exporting to AndroidHaoyu Qiu
2021-07-27Fix custom build exportFredia Huya-Kouadio
2021-07-25Fix various typos with codespellluz paz
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-23Use C++ iterators for Lists in many situationsAaron Franke
2021-07-22Move `alert` function from `DisplayServer` to `OS`.bruvzg
2021-07-20Disable resource optimizations for release builds as it breaks the legacy ↵ne0fhyk
build system.
2021-07-20Merge pull request #50206 from groud/undoredo_increase_args_countRémi Verschelde
Increase the number of arguments accepted by UndoRedo methods
2021-07-18Optimize StringName usagereduz
* Added a new macro SNAME() that constructs and caches a local stringname. * Subsequent usages use the cached version. * Since these use a global static variable, a second refcounter of static usages need to be kept for cleanup time. * Replaced all theme usages by this new macro. * Replace all signal emission usages by this new macro. * Replace all call_deferred usages by this new macro. This is part of ongoing work to optimize GUI and the editor.
2021-07-16Modernize Display server to use override keywordHendrik Brucker
2021-07-15Addes ability to load build sources from file.reduz
* If not present, the dialog asks to load build sources from a file. * The export templates check now also verifies that build sources are installed and skips the template check. This makes Android development easier.
2021-07-13Implement the ability to disable classesreduz
* This PR adds the ability to disable classes when building. * For now it's only possible to do this via command like: `scons disable_classes=RayCast2D,Area3D` * Eventually, a proper UI will be implemented to create a build config file to do this at large scale, as well as detect what is used in the project.
2021-07-10Merge pull request #48622 from Geometror/reimplement-disableable-vsyncHugo Locurcio
2021-07-06Merge pull request #50220 from madmiraal/fix-50125Rémi Verschelde
Queue the calls to GodotLib.key when Android virtual done is pressed
2021-07-06Increase the number of arguments accepted by UndoRedo methodsGilles Roudière
2021-07-06Remove Android onKeyMultiple overrideMarcel Admiraal
2021-07-06Queue the calls to GodotLib.key when Android virtual done is pressedMarcel Admiraal
2021-07-06Merge pull request #50107 from madmiraal/android-use-lambdasRémi Verschelde
Replace single method anonymous classes with lambdas in Godot Java code
2021-07-06Restructure and reimplement vsync optionsHendrik Brucker
-Add a v-sync mode setting which allows to choose between DISABLED, ON, ADAPTIVE and MAILBOX -Removed the V-Sync via Compositor option
2021-07-03Use static inner classes in Godot Java codeMarcel Admiraal
2021-07-03Replace single method anonymous classes with lambdas in Godot Java codeMarcel Admiraal
2021-07-02Merge pull request #50085 from madmiraal/android-replace-stringbufferRémi Verschelde
Use StringBuilder instead StringBuffer in Godot Java code
2021-07-02Merge pull request #50083 from madmiraal/android-fix-raw-useRémi Verschelde
Fix raw use of parameterized Class
2021-07-02Remove redundant explicit types in Godot Java codeMarcel Admiraal
2021-07-02Use StringBuilder instead StringBuffer in Godot Java codeMarcel Admiraal
2021-07-02Merge pull request #50078 from madmiraal/android-remove-unused-importsRémi Verschelde
2021-07-02Fix raw use of parameterized ClassMarcel Admiraal
2021-07-02Android: Initialize mouse modethebestnom
2021-07-02Remove unused imports from Android Java codeMarcel Admiraal
2021-07-02Merge pull request #50074 from madmiraal/android-replace-c-arrayRémi Verschelde
Use Java array declarations not C-style declarations in Android Java code
2021-07-02Merge pull request #50072 from madmiraal/android-remove-interface-modifiersRémi Verschelde
Remove redundant interface modifiers from Android Java code
2021-07-02Use Java array declarations not C-style declarations in Android Java codeMarcel Admiraal
2021-07-02Remove redundant interface modifiers from Android Java codeMarcel Admiraal
2021-07-02Remove unnecessary semicolons from Android Java codeMarcel Admiraal