Commit Graph

258 Commits

Author SHA1 Message Date
Markus Sauermann bb8b208ede Explain which nodes receive `NOTIFICATION_WM_SIZE_CHANGED`
(cherry picked from commit 361aa909da)
2024-01-25 17:38:15 +01:00
Nico ee9c8cb296 Specify the behaviour of get_tree when the node is not in the scene tree 2023-11-10 20:24:53 +01:00
Yuri Sizov 623b905d2e Remove unused `NOTIFICATION_NODE_RECACHE_REQUESTED` notification 2023-11-06 12:16:32 +01:00
Steven Le Boëdec 47258411da
Add missing word in `NOTIFICATION_POST_ENTER_TREE` documentation 2023-10-31 09:07:00 +09: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
Yuri Sizov cc0eebd9d8 Validate `code` tags for class and member references
This commit also adds means to manually disable warnings
in `code` tags where it's a false positive with the new
`skip-lint` attribute.

Warnings are now enabled on CI to prevent future errors.
2023-10-03 15:48:31 +02:00
A Thousand Ships a5fe392b78 Disallow nested custom multiplayers in `SceneTree`
Enables clearing the custom multiplayer
2023-09-25 14:59:05 +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
Gilles Roudière bc33add262 Document why use either _unhandled_key_input, _shortcut_input or _unhandled_input 2023-09-12 13:18:07 +02:00
Markus Sauermann 59c13fea5d Fix nodes receiving mouse events in black bars of `Window`
Previously for InputEvents there was no distinction between
Window-area and Viewport-area.
This was problematic in cases where stretching was used and the Window
contained black bars at the sides of the Viewport.
This PR separates the area of Window and Viewport regarding InputEvents.
2023-08-09 12:34:22 +02:00
Markus Sauermann 1c3c17c608 Refactor mouse_entered and mouse_exited notifications
The previous implementation for signals mouse_entered and mouse_exited
had shortcomings that relate to focused windows and pressed mouse buttons.
For example a Control can be hovered by mouse, even if it is occluded by
an embedded window.

This patch changes the behavior, so that Control and Viewport send
their mouse-enter/exit-notifications based solely on mouse position,
visible area, and input restrictions and not on which window has
focus or which mouse buttons are pressed. This implicitly also
changes when the mouse_entered and mouse_exited signals are sent.

This functionality can not be implemented as a part of
Viewport::_gui_input_event, because of its interplay with Windows and
because Viewport::_gui_input_event is based on input and not on
visibility.
2023-08-01 13:28:49 +02:00
Bora 7280d1d4f0 Fix docs set_multiplayer_authority on propagation 2023-07-22 00:24:40 +03:00
Rémi Verschelde 6cb1162aa0
Merge pull request #79000 from AThousandShips/owner_error
Improve error message for `Node.set_owner`
2023-07-11 11:29:30 +02:00
Rémi Verschelde 81064cc239
Doctool: Remove version attribute from XML header
We don't use that info for anything, and it generates unnecessary diffs
every time we bump the minor version (and CI failures if we forget to
sync some files from opt-in modules (mono, text_server_fb).
2023-07-06 10:08:21 +02:00
Rémi Verschelde 346f1ab86b
Bump version to 4.2-dev
Keep on waitin'
2023-07-05 22:07:03 +02:00
Ninni Pipping 0183340012 Improve error message for `Node.set_owner` 2023-07-04 08:51:12 +02:00
Rémi Verschelde d40c45ed99
Merge pull request #77688 from L4Vo5/clarify-deferred
Clear up misconceptions about when deferred things run in the docs
2023-06-22 10:29:56 +02:00
Ryan Memarpour 9dc850a2ea Clarify that authority is not automatically replicated. 2023-06-20 21:49:02 +02:00
ana-rchy e74c932ee3
doc: Fix "TranferMode" typo in `Node.rpc_config` description 2023-06-19 23:35:37 +02:00
Markus Sauermann 5b15c89c38 Made window focus notification docs more precise 2023-06-18 16:03:50 +02:00
L4Vo5 2747dd35e7 clarify the meaning of "deferred" 2023-06-18 00:46:58 -03:00
Danil Alexeev eb391d3302
Display `BitField[Enum]` in docs to distinguish from `Enum` 2023-06-15 17:23:02 +03:00
Rémi Verschelde c3e5e4ed4b
Merge pull request #68599 from Rindbee/update-edited_scene_root-in-time
Update the edit scene root in time after it is replaced
2023-06-12 17:08:50 +02:00
Rindbee eb74079dfb Update the edit scene root in time after it is replaced
When changing the type of the edited scene root node, it may be necessary
to update edited scene root in time for the child nodes to work properly.
2023-06-12 21:49:30 +08:00
Danil Alexeev b433020aa6
Documentation: Unify deprecations 2023-06-07 16:34:03 +03:00
RedworkDE 1d0bd2f212 Clarify the docs on Node.queue_free 2023-06-03 22:28:20 +02:00
VolTer 04562662d3 Overhaul the top sections of the class reference (Core classes) 2023-05-19 07:04:48 +02:00
Yuri Sizov 17f492fb82 Expose dialog parent-and-popup logic to the API 2023-05-15 19:49:28 +02:00
Juan Linietsky 98c655ec8d Refactor Node Processing
* Node processing works on the concept of process groups.
* A node group can be inherited, run on main thread, or a sub-thread.
* Groups can be ordered.
* Process priority is now present for physics.

This is the first steps towards implementing https://github.com/godotengine/godot-proposals/issues/6424.
No threading or thread guards exist yet in most of the scene code other than Node. That will have to be added later.
2023-05-09 19:17:51 +02:00
kobewi 1b9802fa8c Prevent errors when using ViewportTexture 2023-05-08 15:56:16 +02:00
Juan Linietsky 104392ef4e Remove NOTIFICATION_MOVED_IN_PARENT
* This notification makes node children management very inefficient.
* Replaced by a NOTIFICATION_CHILDREN_CHANGED (and children_changed signal).
* Changed Canvas code (and similar) to use the above signal, to perform more efficiently.

This PR breaks compatibility (although this notification was very rarely used, even within the engine), but provides an alternate way to do the same.
It is required for the changes in #75627 to be entirely effective.
2023-04-06 13:57:13 +02:00
kobewi eac65fd0a8 Fill random docs 2023-04-03 16:02:29 +02:00
Yuri Sizov 76444699cb
Merge pull request #75565 from kleonc/canvasitem-improve-self-modulate-docs
Improve `CanvasItem.self_modulate` docs
2023-04-03 15:03:39 +02:00
kleonc 4fb9aa2294 Improve CanvasItem.self_modulate docs 2023-04-03 12:56:06 +02:00
kobewi c4e08a4e1a Add _get_configuration_warnings() example 2023-04-02 13:42:29 +02:00
kobewi 9785b23a0a Discourage reusing Tweens 2023-03-04 19:51:52 +01:00
Rémi Verschelde 1c1524a651
Bump version to 4.1-dev
Can't stop, won't stop, they said, huh?
2023-03-01 01:44:37 +01:00
Danil Alexeev 31749de128
GDScript: Better handling of `@rpc` annotation and autocompletion 2023-02-05 21:21:37 +03:00
GeroVeni 54f2226ce5 Improve docs for rpc annotations 2023-02-04 13:28:41 +00:00
Danil Alexeev b004f8180e
GDScript: Allow constant expressions in annotations 2023-01-25 18:43:56 +03:00
SaracenOne 4628736894 Update instances of scenes which have been reimported. 2023-01-16 13:46:33 -08:00
bruvzg ca8b762797
Add Node::get_window() method. 2023-01-10 11:10:46 +02:00
Rémi Verschelde 3579d7a9f7
Merge pull request #36301 from KoBeWi/daddy_node
Add reparent methods to Node
2023-01-07 13:20:56 +01:00
Rémi Verschelde ef090ee6ea
Merge pull request #68874 from TokageItLab/fix-unique-path-keying
Added option to `get_path_to()` to get the shortest path considering unique name
2022-11-28 14:49:34 +01:00
Rémi Verschelde d7e3fce995
Merge pull request #68566 from Mickeon/node-print-orphans-static
Make `Node.print_orphan_nodes()` static
2022-11-24 18:55:30 +01:00
Silc Renew b9d1550590 Add option to get_path_to() to get the shortest path with unique name 2022-11-19 15:06:25 +09:00
Rémi Verschelde 6d2a7cb46d
Merge pull request #68709 from MewPurPur/instance-begone-part3
Remove more instances of 'instance' being used as a verb
2022-11-16 14:41:42 +01:00
VolTer 3b4f5f8a04 Remove more instances of 'instance' being used as a verb 2022-11-16 14:01:53 +01:00
Micky a1c10dbbd8 Strip ERR_FAIL from `Node.remove_from_group()`
Also simplifies group check removing unnecessary `!data.grouped.has`
2022-11-13 00:01:18 +01:00
Micky 9b42268467 Make `Node.print_orphan_nodes()` static 2022-11-12 17:55:42 +01:00