yedpodtrzitko
c01d2902d9
optimize blend position search
2023-04-08 18:49:06 +07:00
Juan Linietsky
ab5fc22f67
Optimize Node children management
...
* Adding and removing child nodes is now constant time, speed up should be huge.
* Searching for node paths as in ("path/to/node") should be far faster too.
This changes the children management and makes it a hashmap, optimizing most StringName based operations.
Most operations should be severe speed up without breaking compatibility.
This should fix many issues regarding to node access performance, and may also speed up editor start/end, but benchmarks are needed. So if you want to test, please make some benchmarks!
Further performance improvements will be done in the future by removing NOTIFICATION_MOVED_IN_PARENT and replacing by something less laborious.
2023-04-08 10:54:28 +02:00
jeffVenancius
97c2133548
Add an option to show a TextEdit caret when editable is disabled
...
Update doc/classes/TextEdit.xml
2023-04-07 22:27:01 -03:00
smix8
1549aeaef8
Add Mesh ConvexDecompositionSettings wrapper
...
Adds wrapper MeshConvexDecompositionSettings to control parameters for Mesh ConvexDecomposition operations.
2023-04-07 22:39:25 +02:00
3deathtoll
3841c4a4b4
Make SyntaxHighlighter::get_text_edit a const function
2023-04-07 23:46:50 +05:30
Rémi Verschelde
c151d3231f
Merge pull request #75760 from reduz/optimize-node-add-child-validation
...
Optimize Node::add_child validation
2023-04-07 18:20:28 +02:00
Yuri Sizov
f38b540273
Merge pull request #75756 from smix8/fix_obstacle_avoidance_sim_4.x
...
Fix NavigationObstacles not being added to avoidance simulation
2023-04-07 15:11:40 +02:00
Yuri Sizov
b5f532094e
Merge pull request #56671 from Rgtemze/warn_if_concave
...
Warn when a concave polygon is assigned to ConvexPolygonShape2D
2023-04-07 14:39:41 +02:00
Yuri Sizov
a13635cdf8
Merge pull request #70901 from timothyqiu/tree-scroll-offset
...
Add scrollbar offset theme constants to Tree
2023-04-07 13:24:01 +02:00
Juan Linietsky
223ce4fcb9
Optimize Node::add_child validation
...
Adding 10k nodes is almost twice as fast.
2023-04-07 13:18:47 +02:00
Yuri Sizov
f1f0e5f91d
Merge pull request #75728 from smix8/fix_audiostreamplayer2d_crash_4.x
...
Fix AudioStreamPlayer2D crash when PhysicsServer2D runs on thread
2023-04-07 12:46:53 +02:00
Samuele Panzeri
404f24b5c4
Update sibling indices after a node is removed.
...
With change 104392e
the code to update node indices on removal was erronously removed.
The out of date indices would cause crashes while selecting nodes in a graph editor (e.g. animation tree) and selected nodes are oftern pushed to beginning or end of the child list for the parent.
2023-04-06 20:47:57 +02:00
smix8
aadf33efd8
Fix NavigationObstacles not being added to avoidance simulation
...
Fixes NavigationObstacles not being added to avoidance simulation.
2023-04-06 16:32:49 +02:00
Rémi Verschelde
92b7a9603a
Merge pull request #75701 from reduz/notification-moved-in-parent
...
Remove NOTIFICATION_MOVED_IN_PARENT
2023-04-06 14:35:04 +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
Haoyu Qiu
498d538578
Add scrollbar offset theme constants to Tree
2023-04-06 15:04:28 +08:00
smix8
a5351086b0
Fix AudioStreamPlayer2D crash when PhysicsServer2D runs on thread
...
Fixes AudioStreamPlayer2D crash when PhysicsServer2D runs on thread due to empty PhysicsSpace
2023-04-06 03:29:09 +02:00
Rémi Verschelde
5cf878c090
Merge pull request #75113 from m4gr3d/fix_2d_editor_dragging_main
...
Fix the issue preventing dragging in the 2D editor
2023-04-05 20:21:09 +02:00
Rémi Verschelde
e0bff2fa06
Merge pull request #75610 from aaronfranke/sus-travel-m
...
Change VehicleWheel3D suspension travel to use meters internally
2023-04-05 12:03:23 +02:00
Rémi Verschelde
4f4b5a2785
Merge pull request #73475 from YuriSizov/theme-is-busy-plz-come-back-later
...
Add a warning when accessing theme prematurely and fix surfaced issues
2023-04-05 12:03:15 +02:00
Johan Aires Rastén
9a60c4affb
GraphNode ignore non-visible children for minimum size.
2023-04-05 09:05:52 +02:00
Aaron Franke
dd0eb1ab47
Change VehicleWheel3D suspension travel to use meters internally
2023-04-03 12:34:05 -07:00
Yuri Sizov
e401540264
Implement theme item cache in ColorPicker and friends
2023-04-03 18:01:11 +02:00
Yuri Sizov
db2f99cdc0
Implement theme item cache in TextEdit and CodeEdit
2023-04-03 18:01:10 +02:00
Yuri Sizov
91ff34b5b5
Add a warning when trying to access theme items too early
2023-04-03 18:01:10 +02:00
Rémi Verschelde
5b775282b7
Merge pull request #74654 from YuriSizov/gui-cause-you-re-hi-and-you-re-lo-you-re-yes-and-you-re-no
...
Prevent crash in `ItemList` when checking for visible items
2023-04-03 17:08:44 +02:00
Rémi Verschelde
b85fc4aa6d
Merge pull request #73646 from KoBeWi/squish
...
Prevent off-screen controls in editor
2023-04-03 17:07:54 +02:00
Rémi Verschelde
8a02d3817d
Merge pull request #73180 from KoBeWi/pretty_tweens
...
Various Tween code improvements
2023-04-03 17:07:29 +02:00
Rémi Verschelde
57e3651763
Merge pull request #72028 from kilojool/option_button_reselection
...
OptionButton: allow reselection of selected item
2023-04-03 17:06:36 +02:00
Rémi Verschelde
1db9de5406
Merge pull request #75597 from bruvzg/tx_block
...
[TextEdit] Fix block caret size at the end of the line.
2023-04-03 16:06:02 +02:00
Rémi Verschelde
f8e0880623
Merge pull request #75595 from Geometror/fix-graphedit-rect-scaling
...
Fix several GraphEdit operations at zoom levels other than 100%
2023-04-03 16:05:38 +02:00
Rémi Verschelde
a9855a3a4c
Merge pull request #75494 from MewPurPur/line-edit-get-selected-text
...
Implement LineEdit.get_selected_text()
2023-04-03 16:03:58 +02:00
Rémi Verschelde
3c225c19c1
Merge pull request #75487 from Rindbee/improve_update_remote_in_RemoteTransform2D
...
Fix RemoteTransform2D could fail to update AnimatableBody2D's position or rotation
2023-04-03 16:03:34 +02:00
Rémi Verschelde
9c492204ca
Merge pull request #75340 from Barugon/tree_colunm_title_alignment
...
Implement column title alignment for `Tree`
2023-04-03 16:03:10 +02:00
Rémi Verschelde
b237df8cea
Merge pull request #75326 from smix8/navigationagent_expose_parameters_4.x
...
Expose NavigationAgent path postprocessing and pathfinding algorithm options
2023-04-03 16:02:21 +02:00
Rémi Verschelde
4779d4f695
Merge pull request #75298 from KoBeWi/supersonic_filesystem
...
Refresh filesystem when saving remote branch
2023-04-03 16:01:57 +02:00
Rémi Verschelde
420ea5c0ad
Merge pull request #73074 from M4rYu5/capslock-editor-completion-fix
...
Editor: Ignore CapsLock when pressed alone
2023-04-03 15:58:11 +02:00
kobewi
20f03884f2
Various Tween code improvements
2023-04-03 15:40:02 +02:00
bruvzg
efe04af446
[TextEdit] Fix block caret size at the end of the line.
2023-04-02 20:53:13 +03:00
Rémi Verschelde
ec0a6dcdda
Merge pull request #75544 from Pingar5/master
...
Fixed property hint for platform layers on 3D physics body
2023-04-02 17:34:15 +02:00
Rémi Verschelde
d22e9effa2
Merge pull request #75532 from kleonc/texture-progress-bar-update-on-texture-changes
...
`TextureProgressBar` Update upon texture changes
2023-04-02 17:33:27 +02:00
Hendrik Brucker
49587fd6d9
Fix several GraphEdit operations at zoom levels other than 100%
2023-04-02 16:40:10 +02:00
Brennen Shaughnessy
2d16fe681d
Fixed property hint for platform layers on 3D physics body
2023-03-31 19:40:45 -04:00
kleonc
cdc63214fe
TextureProgressBar Update upon texture changes
2023-04-01 00:16:43 +02:00
Yuri Sizov
1522762dc9
Make icons of scripted and custom classes fit the editor UI
...
Also:
- Add an option to limit the icon size in PopupMenu.
This is similar to how this works in Tree and TreeItem.
- Add the same option to TabBar.
- Add a theme constant for Tree, PopupMenu, Button, and
TabBar to apply this limit on the control level.
Co-authored-by: Daylily-Zeleen <daylily-zeleen@foxmail.com>
2023-03-31 21:39:02 +02:00
VolTer
1856ceeb76
Implement LineEdit.get_selected_text()
2023-03-30 22:58:12 +02:00
bruvzg
efa647bb17
[RTL] Fix fill align and trim with enabled dropcap.
2023-03-30 22:23:39 +03:00
Rindbee
100b4b1f28
Fix RemoteTransform2D could fail to update AnimatableBody2D's position or rotation
...
Configure the transform per condition, and then only set it once to
prevent multiple `NOTIFICATION_LOCAL_TRANSFORM_CHANGED` notifications
from being sent.
2023-03-30 16:00:35 +08:00
RedworkDE
aa604c5c47
Do not clamp non-embedded window size to embedder
2023-03-29 22:35:07 +02:00
Yuri Sizov
1222d35cdd
Merge pull request #75398 from newobj/issue-75218
...
Update GPUParticles2D/3D speed scale on ENTER_TREE
2023-03-28 16:34:58 +02:00
Yuri Sizov
f818d2b98f
Merge pull request #75141 from rcorre/rrc/dialog-pos
2023-03-28 10:54:37 +02:00
Brian Long
4652fbd09e
Update GPUParticles2D/3D speed scale on ENTER_TREE
...
Fix for https://github.com/godotengine/godot/issues/75218
Pause notifications are not sent when a node is added as a child. So GPUParticles2D should also obey its can_process status on ENTER_TREE, not just PAUSED/UNPAUSED.
2023-03-27 13:24:59 -07:00
Barugon
c56ff437ae
Implement column title alignment for Tree
2023-03-27 09:23:46 -07:00
Haoyu Qiu
5a5fd33e42
More i18n improvements
...
* Make placeholder in editor layout dialog translatable.
* Make messages in scene import settings dialog translatable.
* Mark theme override property categories for translation.
2023-03-27 22:24:01 +08:00
Yuri Sizov
61e4f91ea1
Merge pull request #75384 from timothyqiu/cultural-heritage
...
Auto translate popup menus of MenuButton and OptionButton
2023-03-27 15:54:21 +02:00
Yuri Sizov
2659fc1a34
Merge pull request #75266 from rburing/shapecast2d_disconnect
...
Port robust signal (dis)connection to `ShapeCast2D`
2023-03-27 13:08:58 +02:00
Ryan Roden-Corrent
894ce41180
Apply clamp_to_embedder on parent resize and popup.
...
Fixes #75084 .
The clamp_to_embedder setting was added in 8be16e0704
,
but was not set on any of the in-editor dialogs.
This patch sets `clamp_to_embedder` on editor dialogs so they cannot be dragged out of the frame.
This also modifies `clamp_to_embedder` so a window is clamped to the bounds of an embedder when
it pops up and when the parent is resized.
2023-03-27 07:08:29 -04:00
Yuri Sizov
c95b88cbe9
Merge pull request #75238 from kleonc/canvas-item-fix-notifications-order-on-enter-tree
...
`CanvasItem` Fix `ENTER_CANVAS` / `VISIBILITY_CHANGED` notifications order when entering tree
2023-03-27 13:00:41 +02:00
Yuri Sizov
c0301b74a1
Merge pull request #71405 from marzecdawid/deselect-root-in-deselect_all
...
Fix `Tree::deselect_all` not deselecting root
2023-03-27 12:26:41 +02:00
Haoyu Qiu
150f89352b
Auto translate popup menus of MenuButton and OptionButton
...
Currently, `auto_translate` property of a `MenuButton` or `OptionButton`
won't affect its popup menu. It's okay if you want to auto translate,
but requires extra setup if you don't.
2023-03-27 18:09:24 +08:00
RedMser
ed960453b7
Make solving project setting errors easier
...
Show full project setting path in error messages.
Force filtering for advanced settings if filter is not empty.
2023-03-27 08:10:35 +02:00
Hugo Locurcio
496a2ee1c7
Make MarginContainer available with disable_advanced_gui=yes
...
Comparatively more advanced GUI nodes such as FlowContainer and
AspectRatioContainer are already available when building with
`disable_advanced_gui=yes`.
This increases binary size by about 8 KB for binaries compiled with
`disable_advanced_gui=yes` (Linux release export template with LTO enabled).
2023-03-26 20:44:09 +02:00
smix8
6e324bb341
Expose NavigationAgent path postprocessing and pathfinding algorithm options
...
Exposes the path postprocessing and pathfinding algorithm options of the NavigationAgent internal NavigationPathQueryParameters object.
2023-03-25 21:37:18 +01:00
Michael Alexsander
fc3d9d9d46
Defer invalidation on FileDialog nodes
2023-03-25 14:24:46 -03:00
Dawid Marzec
45930e95e9
Fix Tree::deselect_all not deselecting root
2023-03-25 16:02:49 +01:00
Yuri Sizov
82814f42b9
Merge pull request #74454 from Pennycook/get_loops_left
...
Add get_loops_left() function to Tween
2023-03-25 15:04:26 +01:00
Yuri Sizov
2be7a9be59
Merge pull request #75235 from AThousandShips/gradient_sort
...
Make `Gradient` resort points on `reverse`
2023-03-25 14:59:32 +01:00
Yuri Sizov
32c65c92a2
Merge pull request #75258 from AThousandShips/autoplay
...
Fix `AnimatedSprite2D` autoplay warning
2023-03-25 14:28:27 +01:00
Yuri Sizov
8f2c41b4dd
Merge pull request #73818 from kilojool/virtual_get_tooltip
...
Add missing virtual bind for control::get_tooltip
2023-03-25 14:14:10 +01:00
Yuri Sizov
800d445073
Merge pull request #75012 from KoBeWi/english_do_you_speak_it
...
Fix auto-translations in editor
2023-03-25 14:10:40 +01:00
Yuri Sizov
553fd238cf
Merge pull request #73897 from TheSecondReal0/camera-line-width
...
Draw Camera2D outlines as 2 point primitives instead of 4 (consistent with how origin is drawn in 2D editor)
2023-03-25 13:49:12 +01:00
kobewi
f289e74966
Refresh filesystem when saving remote branch
2023-03-24 19:38:08 +01:00
Ricardo Buring
5bed055cdd
Port robust signal (dis)connection to ShapeCast2D
...
Ported from ShapeCast3D.
2023-03-24 09:23:03 +01:00
Asa Sprow
574293532d
Draw Camera2D outlines as 2 point primitives instead of 4
2023-03-23 15:19:32 -07:00
Ninni Pipping
4d4342e018
Fix AnimatedSprite2D
autoplay warning
...
Changing of autoplay when changing `SpriteFrames` is not done by the
user and warning is unhelpful
2023-03-23 14:31:46 +01:00
kobewi
8f8178bda6
Fix auto-translations in editor
2023-03-22 23:57:12 +01:00
kleonc
6e3820fd4d
CanvasItem Fix ENTER_CANVAS / VISIBILITY_CHANGED notifications order when entering tree
2023-03-22 20:01:22 +01:00
Ninni Pipping
3795677f3d
Make Gradient
resort points on reverse
2023-03-22 19:32:00 +01:00
kilojool
a95cd3872a
Add missing virtual bind for control::get_tooltip
2023-03-21 17:39:51 +01:00
Yuri Sizov
ce90d77a18
Merge pull request #73800 from YeldhamDev/graph_resize_fix
...
Fix `GraphNode` resizing when its bottom border is too thin
2023-03-21 16:00:07 +01:00
John Pennycook
4cb2085543
Add get_loops_left() function to Tween
...
Implements godotengine/godot-proposals#5141 .
Adds a new get_loops_left() function to Tween, allowing developers to
reason about how many times a tweening sequence will repeat and whether
to expect finished or loop_finished as the next signal.
Co-authored-by: Tomek <kobewi4e@gmail.com>
2023-03-20 20:49:31 -07:00
kobewi
36141dc469
Fix get_drag_data not overridable in some Controls
2023-03-20 21:42:13 +01:00
Yuri Sizov
05d373c64b
Merge pull request #75017 from bruvzg/rlt_list_bullet
...
[RTL] Add option to customize list bullet, use U+2022 by default.
2023-03-20 19:08:31 +01:00
Yuri Sizov
b6d033b0e6
Merge pull request #75080 from adamscott/set-vehiculewheel3d-reasonable-value
...
Set `VehiculeWheel3D` `suspension_travel` default value to a reasonable one
2023-03-20 19:04:44 +01:00
Yuri Sizov
c311490600
Merge pull request #74665 from YuriSizov/code-edit-is-a-complete-drag
...
Prevent passing events from CodeEdit to TextEdit when code completion is active
2023-03-20 16:47:45 +01:00
Yuri Sizov
b1c18f807b
Merge pull request #75116 from dsnopek/multiplayer-peer-extension-missing-docs
...
Add missing documentation for MultiplayerPeerExtension
2023-03-20 16:39:40 +01:00
Yuri Sizov
7ca4ad8647
Merge pull request #75079 from mihe/shape-margin
...
Update property/documentation of shape margins
2023-03-20 16:30:10 +01:00
David Snopek
4d13be3c5e
Add missing documentation for MultiplayerPeerExtension
2023-03-20 08:08:59 -07:00
Yuri Sizov
cfe2a14ec3
Merge pull request #74537 from nongvantinh/fix-74458
...
Fixes gutter set width results in receiving only half of the desired size
2023-03-20 15:31:28 +01:00
bruvzg
09465f3fe6
Remove (or make verbose only) various debug prints.
2023-03-20 08:14:18 +02:00
Fredia Huya-Kouadio
2c7633dce5
Fix the issue preventing dragging in the 2D and visual shader editor
2023-03-19 12:36:36 -07:00
Nong Van Tinh
bb3d0fc6b7
Fixes gutter set width results in receiving only half of the desired size
2023-03-20 00:14:16 +07:00
Adam Scott
fd1dfdb960
Set VehiculeWheel3D suspension_travel
default value to a resonable one
2023-03-18 16:33:33 -04:00
Mikael Hermansson
ec6694ce3c
Open up bounds of Shape3D.margin
to support other physics engines
2023-03-18 20:52:13 +01:00
bruvzg
4793b6eee9
[RTL] Add option to customize list bullet, use U+2022 by default.
2023-03-17 09:34:28 +02:00
Yuri Sizov
98d95f3a0e
Merge pull request #74149 from bruvzg/get_char
...
[Font] Implement `get_char_from_glyph_index` function.
2023-03-16 13:07:11 +01:00
Yuri Sizov
21753b06a1
Merge pull request #74092 from KoBeWi/zero_reason_to_change
...
Add early return for changing TileMap properties
2023-03-16 13:04:31 +01:00
Yuri Sizov
a2a524df71
Prevent crash in ItemList when checking for visible items
...
Also some light code refactoring to make the drawing logic more manageable.
We also store each item's column for more reliable checks.
2023-03-16 12:25:11 +01:00
Yuri Sizov
bdefdc866b
Merge pull request #74910 from paddy-exe/fix-ndc-depth-gles3
...
Fix ndc calculation for LinearSceneDepth VS node in GLES3
2023-03-16 12:01:07 +01:00
Yuri Sizov
44cc6e5c86
Merge pull request #74976 from smix8/navagent_fix_debug_path_duplicates_4.x
...
Fix NavigationAgent3D debug path duplicated points
2023-03-16 11:45:10 +01:00