Commit Graph

7078 Commits

Author SHA1 Message Date
7d46f0f733 Merge pull request #106365 from stuartcarnie/sgc_macos_modifier_state_focus
macOS: Send initial modifier keys as input events
2025-05-15 10:22:28 -05:00
82ea0b9293 Merge pull request #106358 from m4gr3d/update_ndk_28
[Android] Add support for 16 KB page sizes, update to NDK r28b
2025-05-15 10:22:27 -05:00
59cd4b823b Merge pull request #106435 from akien-mga/android-readd-generate_apk-alias
Android: Re-add `generate_apk` alias for compatibility
2025-05-15 10:22:20 -05:00
902d2b45bb Merge pull request #106400 from RandomShaper/win_compat
Improve platform compatibility of Windows and Direct3D 12
2025-05-15 10:22:16 -05:00
8134f3fe4b Merge pull request #106394 from vmedea/2025-libdecor
Wayland: Unbreak build with `libdecor=no`
2025-05-15 10:22:15 -05:00
3cd7b5b9a8 [Wayland] Implement the cursor-shape-v1 protocol
Related #106229. The cursor-shape protocol allows us to not have to deal with cursor theming and instead depend on the
compositor for it.
This still does not quite solve the issue when the compositor doesn't implement the protocol
(or running under the x11 backend) but for gnome/kde and a few more this should resolve things.
2025-05-15 15:42:48 +01:00
8851c5a54d Android: Re-add generate_apk alias for compatibility 2025-05-15 12:42:29 +02:00
820380817a Exclude RD creation test functions from templates 2025-05-15 10:12:38 +02:00
53bee4eb56 Windows: Restrict time API use to the desktop flavor 2025-05-15 10:12:16 +02:00
9a631d1e45 macOS: Send initial modifier keys as input events
This ensures if a user is holding SHIFT or OPTION to perform a modified
action, it is correctly handled by the application.

Examples include SHIFT+Click to add to the selection.
2025-05-15 16:58:49 +10:00
a3913b045d Wayland: Fix stuck pointer buttons on window leave
This issue came from the frame-based refactoring done in the multiwin
PR.

It looks like some (all?) compositors group certain events alongside
`wl_pointer::leave`, which I absolutely did not expect. The docs don't
seem to mention it either from what I can tell.

We now fall-back on the old pointed window if and only if the current
window is invalid and the old one isn't. Each state fetch is guarded
with an `ERR_FAIL_NULL` so this should still catch any potentially
corrupted window with missing data but a valid ID.

I also added the usual big comment so that this "quirk" does not get
lost to time.
2025-05-14 23:30:16 +02:00
7759296594 Direct3D 12: Let platforms report support for direct composition 2025-05-14 17:48:19 +02:00
428a762e98 Merge pull request #106367 from stuartcarnie/sgc_fix_embedded_crash
macOS: Fix a crash if no input event is set for a specific window
2025-05-14 09:44:17 -05:00
d043be6031 Merge pull request #105585 from marcosc90/fix-web-update-size
[Web] Prevent unnecessary canvas resizes by flooring scaled dimensions
2025-05-14 09:44:13 -05:00
ae68a216b9 Merge pull request #106383 from bruvzg/macos_isdef
Fix macOS build with `dev_build=yes` and `target=template_debug`
2025-05-14 09:44:12 -05:00
fb39aa4fd3 Merge pull request #105833 from marcosc90/perf-web-shader-source
[Web] Optimize `GL.getSource` for known-length shader sources
2025-05-14 09:44:08 -05:00
ffb7358232 Merge pull request #105673 from bruvzg/macos_close_fs
[macOS] Fix close button hidden and title bar transparent in fullscreen mode.
2025-05-14 09:44:07 -05:00
e3ad8129f7 Merge pull request #105601 from marcosc90/perf-web-gamepad
[Web] Avoid unnecessary gamepad polling when no gamepads are connected
2025-05-14 09:44:04 -05:00
d213e72866 wayland: Unbreak build with libdecor=no
In #101774, some libdecor-specific code was added, but without adding the guards. This broke the build with
`libdecor=no`.

Add `#ifdef` guard as necessary.
2025-05-14 13:36:45 +00:00
1de9789806 Linux: Drop ppc32 (32-bit PowerPC) architecture support
This was added together with `ppc64le` in #54490, but seemingly only for the
purpose of getting it to compile on a Linux distro that aims at maximizing
support for all CPU architectures.

I don't think anyone has ever _run_ Godot on a `ppc32` system (do those even
support OpenGL ES 3.0?) and so I don't think we should aim to support it.

Debian dropped support for its PowerPC (`ppc32`) arch in Debian 9, released
in 2017.
2025-05-14 10:22:12 +02:00
dfb2bc5f7e Fix macOS build with dev_build=yes and target=template_debug 2025-05-14 09:47:51 +03:00
aad8f57f95 Merge pull request #106355 from bruvzg/mac_emb_trans
[macOS] Fix transparent window state detection for embedded process.
2025-05-13 16:22:30 -05:00
4cd27d7fd4 Merge pull request #106094 from shiena/feature/support-android-camera
Add CameraFeed support for Android
2025-05-13 16:22:27 -05:00
d3cd48cb51 Merge pull request #106319 from adamscott/web-simd
[Web] Add WebAssembly SIMD support (`wasm_simd`) and enable it by default
2025-05-13 16:22:18 -05:00
19dcd7162b macOS: Fix a crash if no input event is set for a specific window 2025-05-14 06:57:56 +10:00
27bdc86ed1 Bump the NDK to version 28.1.13356709
Doing so automatically adds support for 16kib page to the Godot Android shared libraries.
See https://developer.android.com/guide/practices/page-sizes#compile-16-kb-alignment for details.
2025-05-13 08:27:36 -07:00
887fa78fc1 [macOS] Fix transparent window state detection for embedded process. 2025-05-13 17:09:51 +03:00
296ca79b9d Add CameraFeed support for Android
Co-authored-by: KOGA Mitsuhiro <shiena.jp@gmail.com>
2025-05-13 22:46:06 +09:00
f114a8d1d1 Add WebAssembly SIMD support 2025-05-13 07:35:53 -04:00
ddefe73c41 [macOS] Fix embedded window position when host control is moved, but not resized. 2025-05-13 14:17:45 +03:00
af62a09b42 Merge pull request #106348 from akien-mga/macos-fix-template_debug-build
macOS: Fix `template_debug` build after #105884
2025-05-13 12:49:11 +02:00
20f279cd34 Merge pull request #106345 from bruvzg/gl_leak
[X11] Fix GL init memory leak when transparency is enabled.
2025-05-13 12:49:08 +02:00
3e2c064302 macOS: Fix template_debug build after #105884 2025-05-13 12:42:13 +02:00
a12503b88c [X11] Fix GL init memory leak when transparency is enabled. 2025-05-13 13:20:02 +03:00
6a118b5027 Draw checkerboard (or clear color) under embedded window. 2025-05-13 13:16:22 +03:00
c0ebba60de Merge pull request #106166 from stuartcarnie/macos_embed_fixes
macOS: Embedded window fixes
2025-05-13 12:11:35 +02:00
db66343528 Merge pull request #106317 from stuartcarnie/sgc_macos_first_click
macOS: Process first click event without requiring focus
2025-05-13 01:05:53 +02:00
8b93b67e14 Merge pull request #106315 from Riteo/popping-up-everywhere
Wayland: Fix error spam when closing popup
2025-05-13 01:05:49 +02:00
cc07dc4273 Merge pull request #106288 from raulsntos/android/store_so_uncompressed
[Android] Store native libraries uncompressed in APK
2025-05-13 01:05:27 +02:00
f23d1968b4 Merge pull request #106247 from bruvzg/ac_wl_resize
Do not call `accessibility_set_window_rect` on Wayland, fix main windows accessibility context creation.
2025-05-13 01:05:08 +02:00
c1d3746a67 Merge pull request #105992 from uno1982/4.5-dev-fix-android-controller
Fix issues with Android controller input handling
2025-05-13 01:04:52 +02:00
544ab4ccab macOS: Process first click event without requiring focus
This improves the user experience for macOS users, to be consistent with
other macOS applications. When a Godot window is not focused, and the
user clicks on the window, the event is forwarded to the receiving
control to be processed as if the window was already focused.
2025-05-13 05:21:51 +10:00
c3b04e6e1e Wayland: fix error spam when closing popup
Previously we did not check whether the value actually changed or not
and thus would get constant errors for no reason.
2025-05-12 05:11:24 +02:00
f658161619 macOS: Embedded window can be dismissed by clicking close
- Installed a SIGINT handler to terminate the application gracefully.
- Handle varying display scaling
2025-05-12 07:09:42 +10:00
6464347157 [Android] Store native libraries uncompressed in APK 2025-05-11 21:02:44 +02:00
5441a82cfb Do not call accessibility_set_window_rect on Wayland, fix main windows accessibility context creation. 2025-05-11 12:51:46 +03:00
e9e8ddc5be Linux: Fix build with dbus=no or threads=no 2025-05-09 15:26:13 +02:00
c29545f793 Bump the minimum supported SDK version to 24
Raise the minimum supported Android version from Android 5 (Lollipop) to Android 7 (Nougat).
2025-05-08 09:45:32 -04:00
9b6e06dcf3 Merge pull request #106152 from m4gr3d/bump_target_sdk
Annual versions bump for the Android platform
2025-05-08 07:19:34 -05:00
872ca1b3c9 Merge pull request #106139 from akien-mga/crash-handler-backtrace-print
Improve script backtrace print in crash handlers
2025-05-07 12:48:25 -05:00