Age | Commit message (Collapse) | Author |
|
[HTML5] Use browser mix rate by default on the Web.
|
|
This only adds support for a subset of Play Asset Delivery: this causes a single install-time asset pack to always be present, but doesn't add support for dynamically downloaded asset packs.
|
|
|
|
Improve messages when compiling for Linux/*BSD
|
|
Would attempt an out of bounds read, causing an exception.
|
|
Browsers doesn't really like forcing the mix rate, e.g. Firefox does not
allow input (microphone) if the mix rate is not the default one, Chrom*
will exhibit worse performances, etc.
|
|
This provides better security at the cost of having misleading
binary icons on some file managers.
Now that recent Linux distributions no longer allow executing
binaries by double-clicking them in a file manager (even if the
binary is set to be executable), the usability cost of PIE is lowered.
You have to use a terminal or install a `.desktop` file nowadays.
|
|
[HTML5] Fix input not working when buffered.
|
|
After input buffering was reworked, input accumulation is now handled
outside of OS, and the JavaScript plaform never implemented that.
Additionally, the JavaScript platform is quite obnoxious about calling
specific APIs outside specific user triggered events.
This commit adds event flushing during the main iteration, and forces it
during keydown/keyup/mousedown/mouseup/touchstart/touchend/touchcanel
events (effectively only accumulating only "move" events).
|
|
|
|
- Tweak the Android platform logo to remove the Android wordmark,
as it can't be used without explicit permission.
|
|
|
|
|
|
Make platform feature tag names lowercase
|
|
adds a call for resize event.
|
|
Update the AndroidManifest to enable access to Oculus OpenXR runtime
|
|
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.
|
|
Feature tag names are still case-sensitive, but this makes built-in
feature tags more consistent.
- `Windows` -> `windows`
- `OSX` -> `osx`
- `LinuxBSD` -> `linuxbsd`
- `Android` -> `android`
- `iOS` -> `ios`
- `HTML5` -> `html5`
- `JavaScript` -> `javascript`
- `UWP` -> `uwp`
|
|
- Don't display messages when enabling PulseAudio/ALSA/D-Bus/udev
as these become noisy in incremental builds.
- Improve warning and error messages to be more descriptive
and consistent.
|
|
Calinou/web-editor-improve-download-project-source-zip-name
Improve the generated ZIP archive name when using Download Project Source
|
|
|
|
|
|
|
|
Improve crash handler message display
|
|
Fix window decoration size on Windows
|
|
|
|
|
|
Calinou/android-export-move-clear-previous-install-setting
Move the Android "clear previous install" setting to Editor Settings
|
|
|
|
Follow-up to #51002.
|
|
Godot host.
|
|
Update Godot Javascript FS library to manually depend on ERRNO_CODES.
|
|
Add 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.
|
|
|
|
This makes for easier organization since downloading a project
several times (or several different projects) will result in more
meaningful file names.
|
|
Fix Xbox controllers in Bluetooth mode on macOS
|
|
This prevents the D-pad up arrow from being registered as pressed
when it isn't, and pressing any direction from activating the next
arrow clockwise of it.
Co-authored-by: Scott Wadden <scott.wadden@gmail.com>
|
|
This means the setting now applies to every project deployed from
the editor, rather than being per-export preset.
|
|
Use the Unicode multiplication symbol where relevant
|
|
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.
|
|
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).
|
|
- 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.
|
|
Resolve issue where the Godot app remains stuck when resuming.
|
|
Upgrade Vulkan Memory Allocator, use Volk on Android
|
|
Supported on Android 10 and higher.
|
|
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.
|
|
|
|
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.
|
|
|