Fabio Alessandrelli
f56b1a5af5
[HTML5] Add checks to Gamepad API events.
...
In some conditions the events might be generated even when the `gamepad`
object is not accessible due to Security Context requirements.
This commit adds a check to avoid firing the handler in those cases.
(cherry picked from commit 91dbc288cc
)
2021-11-20 11:46:13 +01:00
Fabio Alessandrelli
1066b60781
[HTML5] Fix input not focusing canvas.
...
mousedown and touchstart should focus the canvas to ensure correct
application lifecycle.
(cherry picked from commit f13c7fc83e
)
2021-11-20 11:46:09 +01:00
Rémi Verschelde
b0f721283d
Merge pull request #54089 from madmiraal/remove-unimplemented-methods-3.x
2021-11-18 15:51:15 +01:00
kobewi
a58736f129
Fix data directory of unnamed projects
...
(cherry picked from commit f6d16d55c6
)
2021-11-18 13:47:52 +01:00
Marcel Admiraal
4d3690eba5
Remove unimplemented methods
2021-11-18 12:47:36 +00:00
Rémi Verschelde
2da3f80128
Windows: Use `/bigobj` only for debug builds, breaks GCC LTO
...
Building `target=release` and `target=release_debug` builds with MinGW-GCC
errors when linking with LTO.
Since it's only needed for `target=debug` builds anyway (bigger objects), which
we don't build with LTO, this works around the issue.
(cherry picked from commit 64d7df1e5f
)
2021-11-18 12:15:05 +01:00
Will Jordan
7e6bf27597
Fix crash on macOS (AS) when dualshock4 is removed
...
(cherry picked from commit 283e31a3e2
)
2021-11-17 16:37:33 +01:00
Rémi Verschelde
3ac698750b
Merge pull request #54998 from akien-mga/3.x-cherrypicks
2021-11-15 18:13:56 +01:00
Rémi Verschelde
77416d5806
Merge pull request #54431 from RandomShaper/fix_gl3_32bits_3.x
2021-11-15 17:54:31 +01:00
Rémi Verschelde
26e582b170
Windows: Enable `/bigobj` to increase max size for obj files
...
Equivalent `-Wa,-mbig-obj` for GCC/Clang.
This started being needed to compile harfbuzz in `target=debug` with MinGW/GCC,
but there doesn't seem to be any drawback to enabling `/bigobj` (aside from
losing support for pre-VS 2005 linkers, which we don't support).
(cherry picked from commit 11d1319afd
)
2021-11-15 17:22:47 +01:00
Daniel Kolesa
5fe78a3a25
Add support for PowerPC family
...
(cherry picked from commit 3a84a64d2f
)
2021-11-15 17:22:46 +01:00
bruvzg
d30b5725a3
[Export] Read and ZIP project files in 16K chunks instead of reading the whole file at once.
...
(cherry picked from commit c8f3dd776b
)
2021-11-15 16:09:59 +01:00
Pedro J. Estébanez
4f8bc77a4c
Drop broken Android 32-bit framebuffer setting
2021-11-15 10:44:41 +01:00
Hugo Locurcio
fde50db399
Fix outdated SCons macOS build message
...
The message incorrectly stated that the minimum supported version
is 10.9, when it is in fact 10.12.
2021-11-12 23:05:54 +01:00
Rémi Verschelde
1f8497d281
Merge pull request #53411 from RandomShaper/ubershaders_3.x
2021-11-09 13:12:44 +01:00
Pedro J. Estébanez
abdf931832
Add off-screen GL context
2021-11-09 12:19:12 +01:00
Rémi Verschelde
98a1e4fbd7
Merge pull request #54526 from bruvzg/opengl_mt
2021-11-09 00:10:20 +01:00
Rémi Verschelde
c7c592f832
Merge pull request #54314 from nekomatata/x11-events-log-3.x
2021-11-09 00:03:39 +01:00
Pedro J. Estébanez
25f01cb09d
Implement get_cache_path() for iOS, and improve it for Android and Windows
2021-11-08 22:33:54 +01:00
bruvzg
f997a5f8f6
[macOS] Use pre-wait observer to keep main run loop running and redraw window during the window resize and displaying modal popups.
2021-11-08 12:34:14 +02:00
bruvzg
2e74bacf17
[iOS export] Capture and display xcodebuild output.
2021-11-07 11:06:21 +02:00
Fredia Huya-Kouadio
724ef83971
Add default `minSdkVersion` and `targetSdkVersion` in the AndroidManifest.xml file
2021-11-03 21:49:22 -07:00
bruvzg
28d7b585c9
[macOS] Enable multithreaded OpenGL engine flag when using multithreaded VisualServer.
2021-11-02 23:50:27 +02:00
Rémi Verschelde
2c47e33905
Merge pull request #54313 from nekomatata/x11-fix-input-delay-3.x
2021-11-02 08:53:06 +01:00
Rémi Verschelde
bf59549f68
Merge pull request #54394 from robfram/freebsd-llvm-no-atomic-lib
2021-11-01 22:30:13 +01:00
bruvzg
ed25a160ea
[macOS] Always execute editor instances using NSWorkspace to ensure app window is registered and activated correctly.
2021-11-01 11:33:30 +02:00
robfram
2c8014e565
Exclude atomic lib under FreeBSD using LLVM
2021-10-29 18:24:57 +02:00
Rémi Verschelde
14ef65e49b
Merge pull request #54348 from akien-mga/3.x-clang-format-dont-align-operands
2021-10-28 15:43:15 +02:00
Rémi Verschelde
87c80f529f
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 14:50:33 +02:00
Rémi Verschelde
1b65550ec7
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 14:50:32 +02:00
Rémi Verschelde
42d385b312
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 13:23:38 +02:00
Aaron Franke
18b1de1983
[3.x] Add RISC-V to "server" platform
2021-10-27 13:57:37 -05:00
PouleyKetchoupp
2a638a9cdf
Add X11 events logging for debug purpose
...
Compiled out by default, just to be used for debugging local builds.
2021-10-27 10:37:46 -07:00
PouleyKetchoupp
874c9ae89a
Fix input events random delay on X11
...
The new system based on a thread gathering events from the X11 server
was causing delays in some scenarios where some events have just been
missed at the time of processing and we're waiting for a whole frame to
check them again.
Solved by flushing again and checking for pending events at the
beginning of the process loop, in addition to events already gathered
on the event thread.
2021-10-27 10:19:16 -07:00
Rémi Verschelde
c7f4e1d5dd
Android: Properly validate `godot_project_name_string` for Android special chars
...
Fixes #52659 .
(cherry picked from commit 9204a3a50e
)
2021-10-26 18:23:47 +02:00
Marcel Admiraal
4febf69f2a
Fix Gradle builds not excluding excluded tasks
...
(cherry picked from commit f80cb4dffa
)
2021-10-24 01:43:44 +02:00
Rémi Verschelde
f5e6a2624c
JS: Bump ansi-regex version for linter
...
Silences warning about a moderate security vulnerability (which doesn't affect us).
(cherry picked from commit 5f7bbc2b57
)
2021-10-23 12:04:17 +02:00
Aaron Franke
5659120af3
[3.x] Add support for the RISC-V architecture
...
Supports RV64GC (RISC-V 64-bit with general-purpose and compressed-instruction extensions)
2021-10-22 12:51:23 -05:00
Rémi Verschelde
ae5cdf3b86
Merge pull request #53991 from Faless/js/3.x_gles3_editor
2021-10-20 10:40:46 +02:00
Fabio Alessandrelli
3a61d0990e
[HTML5] Editor video driver option. Replace canvas on exit.
...
Default is "Auto", but can be forced to a specific WebGL version if the
automatic detection fails.
The game and editor canvas are now replaced with a new one in the exit
hooks. This helps the browser do some context cleanup, and allow us to
create a new context of a different type (WebGL/WebGL2).
Enable GLES3/WebGL2 in the Web Editor.
2021-10-19 15:52:02 +02:00
Rémi Verschelde
da5c843bd1
Merge pull request #53986 from madmiraal/remove-unused-variables-3.x
2021-10-19 12:18:21 +02:00
Marcel Admiraal
fe9fd5c5ce
Remove unused variables
2021-10-18 18:51:05 +01:00
Fabio Alessandrelli
11d1b0387e
[HTML5] Bump initial memory for Web editor
...
More memory is needed because the editor became bigger with the addition
of class reference translations.
(cherry picked from commit 1446cfd13d
)
2021-10-18 16:09:04 +02:00
Ignacio Roldán Etchevery
24fb09614d
iOS: Don't embed project static frameworks/libs
...
Previously, files added via `add_ios_project_static_libs` where
being added as embedded frameworks. This commit fixes that.
Static frameworks/libs should never be embedded into IPAs.
2021-10-17 22:30:09 +02:00
Rémi Verschelde
9657559b66
SCons: Set `DEBUG_ENABLED` and `DEV_ENABLED` in SConstruct
...
They're the same for all platforms so they don't need to be repeated in all
platform definitions.
(cherry picked from commit cd21cc683a
)
2021-10-15 12:54:16 +02:00
Marcel Admiraal
fd942cd465
Upgrade Android Gradle to version 7.2
...
(cherry picked from commit 95b1275197
)
2021-10-15 12:51:43 +02:00
ne0fhyk
754db65a1f
Pass the correct `export_format` argument to locate the assets directory when exporting.
...
(cherry picked from commit 431ccdb057
)
2021-10-11 18:04:16 +02:00
Omar Polo
04c08d1f8c
use .get_file() instead of basename(3)
...
On OpenBSD the compiler complains that calling basename(3) would lose
const qualifier. basename(3) is defined as
char *basename(char *);
and can, accorgindly to the POSIX.1, modify the passed string.
This uses the .get_file() method. The check is necessary because
file_name could be a directory, in which case .get_file() would return
an empty string. The .get_base_dir().get_file() idiom is already used.
The usage of get_file() and the check were suggested by theraot, thanks!
(cherry picked from commit a3384b7461
)
2021-10-10 12:27:51 +02:00
Rémi Verschelde
df69945f1f
Merge pull request #52714 from m4gr3d/provide_getter_for_project_data_dir_3x
2021-10-05 21:02:41 +02:00
Fabio Alessandrelli
adef4ed958
[HTML5] Remove "maximize" support.
...
I don't think anyone is actively using it, and it's a lot of convoluted
code.
2021-10-05 15:13:41 +02:00
Fabio Alessandrelli
d61fc468a2
[HTML5] Refactor JS library listeners to OS.
2021-10-05 15:13:41 +02:00
Fabio Alessandrelli
5e2e54a4b4
[HTML5] Refactor display/input JS library code.
2021-10-05 15:13:41 +02:00
Fabio Alessandrelli
c54f5b90e6
[HTML5] Implement Pointer Lock API in JS library.
...
Removes more emscripten HTML5 library dependencies.
2021-10-05 15:13:41 +02:00
Fabio Alessandrelli
89c6aaa96d
[HTML5] Implement window blur in JS library.
...
Removes more emscripten HTML5 library dependencies.
2021-10-05 15:13:41 +02:00
Fabio Alessandrelli
ac78e7f940
[HTML5] Implement fullscreenchange in JS library.
...
Removes more emscripten HTML5 library dependencies.
2021-10-05 15:13:41 +02:00
Fabio Alessandrelli
b7ac3c1aeb
[HTML5] Implement mouse/touch/key events in JS library.
...
This makes us more independent from emscripten libraries, giving us more
control on the application lifecycle.
2021-10-05 15:13:41 +02:00
Rémi Verschelde
d01c660954
Merge pull request #52964 from Pineapple/WIN32_LEAN_AND_MEAN
2021-10-05 12:03:52 +02:00
Jordan Schidlowsky
db44406082
revert 0d7409a
so additional error information prints in release builds
...
(cherry picked from commit b78d399f91
)
2021-10-05 10:56:53 +02:00
Rémi Verschelde
e292d79fb3
SCons: Add `DEV_ENABLED` defines for `target=debug` builds
...
This will allow adding developer checks which will be fully compiled out in
user builds, unlike `DEBUG_ENABLED` which is included in debug tempates and
the editor builds.
This define is not used yet, but we'll soon add code that uses it, and change
some existing `DEBUG_ENABLED` checks to be performed only in dev builds.
Related to https://github.com/godotengine/godot-proposals/issues/3371 .
2021-10-04 11:25:02 +02:00
Rémi Verschelde
7c9e06f936
Merge pull request #48686 from bruvzg/bundle_icon_3
2021-09-30 14:55:41 +02:00
Rémi Verschelde
b7901c773c
bullet: Sync with upstream 3.17
...
Stop include Bullet headers using `-isystem` for GCC/Clang as it misleads
SCons into not properly rebuilding all files when headers change.
This means we also need to make sure Bullet builds without warning, and
current version fares fairly well, there were just a couple to fix (patch
included).
Increase minimum version for distro packages to 2.90 (this was never released
as the "next" version after 2.89 was 3.05... but that covers it too).
2021-09-29 16:30:34 +02:00
Fabio Alessandrelli
acb748e66f
Merge pull request #52973 from selgesel/patch2
...
[3.x] Release pressed events when the window is blurred on HTML5 platform
2021-09-29 13:11:56 +02:00
Rémi Verschelde
bf65c0e479
HTML5: Fix minification error with Emscripten 1.39.9
...
It used an old vendored version of acorn.js which seems to choke on this
trailing comma. This is not a problem for more recent Emscripten versions.
We disable the `comma-dangle` check in ESLint to prevent this issue.
(cherry picked from commit 23b51a1708
)
2021-09-29 10:54:01 +02:00
Selgesel
c918b4d246
[3.x] Release pressed events when the window is blurred on HTML5 platform
2021-09-23 16:44:03 +03:00
Bartłomiej T. Listwon
f463e612a1
Add missing WIN32_LEAN_AND_MEAN
2021-09-23 10:36:31 +02:00
bruvzg
131f913747
Improve `OS::get_locale()` on macOS and Windows, replace "-" with "_" and use system macros instead of bitwise AND. Add locale format info to the documentation.
...
(cherry picked from commit f797e1c078
)
2021-09-21 20:33:11 +02:00
Ricardo Subtil
5167a0281a
Fix shell_open not returning errors on Windows
...
(cherry picked from commit c4787a8e6d
)
2021-09-21 20:33:11 +02:00
Hugo Locurcio
8a6bc045ea
Add logo attribution for Android, HTML5 and Linux platform icons
...
- Tweak the Android platform logo to remove the Android wordmark,
as it can't be used without explicit permission.
(cherry picked from commit 1513aa9b26
)
2021-09-21 17:14:59 +02:00
Rémi Verschelde
c906afe045
HTML5: Handle GODOT_VERSION_STATUS env var in @GODOT_VERSION@
...
Follow-up to #51002 .
(cherry picked from commit 16f49d4b29
)
2021-09-21 17:14:58 +02:00
Rémi Verschelde
8a48be6980
Merge pull request #52650 from Faless/js/3.x_audioworklet_nothreads_pr
...
[3.x] [HTML5] Refactor audio drivers. Implement AudioWorklet w/o threads.
2021-09-21 10:44:14 +02:00
Rémi Verschelde
b37776fa2f
Merge pull request #52591 from timothyqiu/error-macros
...
[3.x] Remove do{ } while(0) wrapper around error macros
2021-09-21 10:38:34 +02:00
Fabio Alessandrelli
2024200182
[HTML5] Refactor audio drivers. Implement AudioWorklet w/o threads.
...
Performances are not great in general, bad on Firefox, on Chrome, well,
it's an improvement compared to the way they broke ScriptProcessorNode.
I'm actually surprised this works, it involves so many allocations, but
there's no way around it when SharedArrayBuffer is not available :(.
2021-09-20 14:53:27 +02:00
Marcel Admiraal
cce7e6c9d6
Use current androidx Fragment library instead of legacy libraries
...
(cherry picked from commit 23311a6ed3
)
2021-09-19 11:37:19 +02:00
Daniel Kariv
ca2372164b
fix fullscreen issue on macOS
...
adds a call for resize event.
(cherry picked from commit 52b114bc78
)
2021-09-19 11:30:21 +02:00
PouleyKetchoupp
1454d6c670
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.
(cherry picked from commit 0b681d5834
)
2021-09-19 11:30:21 +02:00
Fabio Alessandrelli
b7f466012c
[HTML5] Fix bug in AudioWorklet when reading output buffer.
...
Would attempt an out of bounds read, causing an exception.
(cherry picked from commit ba08f39e47
)
2021-09-19 11:30:21 +02:00
Hugo Locurcio
f2ab6bd01c
Improve messages when compiling for Linux/*BSD
...
- 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.
(cherry picked from commit 4c5deea83e
)
2021-09-19 11:30:20 +02:00
Dan
5a8fe36891
Fix Windows cursor with trails disappearing in fullscreen
...
Fixed by turning off mouse trails when going into fullscreen, then restoring trails when exiting fullscreen or game
2021-09-16 12:34:46 -07:00
Rémi Verschelde
1bbc7c9c3a
Merge pull request #52713 from Calinou/x11-opengl-driver-reboot
...
Mention that rebooting is required after updating graphics driver on X11
2021-09-16 10:26:27 +02:00
Rémi Verschelde
e4c4e7c2e0
Merge pull request #52721 from Faless/js/3.x_fix_wheel
...
[3.x] [HTML5] Fix wheel/touch callback modifying event after parse.
2021-09-16 09:41:53 +02:00
Rémi Verschelde
25cbb858bc
Merge pull request #51935 from nekomatata/android-transparency-3.x
...
[3.x] Window transparency support on Android
2021-09-15 22:34:12 +02:00
Fredia Huya-Kouadio
c8b022c165
Provide a getter for the project data directory.
2021-09-15 13:00:25 -07:00
Fabio Alessandrelli
97a8b7c68e
Merge pull request #52723 from Faless/js/3.x_mix_rate
...
[3.x] [HTML5] Use browser mix rate by default on the Web.
2021-09-15 21:49:26 +02:00
Fabio Alessandrelli
b800438efb
[HTML5] Use browser mix rate by default on the Web.
...
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.
2021-09-15 20:36:19 +02:00
PouleyKetchoupp
52fdb4ece9
Window transparency support on Android
...
Implements per-pixel transparency feature on Android.
Allows plugins to do specific rendering and render godot UI on top
(useful for camera support with drawing on top).
2021-09-15 10:41:08 -07:00
Hugo Locurcio
a5d027e542
Mention that rebooting is required after updating graphics driver on X11
2021-09-15 18:25:49 +02:00
Fabio Alessandrelli
7dfbc4e57c
[HTML5] Fix wheel/touch callback modifying event after parse.
...
The events should be duplicated or reinstantiated without
assuming that parse_input will consume them immediately.
2021-09-15 17:28:44 +02:00
ne0fhyk
35a98d305b
Add support for Play Asset Delivery.
...
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.
2021-09-15 06:02:53 -07:00
Rémi Verschelde
815c16ae17
Merge pull request #52515 from m4gr3d/android_export_refactoring
...
[3.x] Refactor Android platform export structure
2021-09-15 14:03:53 +02:00
Hugo Locurcio
4d94aba0ed
Improve crash handler message display
...
- State the Godot version and full hash in the backtrace.
- Add decoration around the crash backtrace, both to make it stand out
from other messages and help the user figure out what they should copy.
(cherry picked from commit 8556dd1bef
)
2021-09-14 13:41:26 +02:00
Marcus Brummer
128208d1d0
Check if vibration duration is > 0 on Android
...
(cherry picked from commit 47f338fc12
)
2021-09-14 13:41:25 +02:00
Fabio Alessandrelli
98b42ca958
[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).
2021-09-12 18:42:43 +02:00
Haoyu Qiu
70853fd669
Remove do{ } while(0) wrapper around error macros
2021-09-12 15:04:53 +08:00
Max Hilbrunner
95162ca393
Merge pull request #52540 from kyoz/3.x
...
Fix (iOS): Clipboard get/set missing implement
2021-09-10 18:25:56 +02:00
Kyoz
6db3e074c5
fix(ios): Clipboard get/set missing implement
2021-09-10 21:46:54 +07:00
ne0fhyk
0cfbe354d7
Refactor Android platform export structure.
2021-09-09 10:48:29 -07:00
Fredia Huya-Kouadio
5b8d7752b5
Update Oculus vr configs and add support for accessing Oculus OpenXR runtime
2021-08-27 11:16:20 -07:00
Fredia Huya-Kouadio
3baf5563e8
Delegate handling and implementation of the restart functionality to the Godot host.
...
(cherry picked from commit f4222733ca
)
2021-08-18 23:21:13 +02:00
Fabio Alessandrelli
b7b9b902e5
Update Godot Javascript FS library to manually depend on ERRNO_CODES.
...
Fixes compatibility with Emscripten 2.0.26+.
(cherry picked from commit 71fb2429a0
)
2021-08-18 23:20:34 +02:00
Rémi Verschelde
2ab45474fd
Merge pull request #51783 from m4gr3d/address_external_dir_access
...
Fix possible null pointer exception.
2021-08-17 13:32:33 +02:00
ne0fhyk
e2bcdad43b
Fix possible null pointer exception.
2021-08-16 23:14:10 -07:00
ModProg
1d63a94d19
[android] Fixed wrong button mask for right click
2021-08-16 18:41:20 +02:00
Rémi Verschelde
5ac3a85af3
Merge pull request #51117 from Calinou/macos-fix-xbox-bluetooth-controllers-3.x
...
Fix Xbox controllers in Bluetooth mode on macOS (3.x)
2021-08-16 17:50:17 +02:00
Hugo Locurcio
f95035b80b
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>
2021-08-16 17:06:31 +02:00
Rémi Verschelde
daf922fa8a
Android: Increase default armv7 NDK platform to 19
...
Following #50359 this is the new minSdk that we target.
Users can still override it in custom builds if they want to support SDK 18.
2021-08-16 10:14:03 +02:00
Rémi Verschelde
028a2a7205
Merge pull request #50359 from m4gr3d/address_external_dir_access
...
[3.x] Add support for Android scoped storage
2021-08-16 09:48:34 +02:00
ne0fhyk
c88d1608ab
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-13 11:04:17 -07:00
Rémi Verschelde
b484956fba
Merge pull request #51601 from RandomShaper/android_step_acq_rel
...
Use SafeNumeric for Android JNI step
2021-08-13 09:33:20 +02:00
Rémi Verschelde
f976cec536
Merge pull request #51584 from m4gr3d/investigate_godot_resume_stalls_3_x
...
[3.x] Resolve issue where the Godot app remains stuck when resuming.
2021-08-13 08:44:33 +02:00
Fredia Huya-Kouadio
336c630f51
Add support for prompting the user to retain app data on uninstall.
...
Supported on Android 10 and higher.
2021-08-12 22:06:13 -07:00
Fredia Huya-Kouadio
874aa1708f
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 20:58:00 -07:00
Pedro J. Estébanez
78d945e7fb
Use SafeNumeric for Android JNI step
...
Aside from the cosmetic improvement of using the Godot-style type, this switches to acquire-release semantics, which may improve performance by not forcing a full barrier to be issued if the CPU architecture can use a cheaper one.
2021-08-13 02:48:58 +02:00
Rémi Verschelde
ffc372b002
Merge pull request #42220 from RandomShaper/agile_input_3.2
...
[3.x] Improve responsiveness on underpowered Android devices
2021-08-12 22:46:17 +02:00
Georg Wacker
8add8f4e58
Fix vertical scroll/zoom for precision touchpad
...
Adds factor data for vertical mousewheel event, in line with horizontal mousewheel event
(cherry picked from commit 63ba15a518
)
2021-08-12 16:37:38 +02:00
Pedro J. Estébanez
45c2a7159e
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 `notification()` on the `MainLoop` at the most caller's convenience.
Lastly, `get_mouse_position()` and `get_mouse_button_state()` now just call through `InputDefault` to avoid the need of sync of mouse data tracked on the UI thread.
2021-08-08 13:41:27 +02:00
Pedro J. Estébanez
7be9c26e20
Add input buffering framework
...
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-08 12:37:55 +02:00
Pedro J. Estébanez
58a54f534e
Improve input event accumulation
...
- 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-08 12:37:55 +02:00
Rémi Verschelde
afe7b3fc58
Merge pull request #51336 from naithar/fix/ios-plugin-initialization
...
[3.x] [iOS] Use platform generated api to initialize iOS plugins
2021-08-06 23:59:06 +02:00
Sergey Minakov
d48d7cc94f
[iOS] Use platform generated api to initialize iOS plugins
2021-08-06 23:29:09 +03:00
Hugo Locurcio
8fbdcb6fea
Point at software OpenGL when OpenGL fails to initialize on X11
2021-08-05 18:24:42 +02:00
Haoyu Qiu
55b52341d1
Make progress and errors translatable when exporting to Android
2021-08-01 17:15:56 +08:00
Rémi Verschelde
59c050ddc3
Windows: Fix build with SCons 4.2.0
...
(cherry picked from commit c191cfbddf
)
2021-08-01 11:05:40 +02:00
Fredia Huya-Kouadio
df1ebbb0aa
Fix custom build export
2021-07-27 12:24:44 -07:00
vitika9
843c2a3dd8
Removed Redundant assignement of name inside configure_joypad function
...
(cherry picked from commit 1add8b3172
)
2021-07-27 12:17:14 +02:00
bruvzg
d86eae09d9
[macOS] Add "debugging" (`get-task-allow`) to the export options, to allow using native debugger.
...
(cherry picked from commit 2dd6c3eb09
)
2021-07-26 13:37:26 +02:00
luz paz
b684d72af0
Remove unnecessary 'pass' statement
...
ref: https://lgtm.com/projects/g/godotengine/godot/?mode=tree&ruleFocus=910088
(cherry picked from commit 2e0044c93d
)
2021-07-26 13:36:25 +02:00
ne0fhyk
d1fdb60ee2
Disable resource optimizations for release builds as it breaks the legacy build system.
2021-07-20 16:36:00 -07:00
reduz
ca223d71d8
Addes ability to load build sources from file.
...
* 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.
(cherry picked from commit 6639cc9853
)
2021-07-20 13:05:10 +02:00
Sergey Minakov
f3da335416
[iOS] Fix plugin configuration loading
...
Clear ConfigFile parameter before loading new file.
Ignore duplicate input plist keys
(cherry picked from commit aa321f0a24
)
2021-07-15 10:40:56 +02:00
David Kennedy
72db6016ba
Fixes move_to_trash() on Linux
...
Fixes #42840 OS move_to_trash() on Linux is not compliant with the Freedesktop specification
(cherry picked from commit 8b68c6808d
)
2021-07-15 10:39:47 +02:00
Fabio Alessandrelli
207fb165bf
[HTML5] Raise default initial memory to 32 MiB.
...
The memory was resized in any case during start.
Mitigate Chromium issue:
https://bugs.chromium.org/p/v8/issues/detail?id=11863
Also fix a warning about SAFE_HEAP being a linker only flag.
(cherry picked from commit 897c906ebf
)
2021-07-13 17:03:44 +02:00
Hugo Locurcio
e8c9877ad8
Fix casing of the "to" stop word in editor strings
2021-07-13 15:28:00 +02:00
Fabio Alessandrelli
b8f1f13b85
[HTML5] Fix JavaScript string parsing with new interface.
...
Strings are UTF-8 encoded and should be parsed as such, while it was
being parsed as a C string before.
(cherry picked from commit d4e302a3a4
)
2021-07-13 10:20:02 +02:00
bruvzg
71e30e3032
[macOS, Mono] Automatically enable JIT entitlements for the Mono exports.
...
(cherry picked from commit f37981b83f
)
2021-07-11 01:06:04 +02:00
Rémi Verschelde
46c68c0fb9
Android: Fix truncated `application` attributes after #50028 cherry-pick
...
The `android:icon` attribute is expected to be the last one in the application
definition, as documented by the comment. cd64bcd
missed that and caused some
arguments to be truncated.
Fixes #50224 .
2021-07-07 00:49:07 +02:00
Rémi Verschelde
3d16bfcc40
Android: Fix syntax error in #50227
2021-07-07 00:08:59 +02:00
Rémi Verschelde
7c8cc037ad
Merge pull request #50221 from madmiraal/fix-50125-3.x
...
[3.x] Queue the calls to GodotLib.key when Android virtual done is pressed
2021-07-06 23:46:36 +02:00
Rémi Verschelde
8c5c79e020
Android: Fix `xr_mode_metadata_name` removal after cd64bcdae
...
I had lost that line when resolving merge conflicts.
2021-07-06 23:24:54 +02:00
Marcel Admiraal
2bd3cc0e16
Queue the calls to GodotLib.key when Android virtual done is pressed
2021-07-06 17:54:14 +01:00
Marcel Admiraal
d40f73e3a4
Remove Android onKeyMultiple override
2021-07-06 17:37:53 +01:00
Rémi Verschelde
009aa63a57
Merge pull request #50108 from madmiraal/android-use-lambdas-3.x
...
[3.x] Replace single method anonymous classes with lambdas in Godot Java code
2021-07-06 18:10:45 +02:00
Thakee Nathees
9c74452636
Windows error logs directed to stderr
...
(cherry picked from commit efef236e43
)
2021-07-06 12:14:49 +02:00
miere43
9a22f4b8df
Replace backslash with forward slash in OS_Windows path methods
...
(cherry picked from commit 119a59f872
)
2021-07-06 11:22:04 +02:00
Marcel Admiraal
4b03e05573
Use static inner classes in Godot Java code
...
(cherry picked from commit 23e152040b
)
2021-07-06 11:20:42 +02:00
Marcel Admiraal
ab1162e918
Remove redundant explicit types in Godot Java code
...
(cherry picked from commit 3f95bbed73
)
2021-07-06 11:10:46 +02:00
Marcel Admiraal
6a07253bb6
Use StringBuilder instead StringBuffer in Godot Java code
...
(cherry picked from commit 61ee51d2bf
)
2021-07-06 11:10:46 +02:00
Marcel Admiraal
c1abbfb605
Fix raw use of parameterized Class
...
(cherry picked from commit d237f7d33d
)
2021-07-06 11:10:46 +02:00
Marcel Admiraal
01ecec451c
Use Java array declarations not C-style declarations in Android Java code
...
(cherry picked from commit 721b3d56c5
)
2021-07-06 11:10:46 +02:00
Marcel Admiraal
2b78d618f4
Remove unnecessary semicolons from Android Java code
...
(cherry picked from commit 360447001d
)
2021-07-06 11:10:45 +02:00
Rémi Verschelde
cd64bcdae5
Android: Add `isGame` application attribute, default to true
...
It can be turned off in the export preset with `package/classify_as_game`.
Upstream definition: https://developer.android.com/guide/topics/manifest/application-element#isGame
> `android:isGame`
>
> Whether or not the application is a game. The system may group together
> applications classifed as games or display them separately from other
> applications.
Also fixes replacing `android:allowBackup` in custom builds.
(cherry picked from commit 40a594c6ea
)
2021-07-06 11:10:45 +02:00
Marcel Admiraal
76c1a0e91d
Fix unchecked call to put() warning in GodotInputHandler.java
...
(cherry picked from commit 8270e101a7
)
2021-07-06 11:10:44 +02:00
Marcel Admiraal
4108dd0145
Replace single method anonymous classes with lambdas in Godot Java code
2021-07-03 05:13:08 +01:00
Marcel Admiraal
1ed89353b0
Remove unused imports from Android Java code
2021-07-02 14:41:57 +01:00
Marcel Admiraal
96e56af9b9
Remove redundant interface modifiers from Android Java code
2021-07-02 09:41:09 +01:00
Rémi Verschelde
7e934e31f4
Merge pull request #49912 from madmiraal/fix-49878-3.x
...
[3.x] Add GDNative libraries to Android custom Gradle builds
2021-06-29 14:58:45 +02:00
bruvzg
ad748adf53
[Windows Export] Use temporary file for osslsigncode signing.
...
(cherry picked from commit 8f7c2ccefd
)
2021-06-29 14:02:24 +02:00
Fabio Alessandrelli
69645b0e44
[HTML5] Add option to focus canvas on start.
...
Enabled by default.
(cherry picked from commit c12fca57f4
)
2021-06-29 14:02:23 +02:00
Haoyu Qiu
38e0ca9b47
Strip query string when parsing HTTP request line for path
...
(cherry picked from commit 91477cd4a9
)
2021-06-29 14:02:23 +02:00
ne0fhyk
c952201d97
Update config versions and deprecate the use of the jcenter maven repo.
...
(cherry picked from commit d1a9363c4c
)
2021-06-29 14:02:22 +02:00
bruvzg
5ff9b52214
[macOS] Fix custom mouse cursor not set after mouse mode change.
...
(cherry picked from commit f7797bf1b3
)
2021-06-29 14:02:21 +02:00
Marcel Admiraal
42c9fefcca
Add adb output to error message when install fails
...
(cherry picked from commit de2acbd495
)
2021-06-29 13:13:29 +02:00
Gromph
565d205d91
UWP: Keep upstream names for capabilities preset settings to avoid mismatch
...
The previous code used `camelcase_to_underscore` to prettify the names for
display in the export preset, but it leads to inconsistencies if we don't make
sure to do the reverse operation when writing to the `AppxManifest.xml`.
It's simpler to keep the same names as in the manifest, which is also what
users will see referenced in MS documentation.
Fixes #47900 .
Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
(cherry picked from commit c87e49d7bc
)
2021-06-29 13:11:56 +02:00
Marcel Admiraal
e021cab45b
Add GDNative libraries to Android custom Gradle builds
2021-06-29 09:22:08 +01:00
Rémi Verschelde
c045219869
Merge pull request #49804 from m4gr3d/add_support_for_custom_debug_keystore
...
[3.x] Add support for custom debug keystore
2021-06-23 15:28:40 +02:00
Rémi Verschelde
0c775ece14
Merge pull request #49802 from naithar/feature/ios-plugin-multitype-plist
...
[3.x] [iOS] Support multiple `plist` types in plugin
2021-06-22 12:49:22 +02:00
ne0fhyk
d5b4045ea4
Add support for custom debug keystore.
2021-06-21 10:03:58 -07:00
Sergey Minakov
ab03dcf44d
[iOS] Support multiple plist types
2021-06-21 17:46:27 +03:00
Marcel Admiraal
7e03bd1671
Remove duplicate WARN_PRINTS macro
2021-06-18 12:57:59 +01:00
Fabio Alessandrelli
2c64218415
[HTML5] Update eslint and jsdoc dependencies.
...
(cherry picked from commit a1cbb6daa6
)
2021-06-17 12:47:55 +02:00
bruvzg
30393b6401
Add LSApplicationCategoryType to the template and export dialog.
...
(cherry picked from commit cb480376d8
)
2021-06-17 12:47:55 +02:00
Fabio Alessandrelli
cfedd60e6b
[HTML5] Fix JS build without eval.
...
Also fix download_buffer return type.
(cherry picked from commit 049b5159f1
)
2021-06-17 12:47:55 +02:00
Fabio Alessandrelli
0f5fbf5fbf
[HTML5] Fix some JS library signature.
...
(cherry picked from commit 9b7b0a28b9
)
2021-06-17 12:47:54 +02:00
Marcel Admiraal
68b1a80a5d
Remove FIXME comment from fixed issue in Android Export
2021-06-17 09:20:14 +01:00
Rémi Verschelde
465ab36ddf
Merge pull request #49653 from madmiraal/remove-err_prints-3.x
...
[3.x] Remove duplicate ERR_PRINTS macro
2021-06-16 17:33:22 +02:00
Marcel Admiraal
5a58516231
Remove duplicate ERR_PRINTS macro
2021-06-16 11:56:25 +01:00
Hugo Locurcio
9be9304238
Improve the console error logging appearance
...
This makes secondary information less visually prominent to improve
overall readability.
Various loggers were also tweaked for consistency.
2021-06-13 19:18:09 +02:00
Rémi Verschelde
c7c93355e3
Merge pull request #49436 from madmiraal/add-android-external-dir-3.x
...
[3.x] Add OS.get_external_data_dir() to get Android external directory
2021-06-10 18:24:21 +02:00
Marcel Admiraal
6d63ccba31
Add OS.get_external_data_dir() to get Android external directory
2021-06-10 16:48:37 +01:00
Rémi Verschelde
1147213c48
Merge pull request #49481 from madmiraal/fix-27725-3.x
...
[3.x] Remove unused AudioDriverAndroid from Android
2021-06-10 16:44:56 +02:00
Marcel Admiraal
cdba79ca72
Remove unused AudioDriverAndroid from Android
2021-06-10 08:31:23 +01:00
bruvzg
8790c07562
[iOS] Option to automatically generate icons and launch screens
2021-06-09 17:52:06 +02:00
Arthur Bikmullin
f3d931410b
Fixed missed IDHandler dependency in GodotFetch
...
(cherry picked from commit ee2bea7a86
)
2021-06-08 10:20:35 +02:00
Marcel Admiraal
9cb878460f
Update Gradle archiveName and destinationDir properties
...
(cherry picked from commit 78e791045c
)
2021-06-07 12:15:04 +02:00
Rémi Verschelde
80e1585a6e
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.
(cherry picked from commit c1c76850cb
)
2021-06-07 12:06:59 +02:00
Rémi Verschelde
87dfd6e6cb
Merge pull request #49276 from bruvzg/macos_export_notarization3
...
[3.x, macOS export] Add notarization support.
2021-06-03 13:25:13 +02:00
bruvzg
261b35d63c
[3.x, macOS export] Add notarization support.
2021-06-03 14:13:06 +03:00
Nathaniel Morihara
471c0ba700
Exporting: Android Debug Keystore Warnings
...
(cherry picked from commit 2cf19293ba
)
2021-06-03 12:24:57 +02:00
bruvzg
683f96df35
Add separate `simulator` flag for iOS build, change main library to `xcframework`.
...
Build and export iOS Mono libs as `.xcframework`s, for Apple Silicon iOS simulator support.
2021-06-02 01:09:03 +02:00
Pedro J. Estébanez
0d7130f37c
Add iOS export option for device family
...
(cherry picked from commit 19ae8193ee
)
2021-06-01 12:52:19 +02:00
Pedro J. Estébanez
857fd831c1
Set schemes' build config to debug/release in iOS Xcode export
...
(cherry picked from commit 1534b4e65e
)
2021-06-01 12:52:19 +02:00
Rémi Verschelde
94b5a82e7d
Merge pull request #48943 from Calinou/screen-orientation-remove-ios-duplicate-3.x
...
Remove duplicate orientation settings in the iOS export preset
2021-05-26 00:24:17 +02:00
Hugo Locurcio
914b5dc525
Remove duplicate orientation settings in the iOS export preset
...
The screen orientation is now sourced from the Project Settings
like it is done for Android already.
2021-05-25 23:55:37 +02:00
Pedro J. Estébanez
76a4831cd3
Allow basic user data backup on Android
2021-05-25 17:47:19 +02:00
Rémi Verschelde
752ed768fa
Linux: Fix embree unbundling on aarch64
...
Embree supports aarch64 since version 3.13.0.
2021-05-24 21:10:43 +02:00
Rémi Verschelde
b94b09cd19
Merge pull request #46860 from bruvzg/symlinks_and_macos_gdn_framework_export
2021-05-24 15:15:10 +02:00
bruvzg
53f05c9167
Add GDNative Framework loading and export support.
2021-05-24 12:50:18 +03:00
bruvzg
31be8ae8e9
[macOS] Allow "on top" windows to enter full-screen mode.
2021-05-24 10:47:36 +03:00
bruvzg
df532ff45c
[UWP] Add missing `get_scansym` argument.
...
(cherry picked from commit 494c54b98c
)
2021-05-22 18:35:16 +02:00
bruvzg
6aa8f7d85b
Add symlink API to the DirAccess (on macOS and Linux).
2021-05-22 17:36:16 +03:00
Rémi Verschelde
7cd5967e99
Merge pull request #48924 from akien-mga/3.x-cherrypicks
...
Cherry-picks for the 3.x branch (future 3.4) - 4th batch
2021-05-21 19:05:17 +02:00