summaryrefslogtreecommitdiff
path: root/platform/android
AgeCommit message (Collapse)Author
2020-03-30SCons: Format buildsystem files with psf/blackRémi Verschelde
Configured for a max line length of 120 characters. psf/black is very opinionated and purposely doesn't leave much room for configuration. The output is mostly OK so that should be fine for us, but some things worth noting: - Manually wrapped strings will be reflowed, so by using a line length of 120 for the sake of preserving readability for our long command calls, it also means that some manually wrapped strings are back on the same line and should be manually merged again. - Code generators using string concatenation extensively look awful, since black puts each operand on a single line. We need to refactor these generators to use more pythonic string formatting, for which many options are available (`%`, `format` or f-strings). - CI checks and a pre-commit hook will be added to ensure that future buildsystem changes are well-formatted.
2020-03-28Fix copyright headers for recently added filesRémi Verschelde
2020-03-27Renaming of servers for coherency.Juan Linietsky
VisualServer -> RenderingServer PhysicsServer -> PhysicsServer3D Physics2DServer -> PhysicsServer2D NavigationServer -> NavigationServer3D Navigation2DServer -> NavigationServer2D Also renamed corresponding files.
2020-03-26Refactored input, goes all via windows now.Juan Linietsky
Also renamed Input to InputFilter because all it does is filter events.
2020-03-26Refactored Input, create DisplayServer and DisplayServerX11Juan Linietsky
2020-03-23Merge pull request #37219 from RajatGoswami/missing-include-guardsRémi Verschelde
Adding missing include guards to header files identified by LGTM
2020-03-23Adding missing include guards to header files identified by LGTM.Rajat Goswami
This addresses the issue godotengine/godot#37143
2020-03-21Make file formatting comply with POSIX and Unix standardsAaron Franke
UTF-8, LF, no BOM, and newlines at the end of files
2020-03-19Update the naming scheme for the GodotPlugin's methods in preparate of the ↵fhuya
vulkan integration.
2020-03-18Removed unused code in android detect.py and SCsubunknown
2020-03-17Complete the implementation of the GodotPayment plugin.fhuya
Move the remaining plugin components within the plugin source code.
2020-03-17Merge pull request #36906 from m4gr3d/enable_android_studio_debuggingRémi Verschelde
Enable Android Studio debugging
2020-03-17Merge pull request #37106 from akien-mga/clang-format-cpp11Rémi Verschelde
Style: Set clang-format Standard to Cpp11
2020-03-17Style: Set clang-format Standard to Cpp11Rémi Verschelde
For us, it practically only changes the fact that `A<A<int>>` is now used instead of the C++03 compatible `A<A<int> >`. Note: clang-format 10+ changed the `Standard` arguments to fully specified `c++11`, `c++14`, etc. versions, but we can't use `c++17` now if we want to preserve compatibility with clang-format 8 and 9. `Cpp11` is still supported as deprecated alias for `Latest`.
2020-03-13Fix text_entered signal when max_length is used in LineEdit on AndroidPouleyKetchoupp
Fixes #35954
2020-03-09Fix initialization of the GodotPayment pluginfhuya
The `onGLRegisterPluginWithGodotNative()` method is supposed to be invoked only by `Godot`.
2020-03-08Enable Android studio debugger.fhuya
2020-03-06Trim the whitespace around the plugins names.fhuya
2020-03-05Re-architecture of the Godot Android plugin.fhuya
2020-03-05Provides a base implementation of the Vulkan surface view (VkSurfaceView.kt) ↵fhuya
and its accompanying components. The implementation is meant to be extended and updated in order to integrate it with the existing Godot java and native codebase.
2020-03-04Miscellaneous cleanup for the Android codebase:fhuya
- update gradle plugins versions - add formatting rules for AndroidManifest and gradle build files - cleanup java_godot_lib_jni Note: logic was mostly moved around and no new logic/functionality was added.
2020-03-04Merge pull request #36682 from nekomatata/android-compilation-fixRémi Verschelde
Compilation fixes on Android
2020-03-04Compilation fixes on AndroidPouleyKetchoupp
2020-03-03Improve UX of drive lettersPedro J. Estébanez
Namely, move the drive dropdown to just the left of the path text box and don't include the former in the latter. This improves the UX on Windows. In the UNIX case, since its concept of drives is (ab)used to provide shortcuts to useful paths, its dropdown is kept at the original location.
2020-03-01Merge pull request #18020 from bruvzg/input_fix_non_latin_and_add_hw_scancodesRémi Verschelde
Fix non-latin layout scancodes on Linux, adds access to physical scancodes.
2020-02-26Reimplement Mutex with C++'s <mutex>Pedro J. Estébanez
Main: - It's now implemented thanks to `<mutex>`. No more platform-specific implementations. - `BinaryMutex` (non-recursive) is added, as an alternative for special cases. - Doesn't need allocation/deallocation anymore. It can live in the stack and be part of other classes. - Because of that, it's methods are now `const` and the inner mutex is `mutable` so it can be easily used in `const` contexts. - A no-op implementation is provided if `NO_THREADS` is defined. No more need to add `#ifdef NO_THREADS` just for this. - `MutexLock` now takes a reference. At this point the cases of null `Mutex`es are rare. If you ever need that, just don't use `MutexLock`. - Thread-safe utilities are therefore simpler now. Misc.: - `ScopedMutexLock` is dropped and replaced by `MutexLock`, because they were pretty much the same. - Every case of lock, do-something, unlock is replaced by `MutexLock` (complex cases where it's not straightfoward are kept as as explicit lock and unlock). - `ShaderRD` contained an `std::mutex`, which has been replaced by `Mutex`.
2020-02-25Variant: Added 64-bit packed arrays, renamed Variant::REAL to FLOAT.Juan Linietsky
- Renames PackedIntArray to PackedInt32Array. - Renames PackedFloatArray to PackedFloat32Array. - Adds PackedInt64Array and PackedFloat64Array. - Renames Variant::REAL to Variant::FLOAT for consistency. Packed arrays are for storing large amount of data and creating stuff like meshes, buffers. textures, etc. Forcing them to be 64 is a huge waste of memory. That said, many users requested the ability to have 64 bits packed arrays for their games, so this is just an optional added type. For Variant, the float datatype is always 64 bits, and exposed as `float`. We still have `real_t` which is the datatype that can change from 32 to 64 bits depending on a compile flag (not entirely working right now, but that's the idea). It affects math related datatypes and code only. Neither Variant nor PackedArray make use of real_t, which is only intended for math precision, so the term is removed from there to keep only float.
2020-02-25Rename `scancode` to `keycode`.bruvzg
Add `physical_keycode` (keyboard layout independent keycodes) to InputEventKey and InputMap. Fix non-latin keyboard layout keycodes on Linux/X11 (fallback to physical keycodes).
2020-02-23Fix suspicious | and + operatorsRafał Mikrut
2020-02-20Reworked signal connection system, added support for Callable and Signal ↵Juan Linietsky
objects and made them default.
2020-02-18PoolVector is gone, replaced by VectorJuan Linietsky
Typed `PoolTypeArray` types are now renamed `PackedTypeArray` and are sugar for `Vector<Type>`.
2020-02-14Remove incomplete battery status/power APIRémi Verschelde
It was initially implemented in #5871 for Godot 3.0, but never really completed or thoroughly tested for most platforms. It then stayed in limbo and nobody seems really keen to finish it, so it's better to remove it in 4.0, and re-add eventually (possibly with a different API) if there's demand and an implementation confirmed working on all platforms. Closes #8770.
2020-02-13Remove obsolete GLES3 backendRémi Verschelde
Due to the port to Vulkan and complete redesign of the rendering backend, the `drivers/gles3` code is no longer usable in this state and is not planned to be ported to the new architecture. The GLES2 backend is kept (while still disabled and non-working) as it will eventually be ported to serve as the low-end renderer for Godot 4.0. Some GLES3 features might be selectively ported to the updated GLES2 backend if there's a need for them, and extensions we can use for that. So long, OpenGL driver bugs!
2020-02-11Custom material support seems complete.Juan Linietsky
2020-02-11Texture refactorJuan Linietsky
-Texture renamed to Texture2D -TextureLayered as base now inherits 2Darray, cubemap and cubemap array -Removed all references to flags in textures (they will go in the shader) -Texture3D gone for now (will come back later done properly) -Create base rasterizer for RenderDevice, RasterizerRD
2020-02-09Merge pull request #35701 from AlexHolly/fix-double_tap-pressed-regressionRémi Verschelde
Fix double tap pressed event regression
2020-02-05Remove per-file progress reporting when exporting to AndroidHugo Locurcio
Calling `step()` on EditorProgress too often will slow down the rest of the editor, so it's best avoided. This is also more consistent with other exporters, as most of them don't report per-file progress either. Exporting a 2D project with ~1,100 files to Android now takes about 10 seconds from a debug editor build instead of 65 seconds. This closes #30850.
2020-02-05Remove duplicate ERR_PRINT macro.Marcel Admiraal
2020-01-31Fixed LineEdit virtual keyboard inputs on AndroidPouleyKetchoupp
Changed the condition to add a length filter to make it consistent with the documentation (0 means no character limit). Otherwise the default value in LineEdit causes the virtual keyboard to be non-fonctional on Android.
2020-01-29Fix double tap pressed event regressionAlexander Holland
2020-01-27Merge pull request #35632 from ↵Rémi Verschelde
godotengine/revert-32854-fix-wireless-adb-debugging Revert "Fix Android deploy with Remote Debug or Network FS over Wi-Fi"
2020-01-27Revert "Fix Android deploy with Remote Debug or Network FS over Wi-Fi"Rémi Verschelde
2020-01-27Address crash caused by missing dependency.fhuya
2020-01-27Address crash caused by missing dependency.fhuya
2020-01-26Check if can export before exporting; show error message if can't export.Mark Wynn Garcia
2020-01-23Android virtual keyboard respecting LineEdit max length.Bruno Lourenço
2020-01-20Revert "Exposes capture methods to AudioServer + documentation" #30468Rémi Verschelde
Reverts the following commits: - c81ec6f26d40b70283958a4ef3e216fb32cbaf14: "Exposes capture methods to AudioServer, variable renames for consistency, added documentation." - 47c558b98abf842910c780294314326662410cdf: "Expose audio callbacks as signals." - dabaa11b3c451e9b8f2cca7e563bd9ec51edb169: "Fix to make sure the capture buffers are deallocated at shutdown. Silences warnings." Some documentation improvements were kept for pre-existing methods. See rationale for reverting these changes in #30468.
2020-01-19doc: Sync classref with current sourceRémi Verschelde
2020-01-19Fix ClassDB API portability with some android and editor classesIgnacio Etcheverry
- `EditorNavigationMeshGenerator` was being registered as part of the Core API, even after d3f48f88bb84d22b7805ce971ac86cf1953a29fd. We must make sure to set Editor as the current ClassDB API type before creating an instance. - The `VisualScriptEngineSingleton.constant` property has a property hint string that's different between tools and non-tools builds. This commit makes the hint string to no longer be set in `_bind_methods`, and to instead set it in `_validate_property`. This way it's ignored when calculating the API hash. - `JavaClassWrapper` is now registered in ClassDB on all platforms, using a dummy implementation on platforms other than Android. This fixes API portability between Android and other platforms. - Updated `--class-db-json` command to ignore non-virtual methods that start with an underscore (see: 4be87c6016a5893cbde897924e540df4c988cee5).
2020-01-17Android: Improve name of icon export propertiesRémi Verschelde
This seems more readable and still includes the required dimensions.