Lisandro Lorea
9dd372f316
Fix gamepad triggers not working on web exports
...
Fixes #81758
DisplayServerWeb::process_joypads handles buttons 6 and 7 of the
HTML5 Standard Gamepad as a special case by doing:
`input->joy_axis(idx, (JoyAxis)b, s_btns[b]);`
This doesn't work because there is no JoyAxis 6 or 7 in the enum
To fix this we use JoyAxis::TRIGGER_LEFT and TRIGGER_RIGHT for button 6
and 7
However since we are now lying to input->joy_axis we also need to lie in
the mappings for the standard gamepad in godotcontrollersdb.txt,
otherwise input->joy_axis will try to find a mapping to axis 4(LT) and
axis 5(RT) that's not defined.
Therefore we set lefttrigger to +a4 and righttrigger to +a5 in the
mapping, to match what we are actually sending.
A cleaner, and more involved fix to this would be modifying
input->joy_button so that it can handle analog buttons and map them to
axes preserving their value instead of converting to boolean
2024-08-14 16:13:16 -03:00
Adam Scott
1776258b1c
Add missing null check before disconnecting source
2024-07-30 15:00:58 -04:00
A Thousand Ships
61c4ce272c
[Web] Gracefully handle non-finite audio volumes
2024-07-29 15:48:06 +02:00
Fabio Alessandrelli
96feb924e8
[Web] Enable the closure compiler in CI
...
Also fixes some JSDoc annotations in GodotAudio
2024-07-26 13:27:52 +02:00
Fabio Alessandrelli
26f17c33a5
[Web] Add workaround for missing export in threaded builds
...
The offending symbol gets stripped away by wasm-dce but it's used on the
JavaScript side and causes and undefined symbol which also causes the
closure compiler to throw an error.
2024-07-26 12:28:36 +02:00
Adam Scott
2f5f84b470
Fix audio samples not being able to be "finished"
2024-07-17 10:45:38 -04:00
Rémi Verschelde
8897c77d50
SCons: Default optimize
to auto
, fixing target
/dev_build
inference for Web
...
Fixes #94087 .
2024-07-09 00:21:29 +02:00
Rémi Verschelde
42e5b3ac2d
Merge pull request #94044 from adamscott/fix-web-sample-playback-finished-signal
...
Fix Web samples finished missing signal
2024-07-07 21:59:00 +02:00
Adam Scott
a38f30fbd5
Fix Web samples finished missing signal
2024-07-07 14:47:54 -04:00
Anni Ryynänen
d926223c64
Fix IME blocking controls
2024-07-07 13:06:18 +03:00
Rémi Verschelde
ce16818dd5
Fix missing include in Web main after #93906
...
My bad, I introduced the bug when amending it.
2024-07-05 14:40:44 +02:00
Paul Sinnett
db97d88214
Fix preloading a zip in the web editor
2024-07-04 22:13:05 +02:00
Rémi Verschelde
01c24ff862
Merge pull request #93750 from adamscott/add-bigint-support-on-js-value-conversion
...
Add `bigint` support on JS value conversion
2024-07-04 11:31:58 +02:00
Adam Scott
ee2759013b
Add bigint
support on JS value conversion
2024-07-03 07:44:32 -04:00
Rémi Verschelde
f0d15bbfdf
Merge pull request #93853 from Faless/web/no_force_stdlib
...
[Web] Remove unnecessary `EMCC_FORCE_STDLIBS` in dlink builds
2024-07-02 17:27:35 +02:00
Fabio Alessandrelli
67c06866de
[Web] Remove unnecessary EMCC_FORCE_STDLIBS in dlink builds
...
As discussed with upstream, the C/C++ standard library is always fully
included when building with MAIN_MODULE=1, so using EMCC_FORCE_STDLIBS
is not necessary in our case.
2024-07-02 16:47:00 +02:00
Adam Scott
586db3aae7
Fix assignations to non-existing keys and clean-up
2024-06-29 14:30:57 -04:00
Adam Scott
1e8e9f4b09
Fix web export state for remote debug
2024-06-26 08:37:56 -04:00
Fabio Alessandrelli
f59c1f08d7
[Web] Add "threads"/"nothreads" feature tags to export presets
...
Following the "variant/thread_support" preset option.
2024-06-25 11:42:41 +02:00
Rémi Verschelde
c24f2f1c0c
Merge pull request #93489 from dsnopek/web-disable-getprocaddress
...
Disable `*glGetProcAddress()` on the web
2024-06-25 09:19:46 +02:00
David Snopek
8e242fe7c1
Disable *glGetProcAddress()
on the web
2024-06-24 10:57:22 -05:00
Thaddeus Crews
cc6dd8d02c
Style: Optimize .svg
files with svgo
2024-06-23 08:15:19 -05:00
Adam Scott
57db018e33
Fix pausing issues when using Web Audio samples
2024-06-20 10:32:28 -04:00
Rémi Verschelde
34b9eef177
Merge pull request #91623 from adamscott/web-default-to-nonthreaded
...
Default to non-threaded export setting for the web
2024-06-19 10:09:49 +02:00
Adam Scott
52fa4f05f3
Add samples playback support
2024-06-18 11:06:31 -04:00
Fabio Alessandrelli
27d67b5ae6
[Web] Use the module config to preload GDExtension libraries.
...
Instead of calling loadDynamicLibraries ourselves, we add the
GDExtension libraries to preload to the "dynamicLibraries" module config
property.
This seems to fix some threading issue with some browsers during the
init phase.
2024-06-14 16:04:16 +02:00
Fabio Alessandrelli
7af8c494ab
[Web] Force emcc to use "wasm" longjmp mode
...
SUPPORT_LONGJMP have changed since emscripten 3.1.32 to default to
"wasm" mode when exceptions are enabled, and "emscripten" mode when
disabled.
While we generally doesn't use exception in core, linked libraries may
need them, and emscripten don't plan to support WASM EH + Emscripten
SjLj in the long term.
2024-06-14 16:03:56 +02:00
Fabio Alessandrelli
e874cd84f0
[Web] Remove space between emscripten "-s" flags and the option
2024-06-14 16:03:56 +02:00
Adam Scott
5a01c2e954
Replace deprecated USE_WEBGL2
linker flag
2024-06-10 12:14:27 -04:00
kleonc
91e995e704
Fix creating cursor image from AtlasTexture
2024-06-05 01:44:05 +02:00
Rémi Verschelde
c98fef08bf
Merge pull request #89033 from bruvzg/doc_end_err
...
[DisplayServer] Add error messages and descriptions to callbacks.
2024-05-28 17:48:42 +02:00
bruvzg
714effdf07
[DisplayServer] Add error messages and descriptions to callbacks.
2024-05-28 17:36:54 +03:00
Rémi Verschelde
b8f3c5e2ab
Merge pull request #92427 from AThousandShips/bind_go_away
...
Replace `.bind(...).call_deferred()` with `.call_deferred(...)`
2024-05-28 15:50:01 +02:00
Rémi Verschelde
ca708b5706
Merge pull request #92026 from Repiteo/scons/web-fixes
...
SCons: Minor fixes/adjustments for web compilation
2024-05-28 15:48:49 +02:00
Rémi Verschelde
ac6f5780b1
Merge pull request #91695 from bruvzg/web_ime_pos
...
[Web IME] Fix suggestion window position in Chromium based browsers.
2024-05-28 15:48:42 +02:00
A Thousand Ships
4ed62665a2
Replace .bind(...).call_deferred()
with .call_deferred(...)
2024-05-27 13:29:57 +02:00
Thaddeus Crews
5d265e9a7e
SCons: Minor fixes/adjustments for web compilation
2024-05-24 12:30:24 -05:00
Rémi Verschelde
7870b28ed3
Merge pull request #92252 from poiati/fix-wayland-window-class
...
Properly set window class in Wayland
2024-05-23 08:59:23 +02:00
Rémi Verschelde
de490253fe
Merge pull request #92124 from Repiteo/scons/platform-flags-dict
...
SCons: Convert platform `get_flags` to dictionary
2024-05-23 08:59:07 +02:00
Thaddeus Crews
896b003cc8
SCons: Convert platform get_flags
to dictionary
2024-05-22 13:53:20 -05:00
Paulo Poiati
a3769c0edc
Properly set window class in Wayland
2024-05-22 10:42:12 -03:00
patwork
1a89ae70eb
Upgrade to eslint 9
2024-05-22 11:32:25 +02:00
Jakub Marcowski
d9f8ef68df
Update pre-commit hooks configuration to use ruff
instead of black
2024-05-21 18:02:29 -05:00
Hakim
04aaa86039
Disable remote debug button when there are no runnable presets
2024-05-17 00:15:13 +02:00
patwork
b6536884cc
Fix quotes style in HTML shell head include
2024-05-12 01:37:13 +02:00
bruvzg
99d6f32918
[Web IME] Fix suggestion window position in Chromium based browsers.
2024-05-09 08:52:27 +03:00
Adam Scott
c465dbb051
Default to non-threaded export setting for the web
2024-05-06 12:21:14 -04:00
A Thousand Ships
955d5affa8
Reduce and prevent unnecessary random-access to List
...
Random-access access to `List` when iterating is `O(n^2)` (`O(n)` when
accessing a single element)
* Removed subscript operator, in favor of a more explicit `get`
* Added conversion from `Iterator` to `ConstIterator`
* Remade existing operations into other solutions when applicable
2024-05-04 16:08:55 +02:00
Radiant
789c6ebdfd
Implement amplitude
to Input.vibrate_handheld
...
Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>
Co-authored-by: m4gr3d <m4gr3d@users.noreply.github.com>
2024-05-02 19:09:42 +03:00
Adam Scott
51d2ebf2da
Add more Remote Debug options to the web platform
2024-05-01 14:11:05 -04:00