Commit Graph

2051 Commits

Author SHA1 Message Date
Adam Scott
bd70b8e1f6
Add THREADS_ENABLED macro in order to compile Godot to run on the main thread 2024-01-17 13:58:29 -05:00
Yuri Sizov
788aab3a96 Merge pull request #87115 from groud/tilemap_layers_as_nodes
Make TileMapLayers extend Node2D and work as children of TileMap
2024-01-17 18:53:12 +01:00
Yuri Sizov
0724506cdd Merge pull request #86841 from groud/fix_global_transform_in_enter_tree
Fixes global transform being wrong on entering tree
2024-01-17 18:52:59 +01:00
Yuri Sizov
28cf7fe2f6 Merge pull request #85384 from HolonProduction/unique-name-completion
Suggest scene unique nodes in `get_node` autocompletion
2024-01-17 18:52:31 +01:00
Gilles Roudière
48bed5050b Make TileMapLayers extend Node2D and work as children of TileMap 2024-01-17 16:05:50 +01:00
Gilles Roudière
0a726d692a Fixes global transform being wrong on entering tree 2024-01-16 16:02:37 +01:00
ajreckof
2f697926b0 Fix renaming a node to the name of its siblings breaking NodePath
Also fix cases where node name was not visually updated because name was not changed

Co-Authored-By: Nông Văn Tình <53887662+nongvantinh@users.noreply.github.com>
2024-01-16 15:18:30 +01:00
Rémi Verschelde
03767fbf3b
Merge pull request #86446 from reduz/transient-to-focused
Implement a `transient_to_focused` Window mode
2024-01-15 13:25:00 +01:00
ACB
96b8016a35 Rename camera near and far private members to avoid conflict with Windows.h defines 2024-01-15 12:31:15 +01:00
Juan Linietsky
15144c24bd Implement a transient_to_focused mode
This intends to be the correct way to handle non-child windows becoming covered by the current window when becoming focused.
Enabling this property on select windows, they will become transient to the currently focused one when becoming visible.

This deprecates the "unparent_when_invisible" function introduced by #76025.
2024-01-14 18:51:44 +01:00
Jakub Marcowski
06534f8ad5 Add deprecation notice to a duplicate method of class Window 2024-01-12 18:18:28 +01:00
Rémi Verschelde
cab27498bd
Merge pull request #86957 from RandomShaper/mt_mends
A couple of enhancements to user-visible threading semantics
2024-01-11 17:40:37 +01:00
Rémi Verschelde
087a397477
Merge pull request #86301 from KoBeWi/deferred_cleanup
Update deferred calls to use Callables
2024-01-11 17:36:29 +01:00
Rémi Verschelde
f3fc35eb17
Merge pull request #81506 from twobitadder/reparent_keep_owner
Fix `reparent()` losing owner
2024-01-11 17:34:19 +01:00
mnemoli
a407219693 Add Viewport setting for picking only first-encountered CanvasItem physics object 2024-01-11 14:18:37 +00:00
kobewi
0e8f90f4c8 Update deferred calls to use Callables 2024-01-09 16:11:47 +01:00
Pedro J. Estébanez
631d1e3a86 Let read thread guards allow access to out-of-tree nodes 2024-01-08 10:33:09 +01:00
Micky
f996003fb4 Add autocompletion to get_node_or_null 2024-01-06 17:33:32 +01:00
Rémi Verschelde
fbaab3cf53
Merge pull request #86745 from KoBeWi/internal_error
Ignore internal children when replacing node
2024-01-03 15:48:41 +01:00
Rémi Verschelde
73c5deff76
Merge pull request #82916 from jsjtxietian/update-scene-tree-tooltip-after-editor-description-chnage
Support updating tooltip immediately after editor description change
2024-01-03 15:41:31 +01:00
kobewi
cd2edfef25 Ignore internal children when replacing node 2024-01-03 13:04:16 +01:00
Rémi Verschelde
4acfe4aa3c
Merge pull request #86729 from Mickeon/autocompletion-for-all
Fix missing autocompletion for inheriting classes
2024-01-03 10:14:37 +01:00
Rémi Verschelde
0d922f61e3
Merge pull request #86220 from Sauermann/fix-embed-subwindow
Fix changing `gui_embed_subwindows` while a child window is displayed
2024-01-03 10:13:03 +01:00
Markus Sauermann
62587d2d19 Fix changing gui_embed_subwindows while a child window is displayed
Changing `gui_embed_subwindows` while a child window is displayed can lead
to crashes or other unintended behavior.
This PR adds checks to prevent the change while child windows are
displayed.
2024-01-03 10:09:51 +01:00
Micky
ca2f340384 Fix missing autocompletion for inheriting classes 2024-01-03 00:13:04 +01:00
Rémi Verschelde
60b20963ce
Merge pull request #86511 from Sauermann/fix-drag-transform
Fix D&D viewport position calculation
2024-01-02 18:05:23 +01:00
Rémi Verschelde
957378a69e
Merge pull request #84151 from YeldhamDev/that_was_not_a_resize_you_dunce
Fix `NOTIFICATION_WM_SIZE_CHANGED` firing if the size hasn't changed
2024-01-02 15:08:46 +01:00
Markus Sauermann
4b6516c843 Fix D&D viewport position calculation
It is necessary to transform screen position to viewport position.
2023-12-25 23:32:29 +01:00
风青山
f19c419126 Fix duplicating sub-scene may get two copies of internal node
Previously, internal node might be mistaken for `hidden_root` and be duplicated again.
Exclude those internal nodes to avoid this case, unless the owner is set intentionally.
2023-12-20 18:29:25 +08:00
Stanislav Labzyuk
958699a0c4 Implement project-wide node groups 2023-12-19 18:07:19 +01:00
Yuri Sizov
02d4579fa2 Merge pull request #85000 from bruvzg/ed_ui_direction
[Editor] Add option to override editor UI layout direction.
2023-12-19 13:01:35 +01:00
Yuri Sizov
8a9aa30348 Merge pull request #81243 from Sauermann/fix-window-events
Fix internal events not being delivered to some Window types
2023-12-19 13:01:00 +01:00
Claire Blackshaw
fe7725239e Expose a method to get hovered Control in Viewport 2023-12-18 14:53:52 +01:00
Yuri Sizov
203c8c31d3 Merge pull request #85071 from Rubonnek/remove-unnecessary-assignments
Remove unnecessary assignments
2023-12-14 17:38:34 +01:00
Yuri Sizov
16d1d85a56 Merge pull request #78206 from alula/node-count-in-group
Add SceneTree.get_node_count_in_group()
2023-12-14 17:38:00 +01:00
Wilson E. Alvarez
80fb8db31f
Remove unnecessary assignments
Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>
2023-12-13 11:06:26 -05:00
Yuri Sizov
dcbb18ded8 Merge pull request #85313 from kitbdev/fix-exit-hide
Fix crash on hiding grandparent Control on mouse exit
2023-12-08 15:23:32 +01:00
Yuri Sizov
13305d31b5 Merge pull request #83343 from warriormaster12/node-property-duplication
Fix export variable of type Node pointing to a wrong child node when duplicating
2023-12-08 15:22:59 +01:00
Yuri Sizov
b6c15736bd Merge pull request #78997 from Sauermann/fix-owner-crash
Fix crash caused by stale owner
2023-12-08 15:22:39 +01:00
bruvzg
f9c42d9fff
Limit window size updates on title translation change. 2023-12-06 10:51:27 +02:00
Rémi Verschelde
36e033bce8
Merge pull request #85312 from YuriSizov/window-and-the-case-of-an-unexpected-shrinkage
Make sure `Window`'s title is respected before we compute the size
2023-12-05 13:05:23 +01:00
Jummit
7957354091 Fix push_input only working the first time
Subviewports didn't update their parent's local_input_handled correctly.

Fixes #76439.
2023-12-02 20:30:26 +01:00
kit
78e1702adb fix crash on hiding grandparent on mouse exit 2023-12-02 14:24:56 -05:00
bruvzg
5dd11e8eee
Limit window size updates on title change. 2023-11-30 16:04:00 +02:00
bruvzg
bf19ced15d
Fix crash on late mouse enter/exit event arrival. 2023-11-27 08:47:43 +02:00
HolonProduction
8cc85515af Suggest scene unique nodes in get_node autocompletion 2023-11-26 15:41:29 +01:00
Yuri Sizov
d9677be0ca Make sure Window's title is respected before we compute the size
Also removes some suspicious and outdated code that forced this particular
dialog to change size when the warning message changed.
2023-11-24 16:31:41 +01:00
Markus Sauermann
3de9afc4a9 Fix crash when hiding a Control during mouse-entering
gui.mouse_over can be set to `nullptr` in the `NOTIFICATION_MOUSE_ENTER`-
user-callback a few lines above. This case was previously not handled.
2023-11-23 23:25:00 +01:00
Pedro J. Estébanez
8bebabda18 Let scene replacemnent benefit from certain late pieces of frame logic 2023-11-21 18:32:49 +01:00
Markus Sauermann
d3d00c7039 Fix crash caused by stale owner
Adjust `NOTIFICATION_PREDELETE` in `Node` to clean up owned nodes.
Also print a warning, when the owner becomes invalid.
2023-11-17 19:53:58 +01:00
bruvzg
932174fedf
[Editor] Add option to override editor UI layout direction. 2023-11-17 14:56:45 +02:00
jsjtxietian
4680ced5fa support updating tooltip after editor description change 2023-11-15 14:27:49 +08:00
Mikael Hermansson
a98b94758b Revert "Fix transform notification not getting sent out for RigidBody2D" 2023-11-14 22:17:26 +01:00
Markus Sauermann
fa02d19fd1 Fix internal events not being delivered to some Window types
`AcceptDialog`, `Popup` and `PopupMenu` no longer subscribe to
"window_input" signal, because that is only sent if it is not an
internal signal.

Instead they receive events in `_input_from_window`. They ensure that
the event is also propagated to their super-function, just like
previously the signals would be treated.
2023-11-14 20:29:17 +01:00
Mikael Hermansson
9fb0b52608 Fix transform notification not getting sent out for RigidBody2D 2023-11-13 15:44:32 +01:00
Rémi Verschelde
15b8185c68
Don't use TTR/RTR for ERR/WARN prints
We don't translate those, only editor strings are translated.
2023-11-12 12:00:55 +01:00
kit
d24d73ba31 Make mouse-enter/exit notifications match mouse event propagation
`NOTIFICATION_MOUSE_ENTER` and `NOTIFICATION_MOUSE_EXIT` now includes
the areas of children control nodes if the mouse filters allow it.

In order to check if a Control node itself was entered/exited, the newly
introduced `NOTIFICATION_MOUSE_ENTER_SELF` and
`NOTIFICATION_MOUSE_EXIT_SELF` can be used.

Co-authored-by: Markus Sauermann <6299227+Sauermann@users.noreply.github.com>
2023-11-09 09:11:59 -05:00
Yuri Sizov
623b905d2e Remove unused NOTIFICATION_NODE_RECACHE_REQUESTED notification 2023-11-06 12:16:32 +01:00
warriormaster12
de1dc6c8d4 Fix node property duplication 2023-11-04 10:45:38 +02:00
Michael Alexsander
62ab9bf1c4
Fix NOTIFICATION_WM_SIZE_CHANGED firing if the size hasn't changed 2023-10-31 22:58:12 -03:00
clayjohn
f672198f5e Revert "Add a Disable 2D property to Viewport"
This reverts commit f6cc2603a1.
2023-10-27 14:45:59 +02:00
twobit
b4aa6ad36e Fix reparent losing owner if relationship to original owner is not broken 2023-10-26 13:08:05 -04:00
Gilles Roudière
73f72409f5 Allow normal maps on TileMaps that use texture padding 2023-10-18 14:55:44 +02:00
Rémi Verschelde
7c088f246e
Merge pull request #82846 from SaracenOne/network_authority_instance_placeholders
Copy network authority when instancing placeholders
2023-10-16 10:38:34 +02:00
Rémi Verschelde
9e02dcd44c
Merge pull request #82100 from bitsawer/fix_shader_globals_override
Fix ShaderGlobalsOverride property handling
2023-10-11 22:50:08 +02:00
Rémi Verschelde
a1d7c62df7
Merge pull request #83003 from AThousandShips/null_check_extra
Replace `ERR_FAIL_COND` with `ERR_FAIL_NULL` where applicable
2023-10-09 15:37:14 +02:00
Rémi Verschelde
336260b7b3
Merge pull request #83002 from AThousandShips/safety_check
Replace `sanity` with `safety` for checks
2023-10-09 15:36:49 +02:00
A Thousand Ships
f18aa00e85 Replace ERR_FAIL_COND with ERR_FAIL_NULL where applicable 2023-10-08 17:23:33 +02:00
A Thousand Ships
034c0f1624 Replace sanity with safety for checks 2023-10-08 16:22:24 +02:00
Hugo Locurcio
f6cc2603a1
Add a Disable 2D property to Viewport
This is the 2D counterpart to the existing Disable 3D property.
Its functionality is already internally implemented and used,
but it wasn't exposed.
2023-10-07 17:19:15 +02:00
Rémi Verschelde
3b70e30e9b
Merge pull request #77072 from vPumpking/get-tree-string
Add `Node.get_tree_string` and `Node.get_tree_string_pretty`
2023-10-05 16:32:12 +02:00
Saracen
e1803e27d0 Copy network authority when instancing placeholder nodes. 2023-10-05 12:58:17 +01:00
Rémi Verschelde
3a990e36e6
Merge pull request #80752 from bitsawer/fix_thread_guard
Fix CanvasItem notification thread guard
2023-10-03 17:13:08 +02:00
bruvzg
72e2e47059
[DisplayServer] Add method to estimate window title bar size. 2023-10-03 16:13:52 +03:00
bitsawer
12a2177967 Fix notification thread guards 2023-10-02 19:31:54 +03:00
Rémi Verschelde
1e819ae3aa
Merge pull request #82590 from YuriSizov/window-you-come-to-me-on-this-day-the-day-when-my-child-becomes-exclusive-with-a-transient-parent-to-ask-for-this
Add more context to some `Window` errors
2023-10-02 13:16:39 +02:00
Rémi Verschelde
e95b7e84a4
Merge pull request #80844 from dalexeev/fix-callable-expected-argc
Fix expected argument count for `Callable` call errors
2023-10-02 13:15:53 +02:00
Yuri Sizov
53172d9860 Add more context to some Window errors 2023-09-30 21:44:05 +02:00
bruvzg
c52db6190c
[FileDialog] Make set_visible compatible with native dialogs. 2023-09-30 00:40:49 +03:00
Danil Alexeev
aff767ef07
Fix expected argument count for Callable call errors 2023-09-29 20:00:10 +03:00
Michael Alexsander
9ee82ebe1d
Fix tooltips behaving incorrectly on Tree nodes 2023-09-28 11:18:15 -03:00
Hugo Locurcio
fcbf7011cc
Make 3D editor gizmos and debug shapes ignore fog
This makes them easier to see in their intended colors in scenes with fog.
2023-09-27 00:54:57 +02:00
Marcel Admiraal
3a7eda8f87 Check if input marked handled before processing additional CollisionObjects 2023-09-26 20:42:15 +02:00
Rémi Verschelde
008b08b5fb
Merge pull request #82358 from jsjtxietian/fix-can-not-set-process-priority-of-node-in-editor
Fix can not set process priority of node in certain cases
2023-09-26 13:45:36 +02:00
jsjtxietian
e36117f557 Fix can not set process priority of node if not any process is processing 2023-09-26 19:29:25 +08:00
Rémi Verschelde
79805262f1
Merge pull request #77829 from AThousandShips/mp_fix
Disallow nested custom multiplayers in `SceneTree`
2023-09-26 08:17:02 +02:00
Rémi Verschelde
e4cfd4e26a
Merge pull request #82195 from AThousandShips/radian_fix
Replace `radians` range hint with `radians_as_degrees`
2023-09-25 17:18:38 +02:00
Dario
057367bf4f Add FidelityFX Super Resolution 2.2 (FSR 2.2.1) support.
Introduces support for FSR2 as a new upscaler option available from the project settings. Also introduces an specific render list for surfaces that require motion and the ability to derive motion vectors from depth buffer and camera motion.
2023-09-25 10:37:47 -03:00
A Thousand Ships
a5fe392b78 Disallow nested custom multiplayers in SceneTree
Enables clearing the custom multiplayer
2023-09-25 14:59:05 +02:00
A Thousand Ships
e45927b2f2 Replace radians range hint with radians_as_degrees 2023-09-25 08:50:19 +02:00
bitsawer
71e32364ee Fix ShaderGlobalsOverride property handling 2023-09-22 10:21:20 +03:00
Yuri Sizov
dd3638d425 Merge pull request #81669 from kleonc/gui-tooltip-transparent-background
Enable transparent background for GUI tooltips
2023-09-15 19:48:37 +02:00
vPumpking
bd575c5fe5 Add 'get_tree_string()' and 'get_tree_string_pretty()' to Node class to complement printing methods 2023-09-15 19:18:53 +02:00
kleonc
c66dfd2cfe Enable transparent background for GUI tooltips 2023-09-14 23:39:28 +02:00
Yuri Sizov
56e54b49b6 Merge pull request #81551 from YuriSizov/gui-cache-all-the-theme
Bind remaining theme properties to their respective classes
2023-09-14 15:21:45 +02:00
Yuri Sizov
fe000277ea Bind remaining theme properties to their respective classes
This adds binds for GraphEdit/GraphElement/GraphNode, which were
skipped before due to a rework. This also adds binds for Window,
which was skipped before due to a complicated code organization.

Also adds theme cache entries/direct cache access to a few places
that previously missed it. Some theme properties are now exposed
to other classes via friendships or public getters for convenience.

This removes all string-based theme access from scene/ classes.
2023-09-13 19:31:35 +02:00
A Thousand Ships
a29416e332 [Scene,Main] Replace ERR_FAIL_COND with ERR_FAIL_NULL where applicable 2023-09-12 12:53:06 +02:00
Yuri Sizov
2924bfd4d3 Register theme properties with ThemeDB 2023-09-11 13:45:23 +02:00
Rémi Verschelde
7663c69922
Merge pull request #81388 from YuriSizov/core-gdvirtual-but-less-confused-about-itself
Extract `ScriptInstance` into its own file to simplify includes
2023-09-07 13:53:45 +02: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