1
0
Fork 0
Commit Graph

2443 Commits

Author SHA1 Message Date
Rémi Verschelde ef6d90b1e0
Merge pull request #106307 from Rubonnek/improve_timer_error
Improve `Timer::start` error message.
2025-06-05 13:11:44 +02:00
Rémi Verschelde c27c87b852
Merge pull request #105245 from timothyqiu/canvas-layer-range
Relax the range hint for canvas layer properties
2025-06-05 13:10:50 +02:00
Thaddeus Crews b0f3c3fa22
Merge pull request #106966 from bruvzg/ac_trans_simpl
[Accessibility] Always auto-translation mode for names/descriptions.
2025-06-02 18:51:49 -05:00
Pāvels Nadtočajevs 3198b7bea2
[Accessibility] Always auto-translation mode for names/descriptions. 2025-05-30 17:55:27 +03:00
kobewi 34152b3f39 Remove redundant data.inside_tree 2025-05-28 15:27:59 +02:00
Thaddeus Crews 91b3a26438
Merge pull request #106848 from Faless/mp/rpc_config_revert
Expose `get_rpc_config` and `get_node_rpc_config`
2025-05-27 09:39:32 -05:00
Thaddeus Crews 63dff62948
Merge pull request #100673 from RandomShaper/res_duplicate
Overhaul resource duplication
2025-05-27 09:39:25 -05:00
Haoyu Qiu 8d93b6a54c Add translation preview in editor 2025-05-27 07:59:28 +08:00
Fabio Alessandrelli b73ec1fa9b Expose get_rpc_config and get_node_rpc_config 2025-05-27 00:43:21 +02:00
Thaddeus Crews f3f76df0cd
Merge pull request #103504 from lawnjelly/fti_warn_physics_non_interp4
Physics Interpolation - Add editor configuration warnings
2025-05-26 11:24:39 -05:00
Thaddeus Crews e89c4b0f9f
Merge pull request #102330 from RGDTAB/add_partial_smaa
Add SMAA 1x to screenspace AA options
2025-05-26 11:24:35 -05:00
Thaddeus Crews 9cf026a3b9
Merge pull request #106783 from bruvzg/ac_linux_state
Do not activate accessibility when screen reader detection failed.
2025-05-26 11:24:31 -05:00
Thaddeus Crews 506417fe43
Merge pull request #105623 from lodetrick/section-feature-hide
Allow Inspector Section Checkboxes to hide features, Add "On" text to checkboxes
2025-05-26 11:24:25 -05:00
Fabio Alessandrelli c28d5d0058 Revert "Expose get_rpc_config and get_node_rpc_config"
This reverts commit 8835f326b1.
2025-05-26 15:57:38 +02:00
Pedro J. Estébanez 342266cfd9 Overhaul `Variant::duplicate()` for resources
This in the scope of a duplication triggered via any type in the `Variant` realm. that is, the following: `Variant` itself, `Array` and `Dictionary`. That includes invoking `duplicate()` from scripts.

A `duplicate_deep(deep_subresources_mode)` method is added to `Variant`, `Array` and `Dictionary` (for compatibility reasons, simply adding an extra parameter was not possible). The default value for it is `RESOURCE_DEEP_DUPLICATE_NONE`, which is like calling `duplicate(true)`.

Remarks:
- The results of copying resources via those `Variant` types are exactly the same as if the copy were initiated from the `Resource` type at C++.
- In order to keep some separation between `Variant` and the higher-level animal which is `Resource`, `Variant` still contains the original code for that, so it's self-sufficient unless there's a `Resource` involved. Once the deep copy finds a `Resource` that has to be copied according to the duplication parameters, the algorithm invokes the `Resource` duplication machinery. When the stack is unwind back to a nesting level `Variant` can handle, `Variant` duplication logic keeps functioning.

While that is good from a responsibility separation standpoint, that would have a caveat: `Variant` would not be aware of the mapping between original and duplicate subresources and so wouldn't be able to keep preventing multiple duplicates.

To avoid that, this commit also introduces a wormwhole, a sharing mechanism by which `Variant` and `Resource` can collaborate in managing the lifetime of the original-to-duplicates map. The user-visible benefit is that the overduplicate prevention works as broadly as the whole `Variant` entity being copied, including all nesting levels, regardless how disconnected the data members containing resources may be across al the nesting levels. In other words, despite the aforementioned division of duties between `Variant` and `Resource` duplication logic, the duplicates map is shared among them. It's created when first finding a `Resource` and, however how deep the copy was working at that point, the map kept alive unitl the stack is unwind to the root user call, until the first step of the recursion.

Thanks to that common map of duplicates, this commit is able to fix the issue that `Resource::duplicate_for_local_scene()` used to ignore overridden duplicate logic.
2025-05-26 10:06:40 +02:00
Pāvels Nadtočajevs f92fd74268
Do not activate accessibility when screen reader detection failed. 2025-05-25 00:17:23 +03:00
lawnjelly c7764ef26b FTI - Optimize `SceneTree` traversal 2025-05-24 17:38:33 +01:00
Logan Detrick 1a427d3dec Add feature hint string and "On" text for checkable groups 2025-05-21 14:56:55 -07:00
Raymond DiDonato 6b99608950 Add SMAA 1x 2025-05-21 15:02:09 -04:00
lawnjelly cbd6c8d561 `SceneTreeFTI` faster access to `Node` children 2025-05-21 17:19:10 +01:00
Riteo 408de3c970 Wayland: Fix window fitting in single-window mode
We disabled window fitting in multi-window mode as it was broken due to
the limited data but it should still be enabled for embedded windows.
2025-05-21 00:58:41 +02:00
Thaddeus Crews 5538850d87
Core: Convert `Pair`/`KeyValue` to `constexpr` 2025-05-15 10:37:41 -05:00
Thaddeus Crews 22a0e81a69
Merge pull request #103922 from Jesusemora/Jesusemora-patch-1
Show `theme_type_variation`s in the inspector on `Control`s that inherit a theme
2025-05-13 16:22:29 -05:00
Haoyu Qiu 51a063d6d3 Remove unused `SceneTree::make_group_changed` 2025-05-13 16:40:17 +08:00
Rémi Verschelde 1f2f144ce7
Merge pull request #106298 from bruvzg/ac_win_transform
[Accessibility] Account for window scaling transform when setting node bounds.
2025-05-13 01:05:38 +02:00
Rémi Verschelde c4c28f8f62
Merge pull request #106281 from KoBeWi/false
Fix wrong children range when duplicating node
2025-05-13 01:05:23 +02:00
Rémi Verschelde 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
Jesusemora b22eba1285
Show `theme_type_variation`s in the inspector on `Control`s that inherit a theme
`theme_type_variation`s are now shown in the children and children of children
that inherit a theme from a parent `Control` node.
2025-05-13 00:56:06 +02:00
kobewi 258062e312 Fix wrong children range when duplicating node 2025-05-12 20:21:40 +02:00
Wilson E. Alvarez 90328e921f
Improve Timer::start error message. 2025-05-12 11:06:56 -04:00
Pāvels Nadtočajevs 870fb5f74b
[Accessibility] Account for window scaling transform when setting node bounds. 2025-05-12 09:12:55 +03:00
Pāvels Nadtočajevs 5441a82cfb
Do not call `accessibility_set_window_rect` on Wayland, fix main windows accessibility context creation. 2025-05-11 12:51:46 +03:00
lawnjelly 795ed8fd12 Faster `Node::get_child_count()`
There is no need to update the children cache when including internal nodes in the count.
2025-05-10 11:35:59 +01:00
kobewi 34b485d62b Remove empty constructors and destructors from scene/ 2025-05-06 14:46:54 +02:00
Aaron Franke a404b668a1
Change Node set_name to use StringName 2025-05-01 15:15:19 -07:00
Thaddeus Crews 730adf4801
Merge pull request #105973 from lawnjelly/fti_fix_3d_exit_tree
FTI - Fix `SceneTreeFTI` behaviour on exit tree
2025-05-01 14:27:21 -05:00
lawnjelly ba4ab2dda3 FTI - Fix `SceneTreeFTI` behaviour on exit tree 2025-05-01 07:52:16 +01:00
Pāvels Nadtočajevs c6e1bc6170
Fix oversampling for embedded windows using content scale. 2025-04-30 17:35:22 +03:00
lawnjelly f8f350a32a Add `GLOBAL_GET` cached macros.
GLOBAL_GET is an expensive operation which should not be used each frame / tick.
This PR adds macros which do a cheaper revision check, and only call the expensive GLOBAL_GET when project settings have changed.

Co-authored-by: Lukas Tenbrink <lukas.tenbrink@gmail.com>
2025-04-30 15:08:50 +01:00
Thaddeus Crews 70ff5770c9
Merge pull request #83757 from HauntedBees/master
Add `Node.get_orphan_node_ids`, edit `Node.print_orphan_nodes`
2025-04-29 11:24:08 -05:00
Haunted Bees 0ccdcb4a16 added list_orphan_nodes, edited print_orphan_nodes
print_orphan_nodes now prints the script file attached to the node.
list_orphan_nodes was created to return the same data as print_orphan_nodes in a dictionary format for users who wish to process this data differently than the print_orphan_nodes behavior.
2025-04-28 20:33:01 -07:00
Thaddeus Crews ccd8816dd9
Merge pull request #105860 from timothyqiu/group-complete
Fix group name completion for `get_node_count_in_group`
2025-04-28 14:10:47 -05:00
Thaddeus Crews b7d4426fff
Merge pull request #104269 from lawnjelly/fti_scene_tree4
Physics Interpolation - Move 3D FTI to `SceneTree`
2025-04-28 10:01:34 -05:00
Haoyu Qiu f7a0b6b7cf Fix group name completion for `get_node_count_in_group` 2025-04-28 19:42:01 +08:00
Thaddeus Crews 1b4ed4c038
Merge pull request #105595 from bruvzg/focus_fx
Fix `FOCUS_ACCESSIBILITY` grabbing focus when it is not supposed to, forward `GraphNode` key input to `GraphEdit`.
2025-04-27 19:21:34 -05:00
Thaddeus Crews df78d4a866
Merge pull request #105546 from Splizard/fix_gdextension_tostring
Fix GDExtension `Object/Node::to_string` to check `is_valid` before returning the result
2025-04-27 19:21:24 -05:00
Pāvels Nadtočajevs db0c0a9182
Fix `FOCUS_ACCESSIBILITY` grabbing focus when it is not supposed to, forward `GraphNode` key input to `GraphEdit`. 2025-04-27 00:45:11 +03:00
lawnjelly ae04a3a5dd Physics Interpolation - Move 3D FTI to `SceneTree`
Moves 3D interpolation from server to the client code (`SceneTree`).
Complete rework of 3D physics interpolation, but using the same user API.
2025-04-26 14:13:30 +01:00
kobewi 2ed4ed8cd0 Improve Window's _validate_property() 2025-04-24 23:05:48 +02:00
Thaddeus Crews 0cc292f880
Merge pull request #105272 from lodetrick/add_section_toggle
Add enable checkboxes to editor sections
2025-04-21 08:24:20 -05:00