Commit graph

17144 commits

Author SHA1 Message Date
Thaddeus Crews
614230566f
Merge pull request #105174 from bruvzg/anim_err
Remove error print in the Animation getter.
2025-04-09 08:51:42 -05:00
Thaddeus Crews
5a84a5da1d
Merge pull request #102346 from KoBeWi/folding_whalegacy
Add `FoldableContainer`
2025-04-09 08:51:38 -05:00
Cruglet
1a1711f1ee Add middle-click removing for TabBars
Added a boolean option field to enable the firing of the "tab_close_pressed" signal when middle clicking on a tab.
2025-04-09 07:56:09 -04:00
Julian Todd
daf8eee9cb fix for stereo panning adding _calc_output_vol_stereo issue 103989 2025-04-09 11:02:04 +01:00
Pāvels Nadtočajevs
33af291421
Remove error print in the Animation getter. 2025-04-09 09:34:26 +03:00
kobewi
13741ff913 Add FoldableContainer
Co-authored-by: WhalesState <whalesstate@gmail.com>
2025-04-08 22:27:32 +02:00
Thaddeus Crews
e6a61b1ecc
Merge pull request #76829 from bruvzg/ac_kit_direct
Implement screen reader support using AccessKit library.
2025-04-08 12:32:47 -05:00
Thaddeus Crews
6fe4d8d0f8
Merge pull request #104082 from YYF233333/dict_iter
Do not iterate `Dictionary` with `get_key_at_index`
2025-04-08 12:32:45 -05:00
Pāvels Nadtočajevs
b106dfd4f9
Base accessibility API. 2025-04-08 20:14:28 +03:00
Aziroshin
40b7931279 [CodeEdit] Fix folding for comments mixed with code region tags.
Co-authored-by: Kit Bishop <kitbdev@gmail.com>
2025-04-07 20:50:54 +02:00
Pāvels Nadtočajevs
f37fb49739
Add separate minimize_disabled and maximize_disabled window flags. 2025-04-07 18:58:11 +03:00
Yufeng Ying
bbc380b07e Do not iterate Dictionary with get_key_at_index. 2025-04-07 21:54:13 +08:00
Thaddeus Crews
0fbb22c095
Merge pull request #104432 from YYF233333/dict_iter2
Do not iterate `Dictionary` with `Dictionary::keys()`
2025-04-07 08:43:33 -05:00
Thaddeus Crews
45a64319e1
Merge pull request #104771 from Repiteo/ci/pre-commit-bump
CI: Bump various pre-commit hooks
2025-04-07 08:43:27 -05:00
Thaddeus Crews
499d70c1b0
Merge pull request #105024 from JulianHeuser/fix-tileset-custom-data
Fix editing custom data for tilesets
2025-04-07 08:43:25 -05:00
Thaddeus Crews
a753cb90c1
Merge pull request #105006 from beicause/pctex-support-comp-image-astc
PortableCompressedTexture: Support ASTC format and creating directly from compressed image
2025-04-07 08:43:23 -05:00
Thaddeus Crews
b7c452a36d
Merge pull request #104614 from kleonc/control_layout_mode_fallback_to_valid_value
Fallback `Control.layout_mode` to valid mode when child of non-container control
2025-04-07 08:43:22 -05:00
Thaddeus Crews
cd234eae45
Merge pull request #104984 from KoBeWi/ETH
Fix wrong translation method in FileDialog
2025-04-07 08:43:20 -05:00
Thaddeus Crews
5edb235018
CI: Bump various pre-commit hooks 2025-04-07 08:23:35 -05:00
smix8
33fe4a2d87 Combined TileMapLayer debug quadrant shapes to a surface
Create a combined mesh surface for all mesh faces and mesh lines in the TileMapLayer debug quadrant. Before it created a new mesh surface for each shape crashing into the mesh surface limit of 256 quickly.
2025-04-06 19:08:53 +02:00
Summersay415
540eca9099 Fix current_animation_changed emission on animation finish 2025-04-06 19:11:39 +07:00
LuoZhihao
572a15e4b2 PortableCompressedTexture: Support ASTC format and creating directly from compressed image 2025-04-05 18:44:36 +08:00
Yufeng Ying
8ae16699c5 Do not use Dictionary::keys() for Dictionary iteration. 2025-04-05 18:42:13 +08:00
Michael Alexsander
e1e5242fa9
Fix error spam when inspecting remote nodes outside the tree 2025-04-04 19:22:32 -03:00
Julian
38305a2ad0 Fix editing custom data for tilesets 2025-04-04 14:28:01 -04: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
LuoZhihao
505fa4226a PortableCompressedTexture: Fix BasisU crash and wrong format 2025-04-04 15:16:24 +08:00
Silc Lizard (Tokage) Renew
b321a11dde Move SpringBoneSimulator registration to the outside of physics' env 2025-04-04 10:48:44 +09: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
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
kobewi
83ee5e8556 Fix wrong translation method in FileDialog 2025-04-03 20:40:09 +02: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
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
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
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
BrotherShort
1077fdb15a fix TextEdit VScroll max tolerance
newline

Co-Authored-By: Kit Bishop <kitbdev@gmail.com>
2025-04-03 21:22:57 +08:00
Pāvels Nadtočajevs
2f8b96e8a2
Make swap_cancel_ok setting 3-state instead of boolean. 2025-04-03 13:08:11 +03:00
Aaron Franke
2800948d61
Organize ifdefs for disabling navigation, physics, and XR 2025-04-02 08:24:24 -07:00
smix8
565ea927d2 Emit changed signal after baking navigation mesh
Emits changed signal after baking navigation mesh.
2025-04-02 16:54:48 +02:00
Yufeng Ying
7a1a970c25 size() <= 0 and size() < 1. 2025-04-02 19:18:44 +08:00
Yufeng Ying
4f4031a675 Replace size() == 0 with is_empty(). 2025-04-02 19:18:43 +08:00
Stuart Carnie
2e99565bcb Editor: Refactor parse_message into handler functions
Move the individual message handlers to separate functions, to make it
easier to follow and add additional message handlers. The function
is also more efficient as it only performs a single hash lookup for
the handler and then dispatches to the member function.

Similar to #104425
2025-04-02 08:39:40 +11:00
Michael Alexsander
556933306a
Allow to compile templates without navigation features 2025-04-01 11:53:35 -03:00
Thaddeus Crews
d52b84e472
Merge pull request #103993 from aaronfranke/geometry-segment
Directly use segment points in Geometry2D/3D function parameters
2025-04-01 08:01:34 -05:00
Pāvels Nadtočajevs
19f360d65a
Add font import flag to toggle modulation of colored glyphs. 2025-04-01 13:36:10 +03:00
Thaddeus Crews
8f6bb119f4
Merge pull request #100602 from KoBeWi/over_100_changes_in_50_random_files_aka_the_best_kind_of_PR
Add templated version of `ObjectDB::get_instance()`
2025-03-31 12:03:47 -05:00
Filipe Alexandre Francisco Costa
ca57fe1db4 Fix #100536: Control set_position resizes offsets/anchors
The set_position method computes the anchors/offsets to match a
rectangle at the given position with size "size_cache". However, when
the Control's combined minimum size is larger than the size obtained
through the offsets and anchors, "size_cache" is set to be as large as
the combined minimum size. Therefore, when position is set while the
combined minimum size is larger than the rectangle given by the anchors
and offsets, it would resize these two fields, which would then stop
the Control from shrinking when its combined minimum size decreased. To
fix this, set_position now uses the size given by the offsets and
anchors instead of the "size_cache" field. This way, the rectangle
denoted by the offsets and anchors is simply moved, without being
resized, enabling the Control to shrink automatically when its combined
minimum size decreases. I also added a test case to ensure that the
Control shrinks correctly after setting its position while it has a
larger custom minimum size than the one obtained through the offsets
and anchors.
2025-03-31 08:50:00 +01:00