Commit Graph

4850 Commits

Author SHA1 Message Date
Eoin O'Neill
8de98dbf21 Prevent double input events on gamepad when running through steam input
During GDC and general testing on Steam Deck units, we found that single
gamepads would often register inputs twice under certain circumstances.
This was caused by SteamInput creating a new virtual device, which Godot
registers as a second gamepad. This resulted in two gamepad devices
reporting the same button presses, often leading to buggy input response
on games with no multi-device logic and other-wise could cause intended
Steam rebindings to not work as intended (for example, swapping o and x
on a playstation pad if that feature isn't supported by the game.)

SDL gets around this by taking in a list of devices that are to be
ignored. When valve sees a controller that wants to be rebound via
SteamInput, they push a new VID/PID entry onto the environment
variable `SDL_GAMECONTROLLER_IGNORE_DEVICES` for the original gamepad
so that all game inputs can be read from the virtual gamepad instead.

This leverages the same logic as we are already using SDL gamepad
related HID mappings.
2023-07-10 15:26:33 -07:00
Hugo Locurcio
0b19ec3498
Display a message about missing C# support on Android/iOS/Web platforms
When trying to export a C# project, this displays an error message after
creating a export preset for an unsupported platform.

Support for these platforms is planned for a future release.
2023-06-24 00:09:06 +02:00
Rémi Verschelde
d586096415
Merge pull request #72720 from pkdawson/fix-mouse-capture
DisplayServerWindows: Fix mouse capture when button up message is missed
2023-06-22 18:29:34 +02:00
Rémi Verschelde
90446fe9f3
SCons: Move platform logo/run icon to export folder
Follow-up to #75932.
Since these icons are only used by the export plugin, it makes sense to
move them and generate the headers there.

The whole `detect.is_active()` logic seems to be a leftover from before
times, as far back as 1.0-stable it already wasn't used for anything.

So I'm removing it and moving the export icon generation to
`platform_methods`, where it makes more sense.
2023-06-20 13:16:37 +02:00
Rémi Verschelde
ddaefb3cd6
Merge pull request #78455 from aaronfranke/macos-fix-tex-format-valid
macOS: Finish checking templates before validating texture formats
2023-06-20 13:14:23 +02:00
Rémi Verschelde
65628f23c5
Merge pull request #78175 from phil-hudson/fix-#78105
Android: Set pending intent flag to stop insta-crash
2023-06-20 13:14:07 +02:00
Phil Hudson
ce7f648694 fix(android): set pending intent flag to stop insta-crash
fix(android): add conditional check for minimum sdk version

fix(android): formatting

fix(android): formatting

fix(android): formatting

fix(android): formatting again
2023-06-20 16:56:59 +08:00
Aaron Franke
a981158d1a
macOS: Finish checking templates before validating texture formats 2023-06-19 21:36:31 -05:00
Rémi Verschelde
217a20a8a0
Merge pull request #78448 from akien-mga/black-23.3.0
CI: Update static checks to black 23.3.0
2023-06-20 00:05:39 +02:00
Rémi Verschelde
356a602186
Merge pull request #74511 from AThousandShips/win_cursor_fix
Fix clearing custom cursor
2023-06-20 00:00:57 +02:00
Rémi Verschelde
c9c941e339
CI: Update static checks to black 23.3.0
And apply it to the codebase, removing empty lines at the start of blocks.
2023-06-19 23:33:02 +02:00
Rémi Verschelde
eb9c96b87c
Merge pull request #78123 from YeldhamDev/if_you_want_anything_done,_do_it_yourself
Allow exporting release Android builds without a debug keystore
2023-06-19 10:27:44 +02:00
Rémi Verschelde
01e84b1da1
Merge pull request #67158 from amoriqbal/fix_error_message
Fix the conditions for firing 'No such file or directory' error on Linux `move_to_trash`
2023-06-19 10:26:50 +02:00
Michael Alexsander
41a75cfa4f
Allow exporting release Android builds without a debug keystore 2023-06-19 01:00:13 -03:00
bitsawer
3c42496fb0 Fix Clang dev_mode build const string conversion 2023-06-16 14:54:36 +03:00
Rémi Verschelde
598378513b
Merge pull request #78319 from bruvzg/fix_lipo_fa
[macOS export] Fix lipo file handling.
2023-06-16 10:24:37 +02:00
Rémi Verschelde
6d1ca52792
Merge pull request #78306 from m4gr3d/cleanup_launch_flow_main
Add parameters for the Godot Activity starting intent to allow restarting or force-quitting the engine
2023-06-16 10:23:50 +02:00
bruvzg
c7f4e3fd25 [macOS export] Fix lipo file handling. 2023-06-16 11:07:56 +03:00
bruvzg
28db3c7158 [DisplayServer] Add method to check if native window is focused. 2023-06-16 10:27:52 +03:00
Fredia Huya-Kouadio
0664f5ec3b Add parameters for the Godot Activity starting intent to allow restarting or force-quitting the engine
Follow-up code cleanup for https://github.com/godotengine/godot/pull/78129
2023-06-15 21:41:49 -07:00
Danil Alexeev
2d2b2cadfa
Fix bsd feature tag includes only "other BSDs" 2023-06-15 16:25:18 +03:00
Álex Román Núñez
938a837056 Disable NVIDIA's threaded optimization on Windows 2023-06-13 11:47:40 +02:00
Rémi Verschelde
9e7349bda3
Merge pull request #78151 from jpcerrone/fix_windowed_move_problems
Fix window resizing problems on Windows
2023-06-13 10:27:14 +02:00
RedworkDE
5c57b3aba4 Fix docs after renaming export option 2023-06-12 23:59:55 +02:00
Rémi Verschelde
54a8adfd50
Merge pull request #75984 from KoBeWi/ConsoleMcWrap
Rename console script to wrapper
2023-06-12 22:54:24 +02:00
jpcerrone
a80584664c Fix window resizing problems on Windows
Fixes godotengine#76847, Fixes godotengine#74286
Reorders problematic steps from the DisplayServerWindows::window_set_mode function.
These were causing a resize with the dimensions of the previously used mode instead
of the current one.
2023-06-12 15:26:34 -03:00
bruvzg
974a7a89c6
[iOS] Fix orientation change in runtime. 2023-06-12 14:13:53 +03:00
Rémi Verschelde
54ab17eb21
Merge pull request #78129 from m4gr3d/fix_open_new_project_main
Fix issue causing the last edited project to open while switching to another one
2023-06-12 11:57:59 +02:00
Rémi Verschelde
26e5a98306
Merge pull request #77770 from jpcerrone/fix_minimize_missing
Fix minimize button missing in non-resizable projects
2023-06-12 11:39:08 +02:00
Fredia Huya-Kouadio
a951a14b16 Fix issue causing the last edited project to open while switching to another one.
Fixes https://github.com/godotengine/godot/issues/76562
2023-06-11 22:29:35 -07:00
Fredia Huya-Kouadio
dcd31a25b4
Merge pull request #78083 from m4gr3d/fix_multitouch_detection_spatial_viewport_main
Fix spatial viewport multitouch detection support
2023-06-11 18:08:59 -07:00
Fredia Huya-Kouadio
2c050cc17e Fix spatial viewport multitouch detection support
Regression introduced by https://github.com/godotengine/godot/pull/77498
2023-06-10 08:47:24 -07:00
Aaron Franke
944fbce347
Enable S3TC_BPTC but not ETC2_ASTC by default 2023-06-09 11:38:29 -05:00
Dominik
19ce63d875 Added a few additional GUIDs to list of hardcoded IDs in is_xinput_device 2023-06-09 15:02:19 +02:00
Rémi Verschelde
a5a23678c4
Merge pull request #78029 from bruvzg/macos_fix_popup_ime_focus
[macOS] Fix IME focus in popup windows.
2023-06-09 11:08:06 +02:00
Rémi Verschelde
759309ba18
Merge pull request #77977 from zaevi/fix_windows_popup_ime
Fix IME doesn't work under Popup on Windows.
2023-06-09 11:06:02 +02:00
bruvzg
fe2d9e5bdf
[macOS] Fix IME focus in popup windows. 2023-06-09 08:03:13 +03:00
Rémi Verschelde
9e4315bb50
Style: Harmonize header includes in platform ports
This applies our existing style guide, and adds a new rule to that style
guide for modular components such as platform ports and modules:

Includes from the platform port or module should be included with relative
paths (relative to the root folder of the modular component, e.g.
`platform/linuxbsd/`), in their own section before Godot's "core" includes.

The `api` and `export` subfolders also need to be handled as self-contained
(and thus use relative paths for their "local" includes) as they are all
compiled for each editor platform, without necessarily having the api/export
matching platform folder in the include path.
E.g. the Linux editor build will compile `platform/android/{api,export}/*.cpp`
and those need to use relative includes for it to work.
2023-06-08 15:19:19 +02:00
Fredia Huya-Kouadio
b2cd6a8a95 Add setting to control the window used to run the project for the Android editor
The follow options were added to the (new) `run/window_placement/android_window` editor setting:

- `Same as Editor`: run the project in the same window as the editor
- `Side-by-side with Editor`: run the project in an adjacent window to the editor
- `Auto`: choose how to run the project based on the device screen size
2023-06-07 18:32:52 -07:00
Zae
1b149b7440 Fix IME doesn't work under Popup on Windows. 2023-06-08 02:40:36 +08:00
Rémi Verschelde
2ae5a0704a
X11: Fix vformat ambiguous int types for GCC 10 (again) 2023-06-07 14:57:51 +02:00
MJacred
2c5e2196bd Replace get_rendering_device() call to prevent crashes on OpenGL.
And make OpenGL video adapter info align with Vulkan.
2023-06-06 23:29:36 +02:00
Rémi Verschelde
0010b34a37
Merge pull request #75099 from mxnemu/add-default-x11-error-handler
[Linux/X11] Add a default error handler for X11 to avoid crashes.
2023-06-05 18:04:49 +02:00
nee
b13c82e964 [Linux/X11] Add a default error handler for X11 to avoid crashes.
The default behaviour for X11 is to crash even on non-fatal errors
when there is no error handler set. This change allows the window to
stay open and may enable users to save their work when things go
wrong.

This acts as a workaround for #65425 and #68471
2023-06-05 17:28:21 +02:00
Michael Alexsander
71d8882a02
Enhance icon fallback and their docs for exporters 2023-06-03 19:28:50 -03:00
Rémi Verschelde
8623572b1f
Merge pull request #75666 from ronyeh/main.cpp-2
Rename `iconpath` => `icon_path` & `hasicon` => `has_icon`.
2023-06-02 17:26:18 +02:00
jpcerrone
c819da7fdb Fix minimize button missing in non-resizable projects.
Fixes https://github.com/godotengine/godot/issues/77603.
On Windows, disabling the 'resizable' flag on the project
settings would also remove the minimize button from the window.
2023-06-02 10:31:50 -03:00
bruvzg
e15f37945b
[Linux/TTS] Cache TTS voice list. 2023-06-02 14:00:52 +03:00
hlutor
a932c5e81d Added override for window_get_vsync_mode in display_server_web.cpp 2023-05-31 18:23:06 -06:00
Rémi Verschelde
574f917442
Merge pull request #77686 from m4gr3d/fix_editor_audio_stream_microphone_crash_main
Fix issue causing the Android editor to crash when creating a new AudioStreamMicrophone
2023-06-01 00:40:49 +02:00