naelstrof
b49e9c9896
Made signal handling more uniform. Fixes #82102
2023-09-22 20:06:58 -06:00
Rémi Verschelde
bafcd32f15
Merge pull request #81716 from akien-mga/web-disable-raycast-embree
...
Web: Disable raycast module by default (no occlusion culling)
2023-09-22 22:03:55 +02:00
Aitor Guevara
6263774aec
[Windows] Fix not applying NVIDIA profile to new executables
...
An NVIDIA profile is applied to the current executable to disable
threaded OpenGL optimizations on Windows (see #71472 ). But because the
application is only added to the profile upon the profile creation,
newer executables won't be added to the profile (e.g. if the profile is
created on first launch of Godot_v4.1-stable_win64.exe, when users
update the editor and launch Godot_v4.2-stable_win64.exe, the profile
will never be applied to this new executable).
This patch fixes that scenario by splitting creating the profile (if it
doesn't exist) and adding the application (if it doesn't have a profile
applied) into two separate steps.
Applications that have been manually added to a different profile aren't
overriden to avoid confusing users who know what they're doing.
2023-09-22 20:51:12 +02:00
Rémi Verschelde
603119d301
Merge pull request #82037 from bruvzg/macos_gl_min_size
...
[macOS] Enforce non-zero window size.
2023-09-21 14:27:42 +02:00
Rémi Verschelde
cc0a02c75c
Merge pull request #82031 from bruvzg/borderless_fs
...
[Windows] Use clear color for non exclusive fullscreen border, fix maximize for borderless window switching to exclusive fs.
2023-09-21 14:27:39 +02:00
bruvzg
1887a9df19
[macOS/Windows] Add optional ANGLE backed OpenGL renderer support. Add EGL_ANDROID_blob_cache caching.
...
Co-authored-by: Riteo <riteo@posteo.net>
2023-09-21 14:21:00 +03:00
bruvzg
901e090e56
[macOS] Enforce non-zero window size.
2023-09-21 12:37:18 +03:00
bruvzg
b826cd5acd
[Windows] Use clear color for non exclusive fullscreen border, fix maximize for borderless window switching to exclusive fs.
2023-09-21 11:24:40 +03:00
bruvzg
f316283823
[macOS export] Fix GDExtension framework +x flag errors, allow recursive signing on non macOS platform.
2023-09-20 12:21:18 +03:00
bruvzg
6da8c7a662
[macOS] Workaround Xcode 15 linker bug.
2023-09-20 11:03:44 +03:00
Rémi Verschelde
50161808c2
Web: Fix version check for missing scalbnf LTO workaround
...
The check needs to happen after we set `env["CXX"]`.
Follow-up to #81340 .
2023-09-18 16:32:20 +02:00
Rémi Verschelde
4b2fb36a04
Merge pull request #80644 from Distantz/master
...
Android Stylus pressure and tilt support.
2023-09-17 14:46:39 +02:00
Rémi Verschelde
8c40edf8c0
Web: Disable raycast module by default (no occlusion culling)
...
This means no CPU occlusion culling (and not compiling Embree), unless
you compile custom export templates with `module_raycast_enabled=yes`.
This reduces the memory footprint significantly, and binary size.
Fixes #70621 .
Co-authored-by: Hugo Locurcio <hugo.locurcio@hugo.pro>
2023-09-16 21:00:04 +02:00
Yuri Sizov
48e1c19dea
Merge pull request #81583 from AThousandShips/null_check_drivers_platform
...
[Drivers,Platform] Replace `ERR_FAIL_COND` with `ERR_FAIL_NULL` where applicable
2023-09-15 19:48:18 +02:00
Yuri Sizov
55840c5d24
Merge pull request #80932 from m4gr3d/fix_hardware_keyboard_input_routing_main
...
Fix Android input routing logic when using a hardware keyboard
2023-09-14 15:21:28 +02:00
A Thousand Ships
3565d1bf7e
[Drivers,Platform] Replace ERR_FAIL_COND
with ERR_FAIL_NULL
where applicable
2023-09-12 20:13:32 +02:00
Rémi Verschelde
df5376c4c0
Merge pull request #80761 from adamscott/change-default-android-package-unique-name
...
[Android] Change the default "org.godotengine" package name to "com.example"
2023-09-11 15:35:56 +02:00
Adam Scott
00e9bafb73
Change the default org.godotengine to com.example
2023-09-11 09:01:36 -04:00
Rémi Verschelde
08c578c54c
Merge pull request #81416 from akien-mga/uwp-ce-nest-qu-un-au-revoir
...
UWP: Remove platform port, needs to be redone from scratch for 4.x
2023-09-07 16:33:40 +02:00
Rémi Verschelde
2cd740fd7a
Merge pull request #81105 from SysError99/master-fix-js-mem-leak
...
Fix JavaScript callback memory leak issue
2023-09-07 16:32:06 +02:00
Rémi Verschelde
8de6405288
UWP: Remove platform port, needs to be redone from scratch for 4.x
...
The UWP platform port was never ported to the Godot 4.0+ API,
and it's now accumulating bitrot as it doesn't compile, and thus
we no longer propagate platform changes in it.
So we finally remove to acknowledge this state. There's still some
interest in reviving the UWP port eventually, especially as support
for Direct3D 12 will soon be merged, but when that happens it will
be easiest to redo it from scratch.
2023-09-07 15:01:59 +02:00
SysError99
6a90164a03
Fix JavaScript callback memory leak issue
...
Typo fix
2023-09-07 19:59:45 +07:00
Yuri Sizov
d8ff69d53c
Extract ScriptInstance to simplify includes
...
This allows to include script_instance.h directly in the
generated gdvirtual.gen.inc, and remove excessive includes
from the codebase.
This should also allow Resource to use GDVIRTUAL macros,
which wasn't possible previously due to a circular dependency.
2023-09-06 22:54:38 +02:00
Yuri Sizov
2282fc5de9
Merge pull request #81368 from m4gr3d/relax_android_plugin_v1_deprecation
...
Relax restriction on loading v1 Android plugins on Godot 4.2+
2023-09-06 14:49:43 +02:00
Yuri Sizov
2ced50f310
Merge pull request #81365 from bruvzg/ios_export_ext
...
[iOS export] Switch export target extension based on export type.
2023-09-06 14:49:40 +02:00
Yuri Sizov
07176632a6
Merge pull request #81339 from bruvzg/macos_fix_mvk_live_resize
...
[macOS] Fix live resize with the latest MoltenVK version.
2023-09-06 14:49:30 +02:00
Yuri Sizov
3c63dce3cd
Merge pull request #80573 from KoBeWi/2k_lines_of_changes_created_at_2AM
...
Add EditorStringNames singleton
2023-09-06 14:49:02 +02:00
Rémi Verschelde
bceac8c34f
Merge pull request #81340 from akien-mga/web-workaround-emscripten-3.1.42-lto-bug
...
Web: Workaround Emscripten 3.1.42+ LTO regression
2023-09-06 13:50:39 +02:00
Fredia Huya-Kouadio
12d96eeaef
Relax restriction on loading v1 Android plugins on Godot 4.2+
2023-09-06 02:59:44 -07:00
bruvzg
26951000ab
[iOS export] Switch export target extension based on export type.
2023-09-06 11:58:43 +03:00
bruvzg
208b379986
[macOS] Fix live resize with the latest MoltenVK version.
2023-09-05 16:21:08 +03:00
Rémi Verschelde
b064008c07
Web: Workaround Emscripten 3.1.42+ LTO regression
...
Fixes #80010 .
2023-09-05 14:58:52 +02:00
Fredia Huya-Kouadio
8cc7739197
Godot Android plugin re-architecture
2023-09-03 17:04:10 -07:00
kobewi
6de34fde27
Add EditorStringNames singleton
2023-09-03 19:58:18 +02:00
ocean (they/them)
bbafe14970
Build system: add option for MSVC incremental linking.
2023-08-29 18:53:45 -04:00
Rémi Verschelde
5b5471e30a
Merge pull request #78908 from zorbathut/pr_gitignore
...
Add static check for overzealous .gitignores and fix an example of such.
2023-08-29 12:41:53 +02:00
Rémi Verschelde
120abd12c2
Merge pull request #79504 from Pingar5/master
...
Android: Add option to always use WiFi to connect to remote debug
2023-08-28 15:02:13 +02:00
Rémi Verschelde
6584cd88d9
Merge pull request #78963 from bgie/comma_in_filename
...
Windows: Always double-quote path when launching explorer.exe to browse
2023-08-28 15:01:49 +02:00
Brennen Shaughnessy
40b08cb4b6
Android: Add option to always use WiFi to connect to remote debug
2023-08-28 13:13:36 +02:00
Brecht Kuppens
5608b1d411
Windows: Always double-quote path when launching explorer.exe to browse
...
Code now always double quotes the filename to use as command line
argument when calling explorer.exe. In particular, commas in a filename
would be interpreted by explorer.exe as separators for commands.
Similarly a trim_suffix for "file://" is assumed to be a mistake, this
could potentially be a PREfix that we want to strip, but never a suffix.
Since it didn't seem needed in the end, we removed it.
2023-08-28 12:46:50 +02:00
Emmanouil Papadeas
c662491bd4
Fix JavaScriptBridge.eval()
never returning PackedByteArray
...
It wrongly returned 20 on array buffers, which used to be the enumerator
value of Godot 3.x's type PoolByteArray, and now is the value of type Color,
while it should return 29 which is the enumerator value for PackedByteArray.
2023-08-28 11:37:55 +02:00
Yuri Sizov
d476cdff34
Merge pull request #80918 from bruvzg/scons_wrp_deps
...
[Windows] Add main executable to the console wrapper dependencies to prevent simultaneous linking.
2023-08-25 14:58:55 +02:00
bruvzg
2e1f48ff6e
[Native File Dialogs] Refocus last focused window on close.
2023-08-24 09:34:58 +03:00
Fredia Huya-Kouadio
87102e358d
Fix Android input routing logic when using a hardware keyboard
...
When a hardware keyboard is connected, all key events come through so we can route them directly to the engine.
This is not the case for soft keyboards, for which the current logic was designed as it requires extra processing.
2023-08-23 09:57:00 -07:00
bruvzg
f37ace7036
[Windows] Add main executable to the console wrapper dependencies to prevent simultaneous linking.
2023-08-23 09:54:06 +03:00
Haoyu Qiu
d026b37abd
Fix various typos in classref
2023-08-22 18:05:50 +08:00
Hugo Locurcio
469c462b76
Add missing tutorials to documentation classes
2023-08-19 20:29:24 +02:00
Hugo Locurcio
6f1152bdbe
Add a --audio-output-latency
command-line argument
...
This allows optimizing the audio output latency on higher-end CPUs,
especially in projects that do not expose a way to override this setting.
2023-08-17 14:45:17 +02:00
Rémi Verschelde
c72b851dfb
Merge pull request #80104 from bruvzg/freedesktop_native_file_dialog
...
[Linux/Freedesktop] Implement native file selection dialog support.
2023-08-17 11:23:00 +02:00
Rémi Verschelde
9a48b14a2d
Merge pull request #80036 from PorkrollPosadist/fix-wayland-window-behavior
...
Use EWMH for `DisplayServerX11::_window_minimize_check()` implementation
2023-08-17 11:22:36 +02:00
Rémi Verschelde
314cdf456b
Merge pull request #79578 from Faless/web/4.x_dlink_visibility
...
[Web] Use `fvisibility=hidden` for side module when dlink_enabled.
2023-08-17 11:21:47 +02:00
Aaron Franke
ada360affe
Add a button in the export dialog to fix missing texture formats
2023-08-17 02:56:42 -05:00
bruvzg
6cc314e0fa
[Linux/Freedesktop] Implement native file selection dialog support.
2023-08-17 10:56:16 +03:00
Rémi Verschelde
3907e53ff6
SCons: Disable C++ exception handling
...
Upon investigating the extremely slow MSVC build times in #80513 , I noticed
that while Godot policy is to never use exceptions, we weren't enforcing it
with compiler flags, and thus still included exception handling code and
stack unwinding.
This is wasteful on multiple aspects:
- Binary size: Around 20% binary size reduction with exceptions disabled
for both MSVC and GCC binaries.
- Compile time:
* More than 50% build time reduction with MSVC.
* 10% to 25% build time reduction with GCC + LTO.
- Performance: Possibly, needs to be benchmarked.
Since users may want to re-enable exceptions in their own thirdparty code
or the libraries they compile with Godot, this behavior can be toggled with
the `disable_exceptions` SCons option, which defaults to true.
2023-08-16 10:23:34 +02:00
Rémi Verschelde
6c3735cb7c
Merge pull request #80569 from m4gr3d/show_in_app_library_settings_main
...
Add export setting to control whether to show the Godot app in the app library
2023-08-16 09:13:30 +02:00
pikethom
7494ad6b54
Android stylus pressure and tilt support
2023-08-15 19:55:17 +12:00
Rémi Verschelde
efdff9cbc2
Fix GCC -Wmaybe-uninitialized warnings
2023-08-14 14:35:35 +02:00
Fredia Huya-Kouadio
63d47dced0
Add export setting to control whether to show the Godot app in the app library
2023-08-13 09:54:10 -04:00
scgm0
05bc070f7c
C#: Fix exporting for Android
2023-08-12 09:22:49 +08:00
Rémi Verschelde
bc1aef88ee
SCons: Disable misbehaving MSVC incremental linking
...
Fixes #77968 .
2023-08-10 14:04:19 +02:00
Rémi Verschelde
49f0d8cee3
Merge pull request #80279 from Sauermann/fix-x11-mouse-window-event-crash
...
Track hovered `Window` in `DisplayServerX11`
2023-08-10 00:43:00 +02:00
Rémi Verschelde
11ea4dc466
Merge pull request #80439 from bruvzg/macos_mouse_enter_exit
...
[macOS] Fix missing mouse exit events on window close.
2023-08-09 15:20:39 +02:00
Rémi Verschelde
d255811443
Merge pull request #80404 from bruvzg/file_attribs
...
[FileAccess] Add methods to get/set "hidden" and "read-only" attributes on macOS/BSD and Windows.
2023-08-09 15:20:32 +02:00
Markus Sauermann
a7c5849f98
Track hovered Window
in DisplayServerX11
...
Send mouse-entered/exited window-events only when necessary
2023-08-09 12:20:23 +02:00
bruvzg
78caaf3717
[macOS] Fix missing mouse exit events on window close.
2023-08-09 10:23:57 +03:00
bruvzg
8aa6f29b56
[FileAccess] Add methods to get/set "hidden" and "read-only" attributes on macOS/BSD and Windows.
2023-08-08 21:51:32 +03:00
Tyler
3cf1e04579
Fix Windows console wrapper and icon being swapped
...
Fixes #80238 .
2023-08-07 12:46:23 -04:00
Rémi Verschelde
6a0410bbc2
Merge pull request #80240 from bruvzg/x11_ext_checks
...
[X11] Do not fail DisplayServer init if non-essential extensions are missing.
2023-08-07 14:50:47 +02:00
Rémi Verschelde
048a164083
Merge pull request #79693 from bruvzg/com_ath
...
[Windows] Initialize COM as apartment-threaded.
2023-08-07 14:48:40 +02:00
Rémi Verschelde
9d6570af3b
Merge pull request #79456 from bruvzg/popup_area_fix
...
Fix native popups auto-closing when interacting with non-client area.
2023-08-07 14:47:02 +02:00
Rémi Verschelde
faaf27f284
Fix various typos with codespell
...
Also includes typo fixes from #79993 , #80068 , #80276 , and #80303 .
Co-authored-by: betalars <contact@betalars.de>
Co-authored-by: spaceyjase <429978+spaceyjase@users.noreply.github.com>
Co-authored-by: Swarkin <102416174+Swarkin@users.noreply.github.com>
Co-authored-by: Raul Santos <raulsntos@gmail.com>
2023-08-07 13:09:47 +02:00
bruvzg
e26a6c36c8
Fix native popups auto-closing when interacting with non-client area.
2023-08-07 10:01:48 +03:00
Yuri Sizov
dc6ea03101
Merge pull request #35555 from Calinou/add-version-project-setting
...
Add a "version" project setting and use it in new export presets
2023-08-04 21:01:15 +02:00
Rémi Verschelde
cc6a60913a
Merge pull request #78325 from akien-mga/libpng-moar-intrinsics
...
libpng: Enable intrinsics on x86/SSE2, ppc64/VSX, and all arm/NEON
2023-08-04 17:04:07 +02:00
Rémi Verschelde
2c9b7fc7a8
libpng: Enable intrinsics on x86/SSE2, ppc64/VSX, and all arm/NEON
2023-08-04 14:57:21 +02:00
Haoyu Qiu
097c849395
Fix various typos in classref
2023-08-04 16:29:55 +08:00
Hugo Locurcio
ad4480bf2e
Add a "version" project setting and use it in new export presets
...
This makes it easy to retrieve the project version at runtime
for display purposes, while simplifying the export preset configuration.
You can now leave the version empty unless you need to override it on a per-preset
basis.
Since export presets save the values of default values to the `export_presets.cfg`
file, this change only affects export presets created after this commit was merged.
2023-08-04 10:29:33 +02:00
bruvzg
acff87ffda
[X11] Do not fail DisplayServer init if non-essential extensions are missing.
2023-08-04 10:58:14 +03:00
Yuri Sizov
1610fc2ae7
Merge pull request #78539 from EIREXE/input-info
...
Add the ability to get per-platform information for joypads
2023-08-03 22:37:45 +02:00
Álex Román Núñez
3aa340d081
Add the ability to get per-platform information for joypads.
...
This adds the ability for games to obtain platform-specific information about joypads such as their vendor/product ID, their XInput gamepad index or the real name of the device before it gets swapped out by the gamecontrollerdb's name.
This PR also includes a rebased version of #76045 , this is because this PR is intended to be mainly to help people implementing Steam Input, as having the gamepad index is essential.
2023-08-02 22:30:30 +02:00
Yuri Sizov
49305df0e0
Merge pull request #80092 from Faless/web/npm_update
...
[Web] Update npm packages
2023-08-02 21:37:05 +02:00
Yuri Sizov
24049b6646
Merge pull request #79950 from bruvzg/win_app
...
[macOS Export] Disable unpacked .app bundle export on Windows.
2023-08-02 21:37:01 +02:00
bruvzg
b240b5be84
[Windows] Do not force redraw window background on mouse pass-through region change.
2023-08-02 10:40:40 +03:00
Markus Sauermann
8c1ce404d7
Fix crash on Windows when closing Window
...
Send `WINDOW_EVENT_MOUSE_EXIT` when a window is destroyed.
Ensure, that on Windows, the event_callback is still valid during
destroying the `Window`.
2023-08-02 00:17:25 +02:00
PorkrollPosadist
5666656d42
Use EWMH for DisplayServerX11::_window_minimize_check() implementation
2023-07-31 16:35:18 -04:00
Fabio Alessandrelli
61e7d47344
[Web] Update npm packages
2023-07-31 21:43:59 +02:00
Fredia Huya-Kouadio
867fc02551
Fix npe when registering the sensors.
2023-07-28 18:58:16 -07:00
Yuri Sizov
0c2399d6ec
Merge pull request #63826 from deakcor/dev_clipboard
...
Add `clipboard_has/get_image` methods to DisplayServer
2023-07-27 15:22:16 +02:00
bruvzg
56bd7adae4
[macOS Export] Disable unpacked .app bundle export on Windows.
2023-07-27 13:21:23 +03:00
Yuri Sizov
63411859db
Merge pull request #79351 from Repiteo/dotnet-handle-warnings
...
C#: Fix MSVC dotnet builds failing if running `dev_mode`
2023-07-26 18:40:06 +02:00
bruvzg
a0c388d4e1
[Windows] Try using objcopy and strip with prefix and without prefix.
2023-07-25 09:52:38 +03:00
Yuri Sizov
bec47cdbbc
Merge pull request #79846 from Faless/web/no_body_length
...
[Web] Always return -1 as body length in HTTPClientWeb
2023-07-24 19:33:48 +02:00
Yuri Sizov
c8e191b7f4
Merge pull request #79724 from Repiteo/gcc-windows-fixes
...
Fix gcc builds failing on windows
2023-07-24 19:33:19 +02:00
Fabio Alessandrelli
f4713d235a
[Web] Always return -1 as body length in HTTPClientWeb.
...
Body length cannot be reliably retrieved from the web.
Reading the "content-length" value will return a meaningless value when
the response is compressed, as reading will return uncompressed chunks
in any case, resulting in a mismatch between the detected body size and
the actual size returned by repeatedly calling read_response_body_chunk.
Additionally, while "content-length" is considered a safe CORS header,
"content-encoding" is not, so using the "content-encoding" to decide if
"content-length" is meaningful is not an option either.
We simply must accept the fact that browsers are awful when it comes to
networking APIs.
2023-07-24 08:57:02 +02:00
Yuri Sizov
88c1e0d528
Merge pull request #79350 from kleonc/screen_to_pixel_byte_to_float_conversion_fix
...
Fix byte to float color conversion in `DisplayServerWindows::screen_get_pixel`
2023-07-21 17:54:21 +02:00
Thaddeus Crews
d848c95748
Fix gcc builds failing on windows
2023-07-20 18:01:52 -05:00
bruvzg
4bfb820d32
[Windows] Initialize COM as apartment-threaded.
2023-07-20 12:14:16 +03:00
Yuri Sizov
0c2144da90
Remove excessive include that breaks compilation on Windows
2023-07-18 22:09:48 +02:00
Yuri Sizov
8f175a8649
Merge pull request #78958 from m4gr3d/refactor_android_plugin_packaging_main
...
Re-architect how Android plugins are packaged and handled at export time
2023-07-18 20:47:41 +02:00
Fredia Huya-Kouadio
b52e1be2c2
Clean up the XR features parameters from core
...
Following on the previous commit, the XR features logic have now be moved to the Godot OpenXR loader plugin.
See https://github.com/GodotVR/godot_openxr_loaders/pull/38
2023-07-18 19:14:53 +02:00