Commit Graph

12670 Commits

Author SHA1 Message Date
smix8 4490a3303b Fix NavigationMesh debug visuals for non-triangulated meshes
Fixes NavigationMesh debug visuals for non-triangulated meshes.
2023-04-16 23:31:54 +02:00
Aaron Franke a83ce0b104
Improve some units in RigidBody nodes 2023-04-15 22:03:24 -05:00
Aaron Franke 8eb9986dc5
Make `Node::get_children()` public 2023-04-15 21:59:25 -05:00
Yuri Sizov bd3286eed2
Merge pull request #75999 from clayjohn/Particles-angle-rand
Use angle_rand to calculate base_angle in particles process material
2023-04-14 13:14:34 +02:00
clayjohn 821917ba9f Use angle_rand to calculate base_angle in particles process material 2023-04-13 15:10:47 -07:00
VolTer 6c6c1302f3 Fix PackedScenes created with PackedScene.pack() have their exported nodes become null 2023-04-13 16:16:13 +02:00
Yuri Sizov 4fed87320c Use Point2 consistently in Control methods
While Size2 and Point2 are just aliases,
which is why this doesn't fail compilation,
it's nice to have things consistent.
2023-04-13 15:26:50 +02:00
Rémi Verschelde 13f2a4c7ae
Merge pull request #75993 from AThousandShips/autohide_theme
Don't apply scale to autohide theme property
2023-04-13 09:55:30 +02:00
Rémi Verschelde 87b8eea9f6
Merge pull request #75904 from Calinou/colorpicker-constructor-round-values
Round values to 3 decimals in the ColorPicker constructor string
2023-04-13 09:54:18 +02:00
clayjohn 9be0a73294 Add EXPOSURE built in to spatial shaders
This allows users to restore light values to pre-pre-exposure amounts
2023-04-12 10:35:13 -07:00
Ninni Pipping 722597aa97 Don't apply scale to autohide theme property 2023-04-12 17:40:40 +02:00
Rémi Verschelde d4dad2b2f8
Merge pull request #75957 from clayjohn/VS-default-modes
Write out render_mode even when mode is set to default in VisualShaders
2023-04-12 17:01:24 +02:00
Rémi Verschelde 486988f717
Merge pull request #70834 from pattlebass/spinbox-doesnt-spin
Fix `Range`-derived nodes not redrawing after `set_value_no_signal`
2023-04-12 17:01:11 +02:00
pattlebass 9500f8e69a Fix Range-derived nodes not redrawing
When using set_value_no_signal(), Range-derived nodes wouldn't redraw.

Also added a dedicated method to SpinBox to update its text.
2023-04-12 14:53:12 +03:00
Rémi Verschelde cd03028915
Merge pull request #75977 from timothyqiu/invisible-item
Tree: Fix offset calculation when there are hidden items
2023-04-12 13:28:16 +02:00
Rémi Verschelde fb3e4e7967
Merge pull request #75975 from bruvzg/bidi_and_log_errors
Improve line BiDi handling, prevent crash on recursive log updates.
2023-04-12 13:28:12 +02:00
Rémi Verschelde 15316416ab
Merge pull request #75974 from bruvzg/ts_emb_caret
[TextServer] Use dedicated flag for object replacement characters.
2023-04-12 13:28:09 +02:00
kobewi 20261016a7 Fix typed array export
Co-authored-by: Guilherme Sousa <guilherme.sousa1994@gmail.com>
2023-04-12 12:19:17 +02:00
Haoyu Qiu a083c85521 Tree: Fix offset calculation when there are hidden items 2023-04-12 17:49:52 +08:00
bruvzg 282e4231c2
Improve line BiDi handling, prevent crash on recursive log updates. 2023-04-12 11:39:05 +03:00
bruvzg d904516e55
[TextServer] Use dedicated flag for object replacement characters. 2023-04-12 10:08:51 +03:00
clayjohn 016946b552 Write out render_mode even when mode is set to default in VisualShaders 2023-04-11 18:03:00 -07:00
Rémi Verschelde cbf7412e38
Merge pull request #75905 from Calinou/colorpicker-allow-named-colors
Allow entering named colors in ColorPicker's hex field
2023-04-11 19:40:48 +02:00
Rémi Verschelde fff0ee0fc4
Merge pull request #75822 from YeldhamDev/no_multi_zero
Remove unnecessary zero multiplications
2023-04-11 19:40:40 +02:00
Rémi Verschelde 5722d6e3cc
Merge pull request #75451 from bruvzg/web_mac_keys
[Web] Detect host OS and use macOS keys on mac hosts.
2023-04-11 19:40:16 +02:00
Rémi Verschelde 23a3e3984b
Merge pull request #74117 from Animtim/RichTextLabel_LocalizationFix
Add translation support to RichTextLabel
2023-04-11 19:40:07 +02:00
Rémi Verschelde 347a8e20ae
Merge pull request #69324 from RedMser/advanced-settings-errors
Make it easier to solve warnings/errors referring to project settings
2023-04-11 19:39:53 +02:00
ShadyChibinko 9d2aecade0 Add Tab Metadata 2023-04-11 12:52:03 -04:00
Hugo Locurcio 4d8331ad1f
Round values to 3 decimals in the ColorPicker constructor string
This makes the whole string always fit within the LineEdit
(at least when using the default font).
2023-04-11 18:29:52 +02:00
Yuri Sizov ca808c88a4
Merge pull request #71747 from Koyper/rich_text_label_dropcap_selection_bug
Fixed RichTextLabel wrong selection offset after drop cap
2023-04-11 18:25:39 +02:00
Koyper 99376eebe0 Fixed RichTextLabel wrong selection offset after drop cap. 2023-04-11 10:09:26 -05:00
Timothée Giet e861ea5903 Add translation support to RichTextLabel
BUG: 34050
add translation support to RichTextLabel, and respect its Auto Translate setting
2023-04-11 14:17:59 +02:00
Yuri Sizov 6a65597569
Merge pull request #71742 from Koyper/rich_text_label_cell_padding_select_bug
Fixed RichTextLabel wrong selection offset in padded table cell.
2023-04-11 13:16:35 +02:00
Yuri Sizov 5e6c382a84
Merge pull request #71433 from marzecdawid/fix-TreeItem-button-rendered-under-selected
Fix TreeItem's button being rendered under "Selected" highlights
2023-04-11 13:15:09 +02:00
bruvzg a5009f4d3c
[Web] Detect host OS and use macOS keys on mac hosts. 2023-04-11 10:58:54 +03:00
Hugo Locurcio 517dc3654a
Allow entering named colors in ColorPicker's hex field
This also makes the hex field wider to allow displaying 9-character
hex code (`#rrggbbaa`) in full, even when using a custom font.
2023-04-10 23:59:07 +02:00
Yuri Sizov c48219f51e
Merge pull request #73658 from smix8/do_not_stop_the_entire_server_cause_you_want_to_pause_4x
Keep NavigationServer active while SceneTree is paused
2023-04-10 16:24:26 +02:00
Yuri Sizov fd6a743823 Always cache parent visibility in CanvasItem 2023-04-10 16:18:46 +02:00
smix8 4b0dee080e Keep NavigationServer active while SceneTree is paused
Keep NavigationServer active while SceneTree is paused.
2023-04-10 15:30:22 +02:00
Yuri Sizov 5243f5cece
Merge pull request #72152 from smix8/mcd_settings_4.x
Add Mesh ConvexDecompositionSettings wrapper
2023-04-10 12:52:23 +02:00
Yuri Sizov 8784f95e1f
Merge pull request #75777 from 3deathtoll/patch-1
Make `SyntaxHighlighter::get_text_edit` a const function
2023-04-10 12:49:04 +02:00
Yuri Sizov b6cf8959e4
Merge pull request #72863 from JeffVenancius/enable_caret_drawing_when_not_editable
Add an option to show a TextEdit caret when editable is disabled
2023-04-10 12:48:18 +02:00
Yuri Sizov d54266899a
Merge pull request #75810 from yedpodtrzitko/yed/simplify-comparison
misc: simplify blend position comparison
2023-04-10 11:58:51 +02:00
VolTer f587a21899 Code style improvements to text_edit and related 2023-04-08 19:33:56 +02:00
Juan Linietsky 37362202a4 Fix CI build error
Fixes potential use of uninitialized variable.
2023-04-08 18:21:08 +02:00
Michael Alexsander f057d755ab Remove unnecessary zero multiplications 2023-04-08 09:31:05 -03:00
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 Rubinsky 8ea4acee49 Fix shader uniform groups to prevent it sorting in alphabet order 2023-03-28 18:36:10 +03: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
Markus Sauermann 8836f2160a Move call of `push_unhandled_input` from `Window` to `Viewport`
This solves the problem, that mouse events get sent to SubViewports
even if they are outside of the visible area of the SubViewport.

This changes makes SubViewportContainer::unhandled_input redundand.
Shortcut Events now need to be distributed via push_input, in order for
them to be able to reach SubViewports.
2023-03-17 19:22:24 +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
Yuri Sizov 7d2080f81a
Merge pull request #74800 from smix8/navagent2d_thin_line_4.x
Allow negative NavigationAgent2D path debug line_width for thin lines
2023-03-16 11:44:34 +01:00
Yuri Sizov a1c2f03055
Merge pull request #74898 from Spartan322/patch-1
Remove methods in header removed in c7eb814
2023-03-16 11:43:54 +01:00
smix8 0b8798a995 Fix NavigationAgent3D debug path duplicated points
Fixes duplicated points in NavigationAgent3D debug path.
2023-03-16 09:19:04 +01:00
smix8 f6a10c0565 Allow negative NavigationAgent2D path debug line_width for thin lines
Allows the line_width for NavigationAgent2D path debug to go negativ for thin line rendering.
2023-03-16 09:04:53 +01:00
George L. Albany f3313ba4cd
Remove methods in header removed in c7eb814
c7eb814 missed these methods in the RichTextLabel's header
Remove set_override_selected_font_color from rich_text_label.h
Remove is_override_selected_font_color from rich_text_label.h
c7eb814 missed these methods in the TextEdit's header
Remove set_override_selected_font_color from text_edit.h
Remove is_override_selected_font_color from text_edit.h
2023-03-15 21:13:38 -04:00
Andrej Eškinja 6ccef8b831 Fix for deselecting item when select_mode == SELECT_ROW 2023-03-15 15:46:53 +01:00
Yuri Sizov 1514b9be68
Merge pull request #74667 from YuriSizov/core-too-many-orphans
Prevent infinite loops when printing orphan nodes
2023-03-15 14:59:42 +01:00
Rindbee 69f488e687 Property list changes are only notified when it did change in Curve
`Object::notify_property_list_changed()` should only be called when
the structure of the property has actually changed.

The structure of the property tree has not changed if the size of the
array has not changed, and the only possibility is that the element
value has changed.
2023-03-15 09:51:15 +08:00
Patrick e3802d5b6f Fix ndc calculation for LinearSceneDepth VS node in GLES3 2023-03-14 15:05:01 +01:00
Danil Alexeev ba985ecf3f
Fix `draw_multiline_colors()` for `width < 0` 2023-03-14 09:43:56 +03:00
kleonc c49a7feae3 TileMap Fix rendering odd-sized tiles 2023-03-12 16:20:38 +01:00
Rémi Verschelde b31d00a914
Merge pull request #74740 from clayjohn/sky-filter
Use linear filtering without mipmaps for ProceduralSkyMaterial and PhysicalSkyMaterial
2023-03-10 22:49:29 +01:00
clayjohn 572ac91514 Use linear filtering without mipmaps for ProceduralSkyMaterial and PhysicalSkyMaterial 2023-03-10 10:48:45 -08:00
justchen1369 dbfecdb3b0 Fix exported type for Menubar start_index 2023-03-10 11:42:09 -05:00
RedworkDE f540148072 Add dedicated setter for `ImageTextureLayered::_images` to fix `create_from_images` being hidden from the C# bindings 2023-03-09 17:53:36 +01:00
Yuri Sizov 81e2b020ba Prevent infinite loops when printing orphan nodes 2023-03-09 16:47:38 +01:00
Yuri Sizov ff98395556 Prevent passing events from CodeEdit to TextEdit when code completion is active 2023-03-09 15:54:08 +01:00
Rémi Verschelde 677cba3d58
Merge pull request #67910 from pkowal1982/scroll_bar
Fix scrolling behaviour with zero/low page value
2023-03-08 14:06:30 +01:00
Yuri Sizov dac2d8fb42
Merge pull request #68325 from pfertyk/issue-68242-rich-text-label-crash
Fix RichTextLabel crash with out of bound exception
2023-03-08 11:32:47 +01:00
Rémi Verschelde 449e658583
Merge pull request #74555 from RedworkDE/cpuparticles3d-update-buffer-overrun
Fix buffer overrun in `CPUParticles3D` in `precision=double` builds
2023-03-08 08:58:11 +01:00
Rémi Verschelde bf6b6b18f3
Merge pull request #74551 from YuriSizov/theme-abyss-looks-back-at-you
Generate empty textures for theme icons if the SVG module is disabled
2023-03-08 08:57:47 +01:00
Rémi Verschelde 02a35522f0
Merge pull request #74347 from JohanAR/master
Fixed incorrect ERROR message when setting new PrimitiveMesh
2023-03-08 08:55:24 +01:00
RedworkDE 89980dd9c9 Fix buffer overrun in CPUParticles3D 2023-03-07 15:46:51 +01:00
Yuri Sizov 64215ad119 Generate empty textures for theme icons if the SVG module is disabled 2023-03-07 15:31:19 +01:00
Rémi Verschelde 0ef3d1bf56
Merge pull request #73188 from Sauermann/fix-inconsistent-viewport-size
Fix some ways to create inconsistent Viewport size states
2023-03-07 12:04:00 +01:00
Rémi Verschelde 0f25dc2661
Merge pull request #74521 from clayjohn/ImageTexture3D-properties
Set properties of ImageTexture3D when creating
2023-03-07 08:40:54 +01:00
clayjohn e9d80a821d Set properties of ImageTexture3D when creating 2023-03-06 14:57:17 -08:00
Arman Elgudzhyan 688d00b706 Don't autocomplete numbers in GDScript
Cancel code autocompletion when a numerical value is entered. Avoids interference when setting numbers.
2023-03-06 14:20:24 -08:00
bruvzg 25bc62ad13
[TextEdit] Do not draw virtual spaces (word break / justification points). 2023-03-06 15:01:43 +02:00
Rémi Verschelde 0b98b470cc
Merge pull request #73716 from bruvzg/improve_locale_selection
Improve layout direction/locale automatic selection.
2023-03-06 10:57:56 +01:00
Rémi Verschelde 45738d078a
Merge pull request #74472 from bruvzg/ime_single_pos
Fix IME position in the single window mode sub-windows.
2023-03-06 10:57:25 +01:00
Rémi Verschelde 6941ffaef3
Merge pull request #74293 from akien-mga/fbx-dialog-disable-importer
FBX: Disable importer when canceling FBX2glTF setup
2023-03-06 10:55:21 +01:00
bruvzg 3ca3ee36ab
Fix IME position in the single window mode sub-windows. 2023-03-06 10:08:55 +02:00
Rémi Verschelde a01e8be417
Merge pull request #74282 from timothyqiu/news-anchor
Notify child controls when `BackBufferCopy`'s rect changed
2023-03-05 13:26:45 +01:00
Rémi Verschelde b7c02007fb
Merge pull request #74251 from MarcusElg/positiongroup
Fix Camera2D position smoothing properties not being grouped
2023-03-05 13:25:33 +01:00
Johan Aires Rastén 007b488a5c Fixed incorrect ERROR message when setting new PrimitiveMesh
If calling set_mesh with a PrimitiveMesh that has pending update, the
_mesh_changed function would be called twice. The first time before
set_base had been called, which could lead to an ERROR message about
trying to set an invalid surface override material.
2023-03-04 10:48:47 +01:00
Marcus Elg a835dfd96d Fix Camera2D position smoothing properties not being grouped 2023-03-03 19:28:39 +01:00
Rémi Verschelde d81e6ee024
FBX: Disable importer when canceling FBX2glTF setup
Pretty hacky solution but it's better than an infinite loop.

All this import setup needs to be redone, it's very difficult to properly
bail out from an invalid import without triggering reimport loops.

Also fix underline not visible at default editor scale in LinkButton.

Fixes #73319.
2023-03-03 13:53:03 +01:00
Rémi Verschelde a2d449f22e
Merge pull request #74212 from bruvzg/bmp_def_out
[Bitmap font] Assume outline size is `1` if it's not set, but channel for outline is defined.
2023-03-03 11:07:28 +01:00
Rémi Verschelde dbd76cd1f6
Merge pull request #74112 from KoBeWi/from_mismatch_to_match
Check for type mismatch in `PropertyTweener.from()`
2023-03-03 11:04:57 +01:00
Rémi Verschelde a2ecbb7c37
Merge pull request #73749 from fabriceci/expose-apply-floor-snap
Exposes the apply_floor_snap function to allow manual snap
2023-03-03 11:03:42 +01:00
Haoyu Qiu 602a0d2fbc Notify child controls when BackBufferCopy's rect changed 2023-03-03 17:57:58 +08:00
Rémi Verschelde 0885e4b931
Merge pull request #73365 from bruvzg/no_transient_children
Automatically reparent editor message dialogs to avoid error spam.
2023-03-02 11:41:17 +01:00
Rémi Verschelde f339f8e3d2
Merge pull request #73713 from SirQuartz/graph-node-close-button
Fix Graph Node close rect default position
2023-03-02 11:26:28 +01:00
bruvzg 67762ec4a6
[Bitmap font] Assume outline size is `1` if it's not set, but channel for outline is defined. 2023-03-02 08:36:17 +02:00
bruvzg 8459aeaab0
[Font] Implement `get_char_from_glyph_index` function. 2023-03-01 09:29:11 +02:00
Paweł Fertyk 44592c8c19 Fix RichTextLabel crash with out of bound exception
Fixes #68242.
2023-02-28 22:49:57 +01:00
kobewi 45f4d59fa4 Check for type mismatch in PropertyTweener.from() 2023-02-28 17:16:56 +01:00
kobewi ba7eb4bd89 Add early return for changing TileMap properties 2023-02-28 01:05:39 +01:00
Fabio Alessandrelli f9bcaccc11 [MP] Fix orphan StringName on close.
Use a static StringName for the registered default interface name.
2023-02-27 09:45:16 +01:00
bruvzg 315164c619
[TextEdit / IME] Check selection before deleting to avoid unnecessary error messages. 2023-02-27 08:58:28 +02:00
clayjohn c69b14e96e Add warnings for unsupported features in mobile and gl_compatibility backends 2023-02-26 12:28:02 -08:00
bruvzg cebfc02d6f
Revert "Reordering emitted signals in PopupMenu" and fix editor selection issue in the safer way. 2023-02-24 21:17:05 +02:00
Rémi Verschelde e849f07335
Merge pull request #73847 from smix8/fix_shapecast3d_exception_functions_4.x
Fix ShapeCast3D add and remove exception functions
2023-02-24 13:30:36 +01:00
kobewi cf50eb130e Fix custom viewports in Camera2D 2023-02-24 13:26:31 +01:00
smix8 5d1a6e9b12 Fix ShapeCast3D add and remove exception functions
Fixes that ShapeCast3D would accept any parameter object and silently return when it was not a CollisionObject3D.
2023-02-23 23:45:16 +01:00
Rémi Verschelde 13382a88df
Merge pull request #73814 from lyuma/importer_mesh_convex
import: Fix uv2 by avoiding premature ImporterMesh::get_mesh()
2023-02-23 13:55:43 +01:00
Lyuma 51a4fe1d53 import: Fix uv2 by avoiding premature ImporterMesh::get_mesh()
Implements create_convex_shape in ImpoterMesh.
Note: ImporterMeshInstance3D::get_mesh() is safe.
The only dangerous function with side effects is ImpoterMesh::get_mesh()
2023-02-23 11:55:28 +01:00
Rémi Verschelde 76d4d09bfa
Revert Label text reshaping fix #71553 and subsequent regression fixes
Despite a lot of great work from Pedro to try to improve the Label text
reshaping logic and fix subsequent regressions, we found ourselves still
chasing more edge cases, such as #73736 (which got reverted already due
to it causing yet another regression).

In parallel, it seems like the crash scenario that #71553 was addressing
got solved differently in the master branch, so it appears like this
change is no longer necessary at all (at least not urgently), so we
decided to revert to the previous known "ok" state of Label.

- Revert #71553 "Prevent infinite cascade of re-layout after label text reshaping"
This reverts commit ed8c5cd52f.

- Revert #72387 "Enhance label sizing algorithm"
This reverts commit 5131b81a4d.

- Revert #73234 "Fix blank non-autowrapping labels"
This reverts commit 3ccabee9ae.

- Revert #73343 "Make label sizing algorithm more robust"
This reverts commit 4f7f1ef60b.

- Revert #73426 "Fix width determination of non-trimmed, non-wrapped labels"
This reverts commit 73b6c0b972.
2023-02-23 10:36:42 +01:00
Michael Alexsander c567a853db Fix `GraphNode` resizing when its bottom border is too thin 2023-02-23 01:42:06 -03:00
Rémi Verschelde d66f6b3b04
Revert "Fix visible_lines calculation"
This reverts commit ceee405cec.

This caused regressions, see #73736 and #73780.

Fixes #73780.
2023-02-22 22:44:55 +01:00
Nicholas Huelin 961d6763fb Modify the default theme GraphNode close_h_offset
Modifies the close_h_offset to be 12 instead of 22. This better aligns the default position.
2023-02-22 14:51:15 -05:00
Rémi Verschelde d8014e9fab
Merge pull request #73736 from helviett/fix_visible_lines_calculation
Fix visible_lines calculation
2023-02-22 14:50:06 +01:00
fabriceci 1381e6da4f Exposes the apply_floor_snap function to allow a snap to be made regardless of velocity. 2023-02-22 14:08:32 +01:00
helviett ceee405cec Fix visible_lines calculation 2023-02-22 14:17:52 +04:00
Rémi Verschelde be336cea1e
Merge pull request #73587 from YuriSizov/rtl-the-underliner
Ensure minimal thickness for `RichTextLabel` underlines
2023-02-22 10:14:32 +01:00
Rémi Verschelde 0a15f51617
Merge pull request #73741 from dalexeev/fix-sprite-frames-convert
Fix `SpriteFrames` data loss on 3-to-4 conversion
2023-02-22 10:13:57 +01:00
Danil Alexeev d49ac0466f
Fix `SpriteFrames` data loss on 3-to-4 conversion 2023-02-22 11:17:10 +03:00
bruvzg 82d7923c65
Improve layout direction/locale automatic selection. 2023-02-22 08:37:14 +02:00
kobewi a899f547ae Fix reset_state() in TileSet 2023-02-21 22:38:20 +01:00
bruvzg 921f3b7589
Automatically reparent editor message dialogs to avoid error spam. 2023-02-21 12:32:11 +02:00
kobewi 55b50703d7 Prevent off-screen controls in editor 2023-02-20 20:25:39 +01:00
PrecisionRender e713c270ea Fix crash when reparenting SoftBody3D with pinned points 2023-02-20 12:12:58 +01:00
Rémi Verschelde 69b99730e0
Merge pull request #73597 from MewPurPur/add-missing-queue-redraw--oh-wait-that-barely-narrows-it-down
Fix Indent/Unindent without a selection not causing a redraw
2023-02-20 11:28:18 +01:00
VolTer 9de731a9ec Fix Indent/Unindent without a selection not causing a redraw 2023-02-19 21:08:04 +01:00
Yuri Sizov 80806cb935
Merge pull request #73585 from YuriSizov/particles-remove-damping-limit
Remove visual limit for damping in CPUParticles
2023-02-19 18:34:09 +03:00
Yuri Sizov 28b7556914 Ensure minimal thickness for RichTextLabel underlines 2023-02-19 13:42:25 +01:00
Paulb23 60161cbe7d Fix ctrl+backspace crash with multicarets on the same line 2023-02-19 12:04:14 +00:00
Albin 82b90c0e08 Remove visual limit for damping in CPUParticles
Issue #56324 notes that you may can't set the damping property of
CPUParticles2D to anything more that 100 in the editor inspector
while you may set it to anything in code, this is considered a bug and
changed in this commit
2023-02-19 12:47:34 +01:00
Rémi Verschelde 9ccfe68d50
Merge pull request #73526 from YuriSizov/branded-project-llc
Add a custom icon for the `project.godot` file in the `EditorFileDialog`
2023-02-19 01:01:08 +01:00
Juan Linietsky 34fd128723 Fix shader parameter assign
-Make sure the remap is created properly if never assigned before.

Fixes #72923. Supersedes #73066.
2023-02-18 13:13:54 +01:00
Yuri Sizov 0c4bdf443d
Merge pull request #65353 from QbieShay/qbee/fix-billboard-nonuniform-scale 2023-02-18 12:31:42 +03:00
Yuri Sizov ed8554bff6
Merge pull request #73513 from YuriSizov/bone2d-remove-deprecated-methods
Remove deprecated methods from Bone2D
2023-02-18 04:32:49 +03:00
Yuri Sizov 236cec0633 Add a custom icon for the `project.godot` file in the EditorFileDialog 2023-02-17 22:42:23 +01:00
Dawid Marzec b05572b7d0 Fix TreeItem's button being rendered under Selected highlight 2023-02-17 21:49:31 +01:00
Yuri Sizov 6bb4b00647
Merge pull request #73508 from nongvantinh/reorder-emitted-signals
Reordering emitted signals in PopupMenu
2023-02-17 21:17:01 +03:00
Yuri Sizov b2f63bbb43 Remove deprecated methods from Bone2D
- also add them to the project convertor
2023-02-17 18:05:52 +01:00
Nong Van Tinh 5928d801a9 Reordering emitted signals in PopupMenu 2023-02-17 23:18:56 +07:00
Rémi Verschelde a0afeb5d5a
Merge pull request #72184 from Maran23/item-list-index-out-of-bounds
ItemList: Check if the index is out bounds before accessing the internal items
2023-02-17 16:20:49 +01:00
Rémi Verschelde 9004279afb
Merge pull request #70781 from jamesmintram/jamesm/bugfix/fix-minimap-oob
Fix error spam when hovering minimap in the script editor
2023-02-17 15:20:19 +01:00
Rémi Verschelde 9583c20171
Merge pull request #70515 from stmSi/fix-hanging-audio-pitch-scale
Fix hanging if audiostream's pitch_scale is NaN
2023-02-17 14:06:55 +01:00
Yuri Sizov da11c59918
Merge pull request #73470 from Sauermann/fix-touch-screen-button-emulated
Remove device-id restriction from `TouchScreenButton` input events
2023-02-17 16:00:34 +03:00
Rémi Verschelde 1075931c64
Remove unexposed ProxyTexture, mark AnimatedTexture as deprecated
According to reduz:

> [AnimatedTexture] should be removed together with ProxyTexture, its just
> not efficient at all in Vulkan and causes invalidation of all descriptor
> sets depending on it
> it was needed mostly for animated tilemaps, but nowadays there is not a lot
> of reason for it

Marking AnimatedTexture as deprecated accordingly, until we reach consensus
for removing it completely.
2023-02-17 12:32:26 +01:00
Rémi Verschelde db9007aef4
Merge pull request #73428 from smix8/navigation_tweak_agent3d_4.x
Tweak NavigationAgent3D defaults
2023-02-17 09:56:49 +01:00
bruvzg 7246b229e1
Set RTL minimal dash size to 2.0, add invalid dash size error to the `draw_dashed_line`. 2023-02-17 08:53:08 +02:00
Markus Sauermann 699608804f Remove device-id restriction from `TouchScreenButton` input events
Remove the restriction that only devices with id 0 are used
for `TouchScreenButton`-Input events.
This allows emulated events to be used for TouchScreenButton.
2023-02-17 01:19:57 +01:00
Rémi Verschelde c7aadab155
Merge pull request #73464 from clayjohn/VoxelGI-emission
Only include emission when enabled in material during VoxelGI bake
2023-02-17 00:42:30 +01:00
Rémi Verschelde 2824774d29
Merge pull request #69801 from nongvantinh/fix-invalid-scene-name
Fixed scene name can be saved as extension only
2023-02-17 00:35:00 +01:00
Rémi Verschelde b90d70d592
Merge pull request #72764 from Sauermann/fix-color-picking
Fix Color Picking
2023-02-17 00:33:20 +01:00
Rémi Verschelde b0dd9d6942
Merge pull request #49102 from ANamelessGhoul/master
Fix AnimatedTexture inconsistency when setting frame
2023-02-17 00:32:55 +01:00
Rémi Verschelde b8bab73d7e
Merge pull request #73444 from bruvzg/dash_checks
Add dash and step size checks to draw_dashed_line.
2023-02-17 00:29:40 +01:00
Nong Van Tinh 010ddfbc16
Prevent saving files with no name and only an extension.
Fixes #69768.

Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2023-02-17 00:23:15 +01:00