Commit graph

949 commits

Author SHA1 Message Date
Fredia Huya-Kouadio
94d6c3dcc6 Augment the InputEvent class with a CANCELED state
The `InputEvent` class currently supports the `pressed` and `released` states, which given the binary nature, is represented by a `bool` field.
This commit introduced the `CANCELED` state, which signals that an ongoing input event has been canceled.
To represent all the states, the `InputEventState` enum is added and the `InputEvent` logic is refactored accordingly.
2023-05-12 15:22:54 -07:00
Fredia Huya-Kouadio
2509c1691d Follow up to https://github.com/godotengine/godot/pull/76400 to fix input ANR in the Godot Android editor 2023-05-11 19:10:31 -07:00
Pedro J. Estébanez
e5b399be65 Allow concurrent buffering and dispatch of input events 2023-05-08 09:15:48 +02:00
Fredia Huya-Kouadio
f3cdff46fc Add benchmark logic
Add benchmarking measuring methods to `OS` to allow for platform specific overrides (e.g: can be used to hook into platform specific benchmarking and tracing capabilities).
2023-03-20 23:29:36 -07:00
Julien Reichardt
669749fa39
Fix Standard Gamepad Mapping triggers
(cherry picked from commit 0cec4fcc65)
2023-03-06 13:48:17 +01:00
Ricardo Subtil
e814861950
Change message of unknown joypad property from error to warning
(cherry picked from commit e841f13cdc)
2023-03-06 13:48:17 +01:00
Rémi Verschelde
bab7f1c0a6
Sync controller mappings DB with SDL2 community repo
Synced with gabomdq/SDL_GameControllerDB@436c7e3d54

(cherry picked from commit 20d6a698c7)
2023-03-06 13:48:17 +01:00
Rémi Verschelde
50c598e229
Sync controller mappings DB with SDL2 community repo
Synced with gabomdq/SDL_GameControllerDB@2e7bc45a45

(cherry picked from commit 99ae2d5212)
2023-03-06 13:48:17 +01:00
Julien Reichardt
2c18066231
Add PS3 controller guide button
(cherry picked from commit e926e1bb34)
2023-03-06 13:48:17 +01:00
Travis Veralrud
28b11a0785 iOS: Fix memory leak on touch input
Replaces iOS gesture with touch implementation

Fixes #66422

Remove godot_view_gesture_recognizer

It's now unused.

Remove input_devices/pointing/ios/touch_delay

Unused with removal of gesture.

Remove unused methods from interface

Implementation made obsolete in prior commit

Style conformance
2023-02-15 21:38:55 -08:00
Rémi Verschelde
617f5c5580
Merge pull request #64424 from RandomShaper/safe_input_synth_3.x
[3.x] Warn users about unsafe usage of `InputEvent`
2023-02-01 13:06:32 +01:00
Pedro J. Estébanez
9cd84224bd Warn users about unsafe usage of InputEvent 2023-01-31 14:41:27 +01:00
Rémi Verschelde
d4da275969
Merge pull request #69367 from dogboydog/3.x_csharp_build_exit_code
3.x Exit editor with non-zero return code if --build-solutions fails
2023-01-23 17:03:50 +01:00
Rémi Verschelde
1426cd3b3a
One Copyright Update to rule them all
As many open source projects have started doing it, we're removing the
current year from the copyright notice, so that we don't need to bump
it every year.

It seems like only the first year of publication is technically
relevant for copyright notices, and even that seems to be something
that many companies stopped listing altogether (in a version controlled
codebase, the commits are a much better source of date of publication
than a hardcoded copyright statement).

We also now list Godot Engine contributors first as we're collectively
the current maintainers of the project, and we clarify that the
"exclusive" copyright of the co-founders covers the timespan before
opensourcing (their further contributions are included as part of Godot
Engine contributors).

Also fixed "cf." Frenchism - it's meant as "refer to / see".

Backported from #70885.
2023-01-10 15:26:54 +01:00
Rémi Verschelde
5c42b82fd5
Merge pull request #70412 from Calinou/video-driver-change-require-restart
Fix Driver Name editor setting not requiring an editor restart
2022-12-22 08:56:43 +01:00
Hugo Locurcio
df301de95f
Fix Driver Name editor setting not requiring an editor restart 2022-12-21 18:59:01 +01:00
smix8
8e4f8c82c5 [3.x] Move navigation server finalize before physics server
Moves finalize_navigation_server() before physics server (and also OS in 3.x). The NavigationServer command queue can have objects from other servers like physics or visuals so it needs to be flushed before.
2022-12-20 11:16:47 +01:00
Fredia Huya-Kouadio
4110d48b63 Add boot splash for the Godot Editor 2022-12-16 09:54:50 -08:00
Rémi Verschelde
84d2f884f8
Sync controller mappings DB with SDL2 community repo
Synced with gabomdq/SDL_GameControllerDB@adf7ec1edf

(cherry picked from commit 5f35b1d516)
2022-12-12 14:49:23 +01:00
Fabio Alessandrelli
41b880582e
[Web] Add PS3 gamepad mapping for FF+Linux.
(cherry picked from commit 0fe0505f77)
2022-12-12 14:15:06 +01:00
dogboydog
6903922ace set exit code EXIT_FAILURE when --build-solutions fails 2022-11-29 23:25:28 -05:00
Rémi Verschelde
4769aa4499
Merge pull request #64564 from timothyqiu/word-wrap-3.x
[3.x] Fix `String::word_wrap()` for long words
2022-11-24 16:06:52 +01:00
Fredia Huya-Kouadio
5aab84befb Fix 'save & restart' logic for the Android Editor 2022-11-16 03:29:40 -08:00
Rémi Verschelde
92aedd5063
Merge pull request #68190 from ztc0611/3.x-ios-promotion
[3.x] Add ProMotion/High Refresh Rate Support to iOS Exports
2022-11-03 11:34:22 +01:00
Zach Coleman
e538771d4f [3.x] Add ProMotion Support to iOS Exports 2022-11-02 22:14:34 -04:00
Zach Coleman
5e7b0e3a61 [3.x] Add iOS UI Options 2022-11-02 22:13:18 -04:00
Fredia Huya-Kouadio
be4b07c3e4 Add double_tap attribute to InputEventScreenTouch
This provides parity with the `InputEventMouseButton` allowing for proper conversion between the two events.
2022-10-20 11:56:11 -07:00
Rémi Verschelde
506f7d8360 Merge pull request #64870 from MarcusElg/naninfprinting3.x
[3.x] Improve string formatting (%f) for inf and nan
2022-10-03 13:57:30 +02:00
Rémi Verschelde
7104647c65 Sync controller mappings DB with SDL2 community repo
Synced with gabomdq/SDL_GameControllerDB@81ddc73d17

(cherry picked from commit b33460c6ca)
2022-09-27 23:52:24 +02:00
Michael Alexsander
6f0c852c9b Port Input.action_press/release() changes 2022-09-26 22:25:10 -03:00
Andres Hernandez
477c7f9b74 Updated gamecontrollerdb.txt to latest to include new mappings for various controllers, including Xbox One, Nintendo Switch, Steam Deck, and 8BitDo
(cherry picked from commit 9054399900)
2022-09-09 14:11:50 +02:00
Haoyu Qiu
7ed2b09bc0 Fix parsing of XML CDATA and add test cases 2022-09-09 10:16:36 +08:00
Pedro J. Estébanez
5d0cd8659b Fix forwarding of CLI arguments taking an option
(cherry picked from commit 335a4099de)
2022-08-29 15:53:25 +02:00
Marcus Elg
e9cbe9517b Improve %f formatting for inf and nan 2022-08-25 12:58:38 +02:00
Rémi Verschelde
6358e41772
Merge pull request #64838 from akien-mga/3.x-cherrypicks
Cherry-picks for the 3.x branch (future 3.6) - 2nd batch
2022-08-25 00:51:19 +02:00
Rémi Verschelde
e6f9438d2a
Merge pull request #64532 from madmiraal/fix-63972-2-3.x
[3.x] Fix axis mapped to DPad buttons not releasing opposite button
2022-08-24 20:10:51 +02:00
Danil Alexeev
bf33de769a Add boot splash display time setting
Implements #8867.

(cherry picked from commit dad9683d11)
2022-08-24 17:30:00 +02:00
Pedro J. Estébanez
4dd3e95377 Overhaul CLI argument forwarding to processes started by the editor 2022-08-19 11:13:56 +02:00
Haoyu Qiu
51fd1c27aa Fix String::word_wrap() for long words 2022-08-18 16:56:38 +08:00
Marcel Admiraal
cdd60416ed Fix axis mapped to DPad buttons not releasing opposite button 2022-08-17 09:10:36 +01:00
Haoyu Qiu
eb176b135a Make theme tests compile in Visual Studio 2017 2022-08-06 16:06:38 +08:00
Rémi Verschelde
daa5b542b4
Merge pull request #56765 from madmiraal/fix-45592-2-3.x
[3.x] Fix mouse speed not changing fast enough
2022-08-05 22:37:44 +02:00
Rémi Verschelde
5ed5bb2a5e Sync controller mappings DB with SDL2 community repo
Synced with gabomdq/SDL_GameControllerDB@4896d2de6b

(cherry picked from commit 86647c9e42)
2022-08-05 03:03:48 +02:00
Fabio Alessandrelli
fbc7fc44ae Fix some array size function definition mismatch.
(cherry picked from commit 55845bac26)
2022-08-04 15:18:43 +02:00
Rémi Verschelde
818f1eed31 Code quality: Fix header guards consistency
Adds `header_guards.sh` bash script, used in CI to validate future
changes. Can be run locally to fix invalid header guards.
2022-07-25 14:53:37 +02:00
Rémi Verschelde
1f79b9dad5 Sync controller mappings DB with SDL2 community repo
Synced with gabomdq/SDL_GameControllerDB@880abd09c9

(cherry picked from commit b70e4fc0f3)
2022-07-18 16:05:43 +02:00
Jan Haller
861e155543 Fix exit code of --help and --version, and test them in CI
Corrects prior regression which caused ERROR output and exit code of 1.

(cherry picked from commit d38d76d039)
2022-07-08 14:54:16 +02:00
Jan Haller
da78e92321 Command line arguments '--version' and '--help' return exit code 0 instead of 255
Allows to detect whether those commands executed successfully, which makes integration with shell scripts/CI/bindings straightforward.

(cherry picked from commit e3a8edf536)
2022-07-08 14:54:10 +02:00
Rémi Verschelde
d6bcdd18c3 Input: Re-enable input accumulation disabled by error in 3.4
Input accumulation was implemented and enabled by default in 3.1, and
I don't recall major complaints around it (or bugs were fixed).

In 3.4, #42220 added input buffering and apparently toggled input
accumulation off by mistake.

This led to multiple bug reports about degraded performance on Windows,
or simply unexpected behavior change (see linked issues in #55037).

Fixes #55037.
2022-07-07 23:04:51 +02:00
Rémi Verschelde
cc9dd00e1a Revert "Command line arguments '--version' and '--help' return exit code 0 instead of 255"
This reverts commit 9e165a8c2b.
See https://github.com/godotengine/godot/pull/62550#issuecomment-1172745325.
2022-07-02 00:07:14 +02:00