Commit graph

73113 commits

Author SHA1 Message Date
Alex
cd68034e01 Add configuration option to disable Scroll Deadzone on Android 2025-04-07 22:15:31 +02:00
Thaddeus Crews
a210fe6dbd
Revert "CI: Remove "Free disk space on runner" job"
This reverts commit 6013fb1fb9.
2025-04-05 08:54:37 -05:00
Thaddeus Crews
4b36c0491e
Merge pull request #105020 from YYF233333/opt_get_inheriters
Optimize `ClassDB::get_inheriters_from_class`
2025-04-04 17:40:59 -05:00
Thaddeus Crews
f4c7a5ae1d
Merge pull request #101774 from Riteo/wayland-multiwindow-for-real-this-time
Wayland: Implement native sub-windows
2025-04-04 17:40:58 -05:00
Thaddeus Crews
046c9f540c
Merge pull request #105030 from Ivorforce/class-is-enabled-object
Move `GD_IS_CLASS_ENABLED` and respective include from `class_db.h` to `object.h`, as this is where it's needed.
2025-04-04 17:40:58 -05:00
Thaddeus Crews
b6539a7653
Merge pull request #105028 from Repiteo/core/decouple-classdb
Core: Decouple `GDCLASS` from `ClassDB`
2025-04-04 17:40:57 -05:00
Thaddeus Crews
810689e494
Merge pull request #105025 from Repiteo/ci/retire-free-disk-space
CI: Remove "Free disk space on runner" job
2025-04-04 17:40:39 -05:00
Lukas Tenbrink
aa5ca4f1a2 Move GD_IS_CLASS_ENABLED and respective include from class_db.h to object.h, as this is where it's needed. 2025-04-04 23:45:35 +02:00
Thaddeus Crews
78922d756a
Core: Decouple GDCLASS from ClassDB 2025-04-04 16:21:30 -05:00
Thaddeus Crews
6013fb1fb9
CI: Remove "Free disk space on runner" job 2025-04-04 14:15:31 -05:00
Riteo
84d3adcf2f Wayland: Implement native sub-windows
The backend is now mature enough to not explode with multiple windows
but the `DisplayServer` API still cannot meet some guarantees required
by the various Wayland protocols we use. To meet those guarantees this
patch adds three new elements to the DisplayServer API, with relative
handling logic for `Window` and `Popup` nodes:

 - `WINDOW_EVENT_FORCE_CLOSE`, which tells a window to *forcefully*
close itself and ensure a proper cleanup of its references, as Wayland
enforces this behavior;

 - `WINDOW_FLAG_POPUP_WM_HINT`, which explicitly declares a window as a
"popup", as Wayland enforces this distinction and heuristics are not
reliable enough;

 - `FEATURE_SELF_FITTING_WINDOWS`, which signals that the compositor can
fit windows to the screen automatically and that nodes should not do
that themselves.

Given the size of this feature, this patch also includes various
`WaylandThread` reworks and fixes including:

 - Improvements to frame wait logic, with fixes to various stalls and a
configurable (through a `#define`) timeout amount;

 - A proper implementation of `window_can_draw`;

 - Complete overhaul of pointer and tablet handling. Now everything is
always accumulated and handled only on each respective `frame` event.
This makes their logic simpler and more robust.

 - Better handling of pointer leaving and pointer enter/exit event
sending;

 - Keyboard focus tracking;

 - More solid window references using IDs instead of raw pointers as
windows can be deleted at any time;

 - More aggressive messaging to window nodes to enforce rects imposed by
the compositor.
2025-04-04 20:23:25 +02:00
Yufeng Ying
4029051bb1 Change ClassDB::get_inheriters_from_class. 2025-04-04 23:47:19 +08:00
Thaddeus Crews
27b2ba667c
Merge pull request #104982 from Repiteo/scons/native-warn-optimize
SCons: Integrate `WARNLEVEL` & `OPTIMIZELEVEL`
2025-04-04 09:29:38 -05:00
Thaddeus Crews
31a66d3a96
Merge pull request #103796 from runzh-crypto/validate-custom-directory
Validate custom directory when project is started
2025-04-04 09:29:37 -05:00
Thaddeus Crews
2fe029ded8
Merge pull request #104449 from mihe/jolt/v5.3.0
Jolt: Update to 5.3.0
2025-04-04 09:29:20 -05:00
runzh-crypto
9977abd697 Validate custom directory when project is started 2025-04-04 21:21:42 +08:00
Thaddeus Crews
01f0bd36a4
SCons: Integrate WARNLEVEL & OPTIMIZELEVEL 2025-04-03 18:10:29 -05:00
Thaddeus Crews
8bd9cdeea6
Merge pull request #104890 from HolonProduction/json-rpc-manual-bind
JSONRPC: Require manual method registration
2025-04-03 16:50:24 -05:00
Thaddeus Crews
21db8487a2
Merge pull request #104664 from tomfull123/missing-typed-dictionary-initializer-list
Add missing `initializer_list` constructor to TypedDictionary
2025-04-03 16:50:23 -05:00
Thaddeus Crews
cba1afd63a
Merge pull request #103639 from TokageItLab/delta-modifiers
Add `delta` argument to `_process_modification()` as `_process_modification_with_delta(delta)` and expose `advance()` at `Skeleton3D`
2025-04-03 16:50:23 -05:00
Thaddeus Crews
6bd249a4c2
Merge pull request #104850 from Repiteo/core/warning-macros
Core: Integrate warning suppression macro helpers
2025-04-03 16:50:22 -05:00
Thaddeus Crews
7f1f4e4bdc
Merge pull request #104978 from beicause/fix-disable-xr-compilation
Fix compiling with `disable_xr=yes` when 3d enabled
2025-04-03 16:50:21 -05:00
Thaddeus Crews
d56efcdf57
Merge pull request #104977 from bruvzg/mac_menu_action
[macOS] Fix native menu submenu items have wrong action and accelerators set.
2025-04-03 16:50:21 -05:00
Thaddeus Crews
b1465b925b
Merge pull request #104976 from Ivorforce/no-inheritance-list
Remove unused `get_inheritance_list_static` from `GDCLASS`.
2025-04-03 16:50:20 -05:00
Thaddeus Crews
15f7c094a2
Merge pull request #104974 from KoBeWi/errors_until_the_end_of_time
Cleanup QuickOpenDialog history and fix UID errors
2025-04-03 16:50:15 -05:00
Thaddeus Crews
8040ae7fb2
Merge pull request #104970 from syntaxerror247/nomedia-file
Android Editor: Auto create `nomedia` file to hide project files in media apps
2025-04-03 16:50:15 -05:00
Thaddeus Crews
9bbda47794
Merge pull request #104776 from BrotherShort/TextEdit-VScroll-max-tolerance
Fix TextEdit VScroll max tolerance
2025-04-03 16:50:14 -05:00
Thaddeus Crews
cb8cb95bdd
Merge pull request #104962 from beicause/pctex-fix-create-from-image
PortableCompressedTexture: Fix create compressed format from image
2025-04-03 16:50:13 -05:00
LuoZhihao
4be432cbec PortableCompressedTexture: Fix create compressed format from image 2025-04-04 03:35:32 +08:00
LuoZhihao
31c191ee72 Fix compiling with disable_xr=yes 2025-04-04 00:26:53 +08:00
HolonProduction
e2c3731cdd JSONRPC: Require manual method registration 2025-04-03 17:51:03 +02:00
Pāvels Nadtočajevs
65129d2aa2
[macOS] Fix native menu submenu items have wrong action and accelerators set. 2025-04-03 18:47:23 +03:00
Lukas Tenbrink
e6d166344b Remove unused get_inheritance_list_static from GDCLASS. 2025-04-03 17:18:28 +02:00
Thaddeus Crews
207a2b6472
Core: Integrate warning suppression macro helpers 2025-04-03 10:13:46 -05:00
Silc Lizard (Tokage) Renew
96200abb97 Add p_delta argument to _process_modification() and expose advance() 2025-04-03 23:58:54 +09:00
Thaddeus Crews
6392241742
Merge pull request #104959 from bruvzg/kde_swap
Linux: Detect KDE/LXQt and swap OK/Cancel buttons to Windows style.
2025-04-03 09:27:56 -05:00
Thaddeus Crews
b6c8155439
Merge pull request #104958 from bruvzg/ok_cancel_swap
Make `swap_cancel_ok` setting 3-state instead of boolean.
2025-04-03 09:27:55 -05:00
Thaddeus Crews
6075e6a976
Merge pull request #104957 from arkology/empty-bitmap-crash
Fix `BitMapEditor` crash when bitmap is empty
2025-04-03 09:27:54 -05:00
Thaddeus Crews
d0b3e0b474
Merge pull request #104921 from Ivorforce/no-get-valid-parents
Remove unused `get_valid_parents_static` functions from `GDCLASS`.
2025-04-03 09:27:54 -05:00
Thaddeus Crews
4e6f3a5605
Merge pull request #104915 from aaronfranke/org-ifdef
Organize ifdefs for disabling navigation, physics, and XR
2025-04-03 09:27:53 -05:00
Thaddeus Crews
f5e0b869f4
Merge pull request #104242 from smix8/navmesh_changed
Emit `changed` signal after baking navigation mesh
2025-04-03 09:27:52 -05:00
Thaddeus Crews
2e9a99864f
Merge pull request #99631 from Mickeon/documentation-duplicate-signals-oopsie
Mention `DUPLICATE_SIGNALS` only affects `CONNECT_PERSIST` signals
2025-04-03 09:27:51 -05:00
Thaddeus Crews
3a5f34bd19
Merge pull request #104938 from KoBeWi/root_of_all_bugs
Fix Edit option for sub-resources
2025-04-03 09:27:51 -05:00
Thaddeus Crews
e5c5cb4ce2
Merge pull request #104906 from Daylily-Zeleen/daylily-zeleen/allow_instantiate_unexposed_editor_plugin_from_gdextension
Allow instantiating unexposed `EditorPlugin` from GDExtension.
2025-04-03 09:27:50 -05:00
Thaddeus Crews
2ad75d4077
Merge pull request #104936 from rsubtil/fix-dap_print_🐛s
Fix invalid DAP responses when content has non-ASCII content
2025-04-03 09:27:50 -05:00
Thaddeus Crews
6ef89f12bc
Merge pull request #104167 from TokageItLab/spring-inside-tree
Add `is_inside_tree()` check to SpringBoneSimulator3D
2025-04-03 09:27:49 -05:00
Thaddeus Crews
577133e6d2
Merge pull request #104963 from beicause/display-pctex-format
Display PortableCompressedTexture's format in inspector preview
2025-04-03 09:27:48 -05:00
Thaddeus Crews
578ede6e16
Merge pull request #104960 from akien-mga/cryptocore-buffer-size_t
CryptoCore: Use `size_t` for buffer sizes to fix encoding/sums of 2.0+ GiB files
2025-04-03 09:27:48 -05:00
kobewi
fb2e9c7ba7 Cleanup QuickOpenDialog history and fix UID errors 2025-04-03 16:21:22 +02:00
BrotherShort
1077fdb15a fix TextEdit VScroll max tolerance
newline

Co-Authored-By: Kit Bishop <kitbdev@gmail.com>
2025-04-03 21:22:57 +08:00