Commit Graph

13685 Commits

Author SHA1 Message Date
DennisManaa f248420a2b made visual shader ports expandable by default if there is only one output port and it's of any vector type
Co-authored-by: QbieShay <cislaghi.ilaria@gmail.com>
2023-09-22 15:28:59 +02:00
jsjtxietian d9d2bb3219 Add support for ImageTexture3D serialization 2023-09-22 16:24:46 +08:00
bitsawer 71e32364ee Fix ShaderGlobalsOverride property handling 2023-09-22 10:21:20 +03:00
MewPurPur 7b86969719 Overhaul the Gradient Editor 2023-09-21 15:55:28 +03:00
aXu-AP 4d3dc0e944 Use comma as a decimal separator for SpinBox
Add support for comma ',' as a decimal separator for SpinBox. This implementation allows for expressions like `pow(2, 3)` to be used as well. If you use comma to separate decimals, use semicolon `;` to separate function parameters.
Change EditorSpinSlider behavior to match.
2023-09-21 15:45:37 +03:00
Rémi Verschelde fb4c0cf462
Merge pull request #81971 from KoBeWi/there_is_only_one_scene
Don't allow transforming scene tiles
2023-09-21 14:25:08 +02:00
Rémi Verschelde 44ea5f9470
Merge pull request #81854 from bitsawer/fix_importer_mesh_bones
Fix ImporterMesh bone weight handling during lightmap unwrap
2023-09-21 14:25:03 +02:00
Rémi Verschelde 184e603c99
Merge pull request #80467 from aaronfranke/mesh-lod-limit
Limit mesh complexity in LOD generation to prevent crashing
2023-09-21 14:24:54 +02:00
DESKTOP-UT43QTQ\Garrigan-Desktop 303d0994e9 Avoid resetting the code completion popup excessively 2023-09-20 15:49:25 -05:00
Rémi Verschelde 52104ded69
Merge pull request #81298 from mihe/soft-body-rendering-handler
Fix bindings of `PhysicsServer3DRenderingServerHandler`
2023-09-20 15:18:24 +02:00
kobewi 07a00cf822 Don't allow transforming scene tiles 2023-09-20 14:10:21 +02:00
Rémi Verschelde 73d7651784
Merge pull request #81921 from YuriSizov/gui-less-friendliness
Connect `CodeHighlighter` with `TextEdit` without friend-access
2023-09-20 13:10:00 +02:00
Mikael Hermansson ee9f41a12d Fix bindings of `PhysicsServer3DRenderingServerHandler` 2023-09-20 12:24:32 +02:00
Yuri Sizov 4bd569be95 Replace flat buttons with flat-styled buttons with a visible pressed state 2023-09-19 22:36:29 +02:00
Yuri Sizov fee1fb8290 Connect `CodeHighlighter` with `TextEdit` without friend-access 2023-09-19 14:36:38 +02:00
ajreckof 6afadbaa9f Replace Ctrl in editor shortcuts with Cmd or Ctrl depending on platform 2023-09-19 10:29:07 +02:00
Ryan Hitchman 734b9d2379 Fix Curve3D baking up vectors for nontrivial curves.
The code was modified in 42aa539 to have a different basis vector, but
this line was missed and caused up vectors to invert sometimes.

Fixes #81879
2023-09-18 18:50:36 -06:00
Rémi Verschelde 77623d0a36
Merge pull request #81354 from MJacred/textedit_pixel_pos_fix
Fix `TextEdit.get_rect_at_line_column returning` negative pos even though cursor is in viewable area of the control
2023-09-18 10:37:59 +02:00
bitsawer 145503765a Fix ImporterMesh bone weight handling during lightmap unwrap 2023-09-18 11:21:29 +03:00
Rémi Verschelde 3e233e1f24
Fix various typos with codespell
Using 2.2.6.dev193+g907e5380.
2023-09-18 09:53:39 +02:00
Arkadiusz Marcin Kołek 18811ac814 Allow to focus individual tabs in TabBar/TabContainer 2023-09-17 18:49:48 +02:00
Rémi Verschelde 04d2aa61a3
Merge pull request #81641 from MewPurPur/bus-go-brrrr-2
Add a `bus_renamed` AudioServer signal
2023-09-17 14:47:29 +02:00
Rémi Verschelde f4d85d58f7
Merge pull request #80736 from Ughuuu/add-get-rid-to-joints
Expose the `get_rid` method of Joint2D and Joint3D
2023-09-17 14:47:04 +02:00
Rémi Verschelde 4a48fd4b9f
Merge pull request #63634 from Spartan322/itemlist-predraw-size
Expose and rename ItemList's `_check_shape_changed` to `force_update_list_size`
2023-09-17 14:45:19 +02:00
Rémi Verschelde 4c01c62233
Merge pull request #79182 from MewPurPur/polyline-close
Add closed property to Line2D
2023-09-16 21:20:47 +02:00
Aaron Franke f95f2d1149
Limit mesh complexity in LOD generation to prevent crashing 2023-09-15 18:40:02 -05: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
Yuri Sizov b797fa18c8 Merge pull request #81621 from PrecisionRender/fix-popup-menu-accelerators
Expose `PopupMenu` `activate_item_by_event` method
2023-09-15 19:48:27 +02:00
Yuri Sizov df6cd37a69 Merge pull request #81516 from YuriSizov/editor-theme-access-the-success
Fix accessing editor theme items throughout the UI
2023-09-15 19:48:14 +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
George L. Albany 421e8c5455
Expose force_update_list_size
Rename ItemList::_check_shape_changed to force_update_list_size

`force_update_list_size` is especially useful for updating the auto_height_value early
2023-09-15 13:18:02 -04:00
PrecisionRender 76fad10978 Expose `PopupMenu` `activate_item_by_event` method 2023-09-15 10:27:49 -05:00
bitsawer 34574db5b9 Fix BoneAttachment3D signal connection 2023-09-15 17:35:12 +03:00
Yuri Sizov 6e11fcb92c Warn about accessing non-existing editor theme items 2023-09-15 14:51:01 +02:00
MewPurPur f29b6e73c2 Add a bus_renamed AudioServer signal 2023-09-15 13:02:03 +03:00
kleonc c66dfd2cfe Enable transparent background for GUI tooltips 2023-09-14 23:39:28 +02:00
Yuri Sizov 325ec7fdda Merge pull request #81600 from aaronfranke/fix-graph-edit-valid-port-conn-type
Fix GraphEdit port valid connections incorrectly checking sides
2023-09-14 15:21:59 +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
Mansur Isaev 4982bec8b7 Removes the equality check for `set_tab_metadata`
Makes the code equivalent to the `Tree.set_metadata` code.

Fix: https://github.com/godotengine/godot/issues/81647
2023-09-14 17:07:14 +04: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
Aaron Franke 366e54b0a3
Fix GraphEdit port valid connections incorrectly checking sides 2023-09-12 20:46:43 -05: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
Rémi Verschelde 475860839c
Merge pull request #80144 from KoBeWi/freedom_tiles
Add per-tile flipping and transposing
2023-09-12 12:00:20 +02:00
Rémi Verschelde 5c43e4c1ef
Fix various typos with codespell
Using 2.2.6.dev180+ge3a2cfbd.
2023-09-12 08:54:18 +02:00
Rémi Verschelde 6a007c7512
Merge pull request #81546 from YuriSizov/there-isnt-enough-room-for-two-ways-to-customize-a-dialog-in-this-town-boy
Hide the `dialog_text` property from `FileDialog`
2023-09-12 08:51:09 +02:00
Rémi Verschelde 7471ac2c4d
Merge pull request #81543 from DarioSamo/lightmap-size-crash-fix
Propagate error correctly when max texture size for lightmaps is too small.
2023-09-12 08:50:45 +02:00
Rémi Verschelde 64fce49dc6
Merge pull request #81423 from kleonc/tile-map-get-used-rect-fix
Fix `TileMap::get_used_rect` incorrectly handling empty layers
2023-09-12 08:50:21 +02:00
Jean-Michel Bernard 67dce301aa Add code region folding to CodeEdit 2023-09-11 18:36:40 +02:00
Yuri Sizov d0e26572fe Hide the `dialog_text` property from `FileDialog`
It's useless in `FileDialog`, because dialogs can have either
a text label or a custom layout, and `FileDialog` already
has a custom layout.
2023-09-11 16:24:54 +02:00
Rémi Verschelde 1695bf09b4
Merge pull request #81485 from bluenote10/feature/remove_some_dead_declarations_in_audio_stream_player
Remove some dead declarations in `audio_stream_player.h`
2023-09-11 15:39:18 +02:00
Rémi Verschelde 013bbd1a1e
Merge pull request #81477 from timothyqiu/aligned
Fix submenu alignment with parent menu item
2023-09-11 15:38:54 +02:00
Rémi Verschelde d08401236c
Merge pull request #81312 from YuriSizov/theme-static-binds
Register theme properties with ThemeDB
2023-09-11 15:38:06 +02:00
Rémi Verschelde ca2d5b25fd
Merge pull request #81094 from OXTyler/81071
Fix SpinBox not clearing text on improper input
2023-09-11 15:37:18 +02:00
Rémi Verschelde afd01030a8
Merge pull request #80956 from MarcusElg/deselectmulticaret
Deselect multi caret when alt clicking on it
2023-09-11 15:36:21 +02:00
bitsawer 8c26da5460 Fix LightmapGI baking with GridMap 2023-09-11 15:15:40 +03:00
Dario 7dfb854556 Propagate error correctly when max texture size for lightmaps is too small.
Add error handling for BAKE_ERROR_LIGHTMAP_TOO_SMALL, which was previously ignored. Fixes #81453.
2023-09-11 09:14:39 -03:00
Yuri Sizov 2924bfd4d3 Register theme properties with ThemeDB 2023-09-11 13:45:23 +02:00
MJacred 6170381bd7 Fix TextEdit.get_rect_at_line_column returning negative pos even though cursor is in viewable area of the control 2023-09-11 12:32:36 +02:00
kleonc 52f8886ad0 Fix TileMap::get_used_rect incorrectly handling empty layers 2023-09-11 10:55:27 +02:00
MewPurPur e39875a20d Add closed property to Line2D 2023-09-11 11:28:25 +03:00
Fabian Keller 178aad9a4e remove some dead declarations in audio_stream_player.h 2023-09-09 14:12:27 +02:00
Haoyu Qiu e5ad35a95f Fix submenu alignment with parent menu item 2023-09-09 14:32:21 +08:00
kobewi a9f3154da3 Add per-tile flipping and transposing 2023-09-09 00:56:38 +02:00
Rémi Verschelde fc99492d30
Merge pull request #81463 from YuriSizov/theme-variate-those-tooltips
Correctly setup tooltip's style as theme variation
2023-09-08 23:16:29 +02:00
Rémi Verschelde fb4edf50d7
Merge pull request #81452 from tcoxon/fix_57271
Fix animation keyframes being skipped when played backwards
2023-09-08 23:16:05 +02:00
Rémi Verschelde 867e20e7b9
Merge pull request #81450 from KoBeWi/call_deferred()_is_too_powerful._It's_frightening
Fix FindReplaceBar losing focus too early
2023-09-08 23:15:41 +02:00
Rémi Verschelde 5fef875cd8
Merge pull request #81070 from groud/improve_tilemap_performances
Improve TileMap performances by using quadrants only for rendering
2023-09-08 23:13:56 +02:00
Yuri Sizov 3d45f4b07e Correctly setup tooltip's style as theme variation 2023-09-08 21:51:06 +02:00
Gilles Roudière 8c1e28237b Improve TileMap performances by using quadrants only for rendering 2023-09-08 15:33:43 +02:00
Tom Coxon 1a52c0c543 Fix animation keyframes being skipped sometimes when being played backwards. #57271 2023-09-08 14:13:53 +01:00
kobewi db4daa5249 Fix FindReplaceBar losing focus too early 2023-09-08 14:46:34 +02:00
Rémi Verschelde baad99220e
Merge pull request #81443 from bruvzg/le_off_del
[LineEdit] Update line edit offset on text delete.
2023-09-08 11:50:49 +02:00
Rémi Verschelde 4330a94b13
Merge pull request #65011 from Rindbee/fix-first-set-in-main-scene
Fix the behavior of the resource property of the sub-scene root node on instantiation
2023-09-08 11:50:30 +02:00
Rémi Verschelde 31a7fd1951
Merge pull request #81406 from bruvzg/ts_dict_chk2
[TextServer] Pass Dictionary properties by value and check property values instead of references.
2023-09-08 09:11:23 +02:00
bruvzg 6a1fdc213c
[LineEdit] Update line edit offset on text delete. 2023-09-08 08:58:51 +03:00
Hendrik Brucker 5afe78bd9c Clean up/refactor GraphNode and make it more flexible
Split GraphNode into GraphElement and GraphNode, add custom
titlebar, and adjust theming.
2023-09-07 17:29:06 +02:00
Rémi Verschelde 23ab351a9b
Merge pull request #81396 from bruvzg/te_idir
Fix TextEdit placeholder with Inherited text direction.
2023-09-07 13:54:33 +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
Rémi Verschelde 4bf3de7853
Merge pull request #81383 from AThousandShips/valid_remove
Remove unnecessary validity checks from `Button` and `TextureRect`
2023-09-07 13:53:20 +02:00
bruvzg 1ced1f9c99
[TextServer] Pass Dictionary properties by value and check property values instead of references.. 2023-09-07 11:59:51 +03:00
bruvzg 3842694d4f
Fix TextEdit placeholder with Inherited text direction. 2023-09-07 08:26:10 +03:00
KurtBliss bb98843b61 Fixed: TextFile's not reloading when changed from external editors 2023-09-06 17:34:36 -04: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
Yuri Sizov 512182f147 Add theme contexts to various parts of the editor
This change defines additional theme contexts for editor
branches to prevent theme leaking between the default
theme, the project theme, and the editor theme.

- Both editor window and EditorNode define an editor-specific
context with the editor theme and the default theme.
- The 2D viewport defines a project-specific context with
the project theme and the default theme.
- Theme editor preview tabs define the default-only context
with the default theme.

Additionally, the default theme context now only includes
the project theme for running projects (both export and debug).
This prevents the project theme from leaking into the editor.

This commit also does a little clean up on the theming aspects
of the EditorNode.
2023-09-06 19:40:43 +02:00
Yuri Sizov 58126e479c Introduce the concept of global theme contexts
This commit adds the default theme context, which replaces
the need to manually check the project and the default theme
all the time; simplifies related code.

It also adds framework for custom theme contexts, to be used
by the editor. Custom contexts can be attached to any node,
and not necessarily a GUI/Window node. Contexts do no break
theme inheritance and only define which global themes a node
uses as a fallback.

Contexts propagate NOTIFICATION_THEME_CHANGED when one of their
global themes changes. This ensures that global themes act just
like themes assigned to individual nodes and can be previewed
live in the editor.
2023-09-06 19:40:43 +02:00
A Thousand Ships 380db4d03e Remove unnecessary validity checks from `Button` and `TextureRect`
The one in `TextureRect` appears to be a leftover from earlier code, and
the one in `Button` was copied from there.
2023-09-06 16:39:06 +02:00
Yuri Sizov 16957fd35b Merge pull request #81286 from lemilonkh/unshaded-materials-ignore-fog
Implement render mode `fog_disabled` and BaseMaterial3D setting Disable Fog
2023-09-06 14:49:16 +02:00
Yuri Sizov 6f87ab7244 Merge pull request #81268 from timothyqiu/icon-scale-changes
Fix ItemList not updating when icon scale changes
2023-09-06 14:49:13 +02:00
Yuri Sizov 3c63dce3cd Merge pull request #80573 from KoBeWi/2k_lines_of_changes_created_at_2AM
Add EditorStringNames singleton
2023-09-06 14:49:02 +02:00
Milan Gruner 45a33cc749 Implement render mode fog_disabled and BaseMaterial3D setting Disable Fog 2023-09-05 18:15:02 +02:00
Yuri Sizov 36cc4754f5 Merge pull request #81305 from YuriSizov/theme-fix-tests-shadowing
Fix ThemeDB initialization in tests
2023-09-05 15:14:27 +02:00
Yuri Sizov 3604b46bda Merge pull request #81300 from bitsawer/fix_empty_shader_handling
Fix empty shader resource loading
2023-09-05 15:14:24 +02:00
Yuri Sizov cfdc016038 Merge pull request #81296 from AThousandShips/blend_fix
Fix incorrect cast when animating `int`
2023-09-05 15:14:21 +02:00
Yuri Sizov c9bf824124 Merge pull request #79166 from bruvzg/ts_dict_chk
[TextServer] Remove excessive Dictionary checks.
2023-09-05 15:14:14 +02:00
Yuri Sizov 4328ffcc79 Fix ThemeDB initialization in tests
Also fixes class name shadowing in Viewport/Window tests.
2023-09-04 18:07:16 +02:00
bitsawer 15eec2450a Fix empty shader resource loading 2023-09-04 14:59:59 +03:00
A Thousand Ships 035cf5e210 Fix incorrect cast when animating `int`
Type was cast to `int` rather than `int64_t`
Also corrects `real_t` to `double`
2023-09-04 11:58:29 +02:00
Rémi Verschelde f05c7f6d68
Merge pull request #81239 from Malcolmnixon/xr-tracking-signals
Add XR tracking state-change signals
2023-09-04 09:08:59 +02:00
Rémi Verschelde 92da5a7654
Merge pull request #79792 from Miguel0312/SceneTreeTooltips
Correctly display tooltips for buttons in Tree when they overlap cell content
2023-09-04 09:07:24 +02:00
bruvzg 31a8a9b2e1
[TextServer] Remove excessive Dictionary checks. 2023-09-04 09:47:55 +03:00
kobewi 6de34fde27 Add EditorStringNames singleton 2023-09-03 19:58:18 +02:00
Marcus Elg aac10705d7 Deselect multi caret when alt clicking on it 2023-09-03 19:22:33 +02:00
Malcolm Nixon 22de1b31b5 Added XR tracking-state change signals
Add "pose_lost_tracking" signal to XRPositionalTracker.
Add "tracking_changed" signal to XRNode3D.
2023-09-03 12:17:16 -04:00
Haoyu Qiu 1bf4c12c0a Fix ItemList not update when icon scale changes 2023-09-03 19:10:24 +08:00
Rémi Verschelde 80bfca20c6
Merge pull request #81198 from KoBeWi/MissingRID
Add placeholder RID to GradientTexture1D
2023-09-01 16:03:22 +02:00
Rémi Verschelde 39b1d860c3
Merge pull request #75382 from AThousandShips/duplicate_bind
Ensure binds are duplicated with `Node` signals
2023-09-01 16:00:05 +02:00
kobewi 02857570d3 Add placeholder RID to GradientTexture1D 2023-08-31 15:53:32 +02:00
Rémi Verschelde ae7bab8c37
Merge pull request #81040 from Ymanawat/control-theme-80989
Fix setting TabContainer's `font_hovered_color` theme property
2023-08-31 08:54:29 +02:00
Yogendra Manawat a16fdb05ae Fix scrolling popup_menu On keyboard/controller input 2023-08-30 23:31:22 +05:30
BlueCube3310 c759ac0e4f Fix TreeItem range slider not working 2023-08-30 19:17:13 +02:00
Yogendra Manawat d7bf05b490 Fix TabContainer's font_hovered_color theme property 2023-08-30 21:25:41 +05:30
Chia-Hsiang Cheng 749db00227 Draw separators before selected style boxes 2023-08-30 16:32:58 +08:00
Rémi Verschelde f7c48cf803
Merge pull request #81128 from KoBeWi/devourer_of_input_meets_destroyer_of_focus
Unfocus LineEdit when pressing Escape
2023-08-30 08:47:26 +02:00
Rémi Verschelde fc0b3f7021
Merge pull request #80320 from Sauermann/fix-remove-invalidation-function
Remove `CanvasItem::_invalidate_global_transform`
2023-08-30 08:45:27 +02:00
Rémi Verschelde 8edc0b43b9
Merge pull request #78634 from Sauermann/fix-notification-order
Fix `Object::notification` order
2023-08-30 08:44:36 +02:00
Markus Sauermann 7f317ef1bf Remove `CanvasItem::_invalidate_global_transform`
The only use of that function can be replaced by `_notify_transform`,
which makes the `propagate_call` unnecessary.
As far as I can tell, the `data.blocked`-checks of `propagate_call`
are not needed in this case, because `_invalidate_global_transform`
causes no user-noticeable changes.
2023-08-30 00:29:42 +02:00
Markus Sauermann c4705a590b Fix Object::notification order
Previously the `p_reversed` parameter didn't influence the order
in a correct way.
Also script overridden _notification functions were not called in
the correct order.

To fix this some `notification` functions had to add a `p_reversed`
parameter.

This made it necessary to adjust cpp-bindings.

Co-authored-by: David Snopek <dsnopek@gmail.com>
2023-08-30 00:15:55 +02:00
kobewi 9f9210e60c Fix consistency of GradientTexture changes 2023-08-29 20:28:39 +02:00
A Thousand Ships 9cf13cedfd Ensure binds are duplicated with `Node` signals 2023-08-29 16:52:38 +02:00
kobewi e21c30ec11 Unfocus LineEdit when pressing Escape 2023-08-29 14:53:49 +02:00
kobewi 598d9972c8 Prevent errors if Tween callback's object is freed 2023-08-29 14:50:53 +02:00
Rémi Verschelde b272d7ed58
Merge pull request #81067 from bitsawer/fix_voxelgi_exposure
Fix VoxelGI CameraAttributes exposure normalization handling
2023-08-29 12:46:20 +02:00
Tyler 468e57dfe5 fixes issue 81071 2023-08-28 17:09:48 -04:00
Rémi Verschelde 541674d106
Merge pull request #81076 from Jordyfel/spinbox
Only allow finite numbers in `Range.value`.
2023-08-28 20:38:22 +02:00
Rémi Verschelde ba1089689a
Merge pull request #80954 from bruvzg/sp_per_font
[Text Server] Store extra spacing of individual font variations.
2023-08-28 20:37:58 +02:00
Rémi Verschelde 9229ea121c
Merge pull request #77986 from KoBeWi/outside_the_texture,_only_death_awaits
Cleanup tiles outside the texture
2023-08-28 20:37:04 +02:00
Jordyfel 78304282f0 Only allow finite numbers in Range.value. 2023-08-28 17:03:17 +03:00
kobewi 52d41cc555 Add option to cleanup tiles outside the texture 2023-08-28 15:15:45 +02:00
Rémi Verschelde 8df1d90336
Merge pull request #81065 from YuriSizov/themable-chairs
Move default theme files to `scene/theme`
2023-08-28 15:05:04 +02:00
Rémi Verschelde 8b8b6d1e87
Merge pull request #81006 from KurtBliss/Chance-of-crash-when-Control-overrides-mouse-input-on-Area2D-#79371
Fix possible crash when Control overrides mouse input on Area2D
2023-08-28 15:04:41 +02:00
Rémi Verschelde bcbe1fd5e0
Merge pull request #80754 from KoBeWi/TileSetImprovementsCollectionSource
Improve scene tiles workflow
2023-08-28 15:03:26 +02:00
Rémi Verschelde 1c9e45f5dd
Merge pull request #80705 from bitsawer/add_shader_load_error_checks
Fix Shader and ShaderInclude resource loading
2023-08-28 15:03:02 +02:00
bitsawer c73e1f0d22 Fix VoxelGI CameraAttributes exposure normalization handling 2023-08-28 13:25:34 +03:00
Rémi Verschelde 713bfaf5ea
Merge pull request #81064 from bruvzg/rtl_char_count_line_edge
[RTL] Fix character line index for non-visual characters and characters on the line edge.
2023-08-28 12:12:22 +02:00
Rémi Verschelde 072ba70424
Merge pull request #81012 from Jordyfel/center-window
Implement center window function.
2023-08-28 12:07:27 +02:00
Rémi Verschelde 2f82687334
Merge pull request #80984 from MarcusElg/particleoffsetstutter
Fix GPUParticle2D offset stutter
2023-08-28 12:05:52 +02:00
Rémi Verschelde 2967084fe3
Merge pull request #80490 from YuriSizov/editor-scene-tabs-unchained
Extract editor scene tabs into their own component
2023-08-28 12:04:41 +02:00
Rémi Verschelde 33a3e12fe1
Merge pull request #80435 from YuriSizov/region-editor-quality-pass
Fix multiple usability issues in the texture region editor
2023-08-28 12:04:18 +02:00
Rémi Verschelde 2c0a74a149
Merge pull request #80105 from Sauermann/fix-global-transform
Fix global transform validity for `Node2D` and `Control`
2023-08-28 12:03:53 +02:00
Rémi Verschelde b00796eb1a
Merge pull request #79818 from garychia/select_all
RichTextLabel: Ensure the `select_all` function selects all items
2023-08-28 12:03:29 +02:00
bruvzg 2273509721
[RTL] Fix character line index for non-visual characters and characters on the line edge. 2023-08-28 10:50:01 +03:00
Yuri Sizov fd2ec47ec9 Move default theme files to scene/theme
This also puts the default theme icons into their own folder.
2023-08-28 00:23:38 +02:00
Miguel Pereira 8278a5f274 Correctly display tooltips for buttons in Tree when they overlap cell content 2023-08-27 18:21:12 +02:00
Yuri Sizov 4b7d0c84a1 Fix multiple usability issues in the texture region editor
- Correctly display atlas textures when used by other objects.
- Make region handles easier to hit in ninepatchable objects.
- Correctly initialize and restore various visual properties.
- Improve code quality.
2023-08-27 14:25:49 +02:00
Chia-Hsiang Cheng f93f1952cb Avoid selecting the first item automatically in Open Folder Mode 2023-08-27 17:25:17 +08:00
Dragos Daian f9435b6d72 Expose the get_rid method of Joint2D and Joint3D
update occurance of get_joint

Update documentation as per feedback.

update

update

Co-Authored-By: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>
2023-08-27 00:34:47 +03:00
Jordyfel 9819ffb166 Implement window center function. 2023-08-26 21:34:21 +03:00
KurtBliss dbb01bc451 Fixed, chance of crash when Control overrides mouse input on Area2D
Made Viewport::_cleanup_mouseover_colliders queue up mouse_exit and
mouse_shape_exit signals to emit and at the end of the function's
execution to avoid potential crashes.
2023-08-25 17:51:38 -04:00
bruvzg 88177a5a58
[RTL] Use list iterators for item/paragraph removal. 2023-08-25 17:49:13 +03:00
Chia-Hsiang Cheng d66c7a2ac5 Ensure the 'select_all' function selects all items 2023-08-25 21:07:33 +08:00
Marcus Elg 936fd8db38 Fix GPUParticle2D offset stutter 2023-08-25 09:59:05 +02:00
Danil Alexeev 07d23489f4
GUI: Fix text overlapping icon in `Tree` 2023-08-24 22:09:02 +03:00
A Thousand Ships e70b83c7a0 Expose finding valid focus neighbors of a `Control` by side
Exposes the functionality used for ui navigation
2023-08-24 18:25:35 +02:00
Yuri Sizov 6ab34005ad Extract editor scene tabs into their own component 2023-08-24 12:24:29 +02:00
bruvzg 5453503697
[Text Server] Store extra spacing of individual font variations. 2023-08-24 11:58:12 +03:00
Andrés Botero eee95aff04 Add transform support to CharFXTransform
Use absolute transforms for CharFX

fix formatting
2023-08-23 00:18:37 -05:00
Rémi Verschelde 8e0346bade
Merge pull request #80848 from bruvzg/rtl_lang
[RTL] Adds "lang" tag to allow overriding language specific text rendering without starting a new paragraph.
2023-08-21 19:32:29 +02:00
Rémi Verschelde ddb7430536
Merge pull request #80847 from bruvzg/rtl_rem_para
[RTL] Fix `remove_paragraph` crashes
2023-08-21 19:32:25 +02:00
Rémi Verschelde cc01b28886
Merge pull request #80779 from Chaosus/cpuparticles_converter
Implement conversion from `CPUParticles` to `GPUParticles` (3D/2D)
2023-08-21 19:26:48 +02:00
bruvzg 299808cc26
[RTL] Adds "lang" tag to allow overriding language specific text rendering without starting a new paragraph. 2023-08-21 14:56:43 +03:00
bruvzg cd6b0368f6
[RTL] Fix remove_paragraph crashes. 2023-08-21 14:36:07 +03:00
Rémi Verschelde 76a4b5d710
Merge pull request #80809 from jsjtxietian/early-quit-in-_get_column_pos_of_word
Edit early in `TextEdit::_get_column_pos_of_word` to improve highlight performace
2023-08-21 08:25:26 +02:00
Rémi Verschelde 4bba963f0a
Merge pull request #80782 from KoBeWi/MessLibrary
Cleanup MeshLibrary changed signals
2023-08-21 08:23:48 +02:00
Rémi Verschelde b24eb34669
Merge pull request #80780 from HolonProduction/sub-window-focus-crash
Fix crash when hiding subwindow during popup of new subwindow
2023-08-21 08:23:23 +02:00
HolonProduction e2cea458a3 Fix crash when hiding subwindow during popup of new subwindow 2023-08-20 17:51:54 +02:00
jsjtxietian 70dad7e5a3 Fixes a text find perf issue, if can't find any
match words, just early break the while loop. This
will improve a lot when p_search.length is way too
long since p_from_column will only plus 1 every loop
2023-08-20 21:48:25 +08:00
kobewi ecc3944b1e Cleanup MeshLibrary changed signals 2023-08-19 11:56:31 +02:00
Yuri Roubinski 7fcb91f077 Implement conversion from `CPUParticles` to `GPUParticles` (3D/2D) 2023-08-19 11:58:57 +03:00
Rémi Verschelde b51ee8b029
Merge pull request #80650 from bruvzg/comp_char_fix
[TextServer] Fix system font fallback and caret/selection behavior for composite characters.
2023-08-18 17:24:54 +02:00
kobewi a88e3b8604 Improve scene tiles workflow 2023-08-18 13:55:30 +02:00
Rindbee bd42d337df Fix the behavior of the resource property of the sub-scene root node on instantiation
The sub-scene root node will be set successively in the sub-scene and the main scene.

The PR is simply to determine intent from the record. Mainly the cases when
`resource_local_to_scene` is enabled in main scene.

When updating resources according to the records of the main scene, use the
`scene_unique_id` in the main scene to prevent the ID of the resource from
changing continuously when saving the scene.
2023-08-18 19:08:34 +08:00
Rémi Verschelde d81767495a
Merge pull request #80512 from mihe/global-basis
Add `global_basis` property to `Node3D`
2023-08-18 09:31:41 +02:00
A Thousand Ships b060a22719 Pass missing arguments to `TileMap::get_used_cells_by_id` 2023-08-17 19:55:56 +02:00
Rémi Verschelde 0511f9d9a7
Merge pull request #80708 from garychia/anim_seek
Ensure methods skipped by `AnimationPlayer::seek` are not called
2023-08-17 15:44:03 +02:00
Rémi Verschelde e73a4a382e
Merge pull request #79201 from Rindbee/fix-setup-state-not-cleared
Clear the previously set state when configuring for a new scene root node
2023-08-17 15:43:38 +02:00
Rémi Verschelde 446dfdbd87
Merge pull request #80329 from xiongyaohua/path3d_tilt_gizmo
Add handles to control Curve3D tilt
2023-08-17 12:29:55 +02:00
Rémi Verschelde e6e79255ed
Merge pull request #77943 from aaronfranke/mass-dist
Add Mass Distribution, Deactivation, Solver inspector property groups
2023-08-17 12:26:59 +02:00
Chia-Hsiang Cheng 125ae78a89 Ensure methods skipped by AnimationPlayer::seek are not called 2023-08-17 17:35:54 +08:00
Rémi Verschelde c5a7462a00
Merge pull request #80702 from KoBeWi/lagging_animation
Fix initial value with delay in PropertyTweener
2023-08-17 11:28:15 +02:00
Rémi Verschelde 06eade1bc2
Merge pull request #80367 from garychia/anim_signals
Avoid emitting signals if the animation is not ready to be processed
2023-08-17 11:25:28 +02:00
Rémi Verschelde 0fff0b1054
Merge pull request #80203 from WhalesState/Dev2
Add shortcut handling to `OptionButton`
2023-08-17 11:24:14 +02:00
Rémi Verschelde 37d213b24e
Merge pull request #79972 from smix8/navgenerator_multithreading_4.x
Add multi-threaded NavMesh baking to NavigationServer
2023-08-17 11:22:11 +02:00
Rémi Verschelde ef77ae7d6c
Merge pull request #74250 from daBlesr/bugfix-selection-signals-when-disabled-or-not-selectable
ItemList: Clarify distinction between disabled and selected in sending signals
2023-08-17 11:19:17 +02:00
Rémi Verschelde 4b11bc2b34
Merge pull request #36493 from KoBeWi/echo_menus
Add option to allow echo events in menu shortcuts
2023-08-17 11:18:50 +02:00
Niels Drost fa63107bd1
ItemList: Clarify distinction between disabled and selected in sending signals
disabled -> not sending any signal at all (activated, selected, deselected, ...)
selected -> only possible when not disabled, and when selectable

Fixes #74086.
2023-08-17 10:34:18 +02:00
kobewi 1660575bd8 Fix initial value with delay in PropertyTweener 2023-08-17 10:28:26 +02:00
bitsawer 26e3443eef Fix Shader and ShaderInclude resource loading 2023-08-17 11:17:54 +03:00
Tomasz Chabora 3dd881b4e4 Add option to allow echo events in menu shortcuts 2023-08-16 16:59:17 +02:00
Rémi Verschelde 77fd8f3416
Merge pull request #80673 from YeldhamDev/give_me_my_windows!
Allow to get a list of visible embedded `Window`s
2023-08-16 16:56:31 +02:00
Rémi Verschelde e31cb25d50
Merge pull request #79165 from Koyper/enable_missing_tree_title_font_settings
Enabled missing Tree title button font and font size theme settings
2023-08-16 16:54:55 +02:00
Rémi Verschelde c081d1bd24
Merge pull request #78816 from kleonc/scene-tree-fix-drag-drop-to-parent-with-internal-nodes
Fix drag-dropping nodes to parent with internal nodes
2023-08-16 16:54:06 +02:00
Michael Alexsander de27df5da3
Allow to get a list of visible embedded `Window`s 2023-08-16 10:42:08 -03:00
Koyper e84588987a Enabled missing Tree title button font and font size theme settings. 2023-08-16 08:10:31 -05:00
Rémi Verschelde ed81c93be7
Merge pull request #80658 from Sch1nken/tilemap-erase-scenes
TileMap: Check for possible scenes to be erased
2023-08-16 09:18:11 +02:00
Rémi Verschelde ed1180a97e
Merge pull request #80638 from sepTN/fix-particle-shader-rand
Fix particle shader deterministic random values
2023-08-16 09:16:14 +02:00
Rémi Verschelde da80a033f1
Merge pull request #80606 from bruvzg/rtl_scroll_hide
[RTL] Improve scroll bar responsiveness during updates.
2023-08-16 09:14:40 +02:00
Rémi Verschelde a7dc4c22a9
Merge pull request #80334 from Sauermann/fix-window-out-of-viewport-events
Fix nodes receiving mouse events in black bars of `Window`
2023-08-16 09:12:42 +02:00
Rémi Verschelde 132b97c325
Merge pull request #79747 from kleonc/canvas_modulate_fix_updating_logic
Fix `CanvasModulate` logic for modulating the canvas
2023-08-16 09:12:18 +02:00
Sch1nken 7aa90d1667 Check for possible scenes to be erased 2023-08-15 15:17:06 +02:00
bruvzg 5d3fcc5766
[TextServer] Fix system font fallback and caret/selection behavior for composite characters. 2023-08-15 11:42:40 +03:00
Septian cb7400d67a Fix particle shader deterministic random values 2023-08-15 15:06:37 +07:00
bruvzg 3709ca5404
[RTL] Improve scroll bar responsiveness during updates. 2023-08-14 11:36:05 +03:00
Rémi Verschelde 0308422f46
Merge pull request #80594 from rsubtil/fix_window_input_event
Support other input methods on Popup/Dialogs' `_input_from_window`
2023-08-14 09:38:08 +02:00
Rémi Verschelde 8b3de35c64
Merge pull request #79867 from WhalesState/master
Fix Camera2D is not working inside a MainScreenEditorPlugin
2023-08-14 09:36:06 +02:00
Mounir Tohami 4e4a725fff Fix Camera2D is not working inside EditorPlugin 2023-08-13 22:14:13 +00:00
Ricardo Subtil f0927250ca Support controller input on popup/dialogs 2023-08-13 17:32:08 +01:00
Daniel Roberts 46e395abb1 Add handles to control Curve3D tilt 2023-08-12 14:55:38 +08:00
Mikael Hermansson 8be20c495c Add `global_basis` property to `Node3D` 2023-08-11 11:41:49 +02:00
Rémi Verschelde a8edbcfe13
Merge pull request #80485 from Calinou/volumetric-fog-clamp-length
Clamp Volumetric Fog Length property to prevent rendering issues
2023-08-11 10:33:23 +02:00
Rémi Verschelde 33198d0df0
Merge pull request #75784 from Riteo/int-scale
Add content scale stretch modes, implement integer scaling
2023-08-11 10:32:11 +02:00
Riteo 87cfc415a3 Add content scale stretch modes, implement integer scaling
Integer scaling is achieved (after aspect expansion) by "lying" to the
stretching code about the window's size, telling it that it's always an
integer multiple of the viewport so that it only gets stretched to an
integer factor.

This approach works with all stretch and aspect modes and doesn't
require handling for each, only requiring to "loosen up" some
self-excluding conditions (in other words, replacing some `else if`s
with just `if`s) regarding viewport offset and margin calculation (black
bars).

Includes a tiny usability change that adds a range hint for the content
scale factor between 0.5 to 8.0.

Co-Authored-By: Hugo Locurcio <hugo.locurcio@hugo.pro>
2023-08-10 19:45:47 +02:00
Hugo Locurcio 8041cff865
Clamp Volumetric Fog Length property to prevent rendering issues
A length of 0 units doesn't make sense anyway.
2023-08-10 15:55:36 +02:00
ajreckof 1eb3d99ff7 Fix CodeEdit completion being very slow in certain cases 2023-08-10 08:15:41 +02:00
Rémi Verschelde 7257d1667e
Merge pull request #80441 from Calinou/editor-torusmesh-inspector-hint-or-greater
Allow setting values greater than the maximum in TorusMesh inspector
2023-08-10 00:43:27 +02:00
Rémi Verschelde f6b9d445b5
Merge pull request #80285 from YeldhamDev/just_a_little_bit
Further separate icon from text of buttons in both editor and default themes
2023-08-09 15:20:25 +02:00
Rémi Verschelde 3a0086eb6f
Merge pull request #78426 from Daylily-Zeleen/daylily-zeleen/graph_edit_virtual
Make GraphEdit's cpp virtuals equal to gdscript.
2023-08-09 15:20: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
Hugo Locurcio acd5dee478
Allow setting values greater than the maximum in TorusMesh inspector
This is consistent with other PrimitiveMeshes' behavior.
2023-08-09 10:14:00 +02:00
Daylily-Zeleen 2f0639e7ae Make GraphEdit's cpp virtuals equal to gdscript. 2023-08-09 00:21:35 +08:00
Rindbee 4795c3cdfa Clear the previously set state when configuring for a new scene root node
Saving a subscene causes the main scene to be re-instantiated. And the resource
instance in the main scene will be reused when the main scene is re-instantiated.
So for resources with `resource_local_to_scene` enabled, resetting state may be
necessary (at least for `ViewportTexture`).
2023-08-08 23:49:53 +08:00
Rémi Verschelde 0ce1ca4677
Merge pull request #80402 from timothyqiu/overrun-icon
Fix Button text when overrun is not trim nothing
2023-08-08 17:00:46 +02:00
Rémi Verschelde 70e77a8383
Merge pull request #80381 from Calinou/audio-bus-master-use-scenestringnames
Use StringName consistently to refer to the Master audio bus name
2023-08-08 16:59:11 +02:00
Rémi Verschelde b49478acce
Merge pull request #80366 from timothyqiu/option-button-lean-and-mean
Fix OptionButton min size when fit longest item is enabled
2023-08-08 16:58:23 +02:00
Rémi Verschelde 46c9a1427d
Merge pull request #80364 from Calinou/control-escape-dismiss-tooltips
Dismiss currently visible or upcoming tooltips when pressing Escape
2023-08-08 16:57:59 +02:00
Rémi Verschelde 1163dac9e3
Merge pull request #80215 from clayjohn/HDR-2D
Add option to enable HDR rendering in 2D
2023-08-08 16:57:33 +02:00
Rémi Verschelde af722e2bab
Merge pull request #80187 from Sauermann/fix-mouseover-error-handling
Handle potential platform-specific `Window` mouse-enter/exit bugs gracefully
2023-08-08 16:57:09 +02:00
Rémi Verschelde 14256a2395
Merge pull request #78468 from KoBeWi/enmarginalization
Fix ColorPicker margin theme property
2023-08-08 16:55:32 +02:00
Markus Sauermann 2f8673dc07 Handle potential platform-specific `Window` mouse-enter/exit bugs gracefully
Also replace `DEV_ASSERT` by `WARN_PRINT_ONCE`.
2023-08-08 13:05:18 +02:00
Markus Sauermann 152572ac38 Fix global transform validity for `Node2D` and `Control`
Set global transform to invalid when changing transform
2023-08-08 12:22:55 +02:00
Haoyu Qiu 7f70ac56a0 Fix Button text when overrun is not trim nothing 2023-08-08 15:08:28 +08:00
Hugo Locurcio 6307b0be3c
Dismiss currently visible or upcoming tooltips when pressing Escape
This is standard UI behavior in most applications out there.
2023-08-08 07:40:39 +02:00
Michael Alexsander 98bdb56815
Further separate icon from text of buttons in both editor and default themes 2023-08-07 13:22:39 -03:00
Hugo Locurcio 49b6067aba Use StringName consistently to refer to the Master audio bus name 2023-08-07 18:06:17 +02:00
smix8 8686e84b44 Add multi-threaded NavMesh baking to NavigationServer
Adds multi-threaded NavMesh baking to NavigationServer.
2023-08-07 17:14:37 +02:00
Rémi Verschelde 169a28bd0f
Merge pull request #80362 from Calinou/string-use-unicode-compiletime
Use compile-time Unicode string conversion
2023-08-07 14:55:58 +02:00
Rémi Verschelde 7eb047a5ed
Merge pull request #79643 from smix8/navgenerator_4.x
Move navigation mesh baking to NavigationServer
2023-08-07 14:48:15 +02:00
Faolan b3b791350b
Move registration of `fallbacks` property in the base Font class 2023-08-07 13:46:44 +02:00
Rémi Verschelde faaf27f284
Fix various typos with codespell
Also includes typo fixes from #79993, #80068, #80276, and #80303.

Co-authored-by: betalars <contact@betalars.de>
Co-authored-by: spaceyjase <429978+spaceyjase@users.noreply.github.com>
Co-authored-by: Swarkin <102416174+Swarkin@users.noreply.github.com>
Co-authored-by: Raul Santos <raulsntos@gmail.com>
2023-08-07 13:09:47 +02:00
Chia-Hsiang Cheng ef5d0b1c06 Avoid emitting signals if the animation is not ready to be processed 2023-08-07 18:21:28 +08:00
Haoyu Qiu 5dd854513e Fix OptionButton min size when fit longest item is enabled 2023-08-07 17:25:10 +08:00
clayjohn 57eb762bae Add option to enable HDR rendering in 2D
This is needed to allow 2D to fully make use of 3D effects (e.g. glow), and can be used to substantially improve quality of 2D rendering at the cost of performance

Additionally, the 2D rendering pipeline is done in linear space (we skip linear_to_srgb conversion in 3D tonemapping) so the entire Viewport can be kept linear.
This is necessary for proper HDR screen support in the future.
2023-08-07 11:24:03 +02:00
Hugo Locurcio e9f723006a
Use compile-time Unicode string conversion
Thanks to this syntax introduced in C++11, this reduces the amount of work
that needs to be performed at run-time while making the code more terse.
2023-08-07 10:38:16 +02:00
Aaron Franke 49e0a01bf1
Add Mass Distribution, Deactivation, Solver inspector property groups 2023-08-06 21:26:33 -05:00
Danil Alexeev 5fb975e4a5
GUI: Fix `Tree` performance regression by using cache 2023-08-04 16:11:26 +03:00
Yuri Sizov a56e960150 Merge pull request #71233 from PrecisionRender/barycentric-coords
Add ability to get face index and barycentric coordinates from raycast
2023-08-03 22:37:30 +02:00
smix8 744fa87da2 Move navigation mesh baking to NavigationServer
Moves navigation mesh baking to NavigationServer.
2023-08-03 19:49:07 +02:00
Rémi Verschelde 725beaa7af
Merge pull request #80219 from YeldhamDev/override_all_the_things
Improve `Window._get_contents_minimum_size()`'s code
2023-08-03 15:33:37 +02:00
Michael Alexsander 6d2453425b
Improve `Window._get_contents_minimum_size()`'s code 2023-08-03 10:25:05 -03:00
Rémi Verschelde 4c70849b3b
Merge pull request #80168 from akien-mga/extension-compat
Fix or workaround recent extension API compatibility issues
2023-08-03 15:12:38 +02:00
Rémi Verschelde f9d960c925
Merge pull request #80178 from YeldhamDev/override_all_the_things
Expose `Window`'s `_get_contents_minimum_size()` to scripting
2023-08-03 14:46:52 +02:00
Rémi Verschelde ae8f1015e0
Merge pull request #79064 from MewPurPur/rename-button-pressed-THIS-IS-NOT-A-COMPAT-BREAK
Rename `button_pressed` default signal binding to avoid shadowing
2023-08-03 14:46:39 +02:00
Rémi Verschelde 858e8748e8
Fix or workaround recent extension API compatibility issues
- Add compatibility methods for `RenderingDevice::shader_create_from_bytecode`
  and `CodeEdit::get_text_for_symbol_loopup`.
- Silence errors which now have compatibility methods.
- Acknowledge GraphEdit/GraphNode compat breakage, intended and WIP.
2023-08-03 12:07:21 +02:00
Mounir Tohami 2cec27a3f1 Add shortcut handling to OptionButton 2023-08-03 08:38:20 +00:00
PrecisionRender af7f787c6e Add ability to get barycentric coordinates from ray 2023-08-02 15:16:44 -05:00
Yuri Sizov 237bd0a615
Merge pull request #80117 from Sauermann/fix-actually-store-safe-rect
Actually store safe-rect in embedder
2023-08-02 21:48:02 +02:00
Michael Alexsander f270163ab0
Expose `Window`'s `_get_contents_minimum_size()` to scripting 2023-08-02 14:40:38 -03:00
Markus Sauermann 1e9d241809 Actually store safe-rect in embedder
`sw` is a copy and not a reference.
Add unit-test for this case.
2023-08-02 17:51:52 +02:00
Rémi Verschelde 3e958cfa8d
Merge pull request #79705 from 398utubzyt/gui/snap-charfx-fix
GUI: Snap CharFX offset to nearest pixel when setting is enabled
2023-08-02 12:18:46 +02:00
Rémi Verschelde d8cbb6d645
Merge pull request #79563 from danny88881/drag-and-drop-text-setting
Add drag'n'drop text option for `LineEdit` and `RichTextLabel`
2023-08-02 12:17:56 +02:00
Rémi Verschelde 2a9aaae8a5
Merge pull request #79293 from ItsNL/add-accept-dialog-close-on-unfocused
Check `FLAG_POPUP` to close an AcceptDialog when parent is focused
2023-08-02 12:17:06 +02:00
Rémi Verschelde b156e24216
Merge pull request #77280 from Rindbee/fix-unnecessary-break-in-Label
Fix unnecessary break when calculating the height of visible lines
2023-08-02 12:15:24 +02:00
Markus Sauermann 8c1ce404d7 Fix crash on Windows when closing `Window`
Send `WINDOW_EVENT_MOUSE_EXIT` when a window is destroyed.

Ensure, that on Windows, the event_callback is still valid during
destroying the `Window`.
2023-08-02 00:17:25 +02:00
Yuri Sizov 9fe9922dd9 Merge pull request #80122 from timothyqiu/rid-id
Fix "a number is required" error when printing RID
2023-08-01 20:04:04 +02:00
Yuri Sizov e810671116 Merge pull request #79977 from Owl-A/bugfix
Add state sync after call to `_integrate_forces` in `_body_state_changed`
2023-08-01 20:03:47 +02:00
Yuri Sizov 88068a0374 Merge pull request #79946 from Ymanawat/propagate-check-79942
Fix Tree check propagation not unchecking parent items
2023-08-01 20:03:43 +02:00
Yuri Sizov defaac6058 Merge pull request #67791 from Sauermann/fix-visual-mouse-notifications
Refactor mouse_entered and mouse_exited signals
2023-08-01 20:03:33 +02:00
Haoyu Qiu 35f28407d9 Fix "a number is required" error when printing RID 2023-08-01 23:30:21 +08:00
Yuri Sizov 8965e24dde Merge pull request #79874 from clayjohn/PlaceholderTexture-rid
Lazily allocate RIDs for PlaceholderTextures to avoid allocating GPU resources unless used
2023-08-01 17:25:37 +02:00
Yuri Sizov c9aa2131dc Merge pull request #79710 from AThousandShips/video_play
Fix incorrect virtual function in `VideoStream.set_paused`
2023-08-01 17:25:25 +02:00
Yuri Sizov fd1ee5d56b Merge pull request #79332 from AThousandShips/mp_crash
Prevent crash when accessing `Node` Multiplayer from thread
2023-08-01 17:25:07 +02:00
Chinmay Awale c118256865 added state sync after call to _integrate_forces 2023-08-01 19:03:43 +05:30
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
Yogendra Manawat f0362cd37b Fixed Tree Selection Bug 2023-07-29 00:30:39 +05:30
detomon d275a7487d Initialize MSDF parameters in BaseMaterial3D with default 2023-07-28 13:24:44 +02:00
Yuri Sizov 1e314d5501
Merge pull request #79941 from KoBeWi/scene_tile_devastation
Properly clear scene tiles
2023-07-27 19:09:40 +02:00
kobewi 055b9892d2 Properly clear scene tiles 2023-07-27 01:31:20 +02:00
Markus Sauermann 7fead979d6 Disable error condition for accessing safe rect
This PR removes the error-message, which is currently expected to happen.
The task of correctly fixing the underlying problem of window popup
closing is more complex, so this PR solves the immediate
error-notification-problem.
2023-07-26 20:21:30 +02:00
Yuri Sizov 7305318a88 Merge pull request #79913 from bruvzg/lbl_min_h_line
[Label] Remove extra line spacing from Label minimum size calculations.
2023-07-26 18:40:42 +02:00
Yuri Sizov d50c52652f Merge pull request #79805 from kumikumi/fix-subviewport-cursor
Prevent SubViewportContainer overriding Subviewport's cursor with its own cursor
2023-07-26 18:40:30 +02:00
Yuri Sizov 712f49ec57 Merge pull request #79766 from Sauermann/fix-window-determinant-zero
Add determinant check for minimized windows
2023-07-26 18:40:26 +02:00
Yuri Sizov 1de9171c32 Merge pull request #79443 from Sauermann/fix-ingore-hovering
Fix physics passive hovering with `MOUSE_FILTER_IGNORE`
2023-07-26 18:40:14 +02:00
Yuri Sizov d49ea2b7d8 Merge pull request #79288 from BastiaanOlij/custom_texture_api
Add custom texture create function
2023-07-26 18:40:01 +02:00
Yuri Sizov 67873d0d5d Merge pull request #79248 from Sauermann/fix-svc-focus-propagation
Make `SubViewportContainer` event propagation aware of focused Control
2023-07-26 18:39:57 +02:00
Yuri Sizov 6f6f7db911 Merge pull request #79129 from smix8/navbase_enabled_4.x
Add NavigationServer API to enable regions and links
2023-07-26 18:39:47 +02:00
Yuri Sizov e8df8c5e2c Merge pull request #78988 from RandomShaper/fix_change_scene
Reimplement scene change
2023-07-26 18:39:43 +02:00
Bastiaan Olij 63d6e9c557 Add custom texture create function 2023-07-26 20:46:34 +10:00
bruvzg 16d7e0bf98
[Label] Remove extra line spacing from Label minimum size calculations. 2023-07-26 08:15:53 +03:00
smix8 69fad39cf5 Add NavigationServer API to enable regions and links
Adds NavigationServer API to enable regions and links.
2023-07-26 01:20:15 +02:00
Patrick 65b0989f68 Additional Visual Shader Nodes
* RotationByAxis Visual Shader Node added
* WorldPositionFromDepth Visual Shader Node added
* ScreenNormalWorldSpace Visual Shader Node added
2023-07-26 00:39:12 +02:00
Yuri Sizov a581bf0a24 Merge pull request #79879 from KoBeWi/the_tweenld
Improve and clarify paused Tweens
2023-07-25 21:51:35 +02:00
Yuri Sizov ee1be950a1 Merge pull request #79786 from smix8/navmesh_max_edge_len_4.x
Disable NavigationMesh `edge_max_length` property by default
2023-07-25 21:26:16 +02:00
Yuri Sizov 4b0d1026af Merge pull request #78365 from smix8/ps_navmap_default_up_4.x
Add ProjectSettings navigation map default up
2023-07-25 21:25:50 +02:00
kobewi dbecf8bd1a Improve and clarify paused Tweens 2023-07-25 13:29:30 +02:00
clayjohn d61d498632 Lazily allocate RIDs for PlaceholderTextures to avoid allocating GPU resources unless used 2023-07-25 10:49:35 +02:00
Yuri Sizov f6187014ec Merge pull request #79851 from timothyqiu/null-tileset
Fix crash when executing `TileMap.fix_invalid_tiles`
2023-07-24 19:33:55 +02:00
Yuri Sizov d06779cc07 Merge pull request #79782 from guemax/remove-spaces-from-input-of-html-color-in-color-picker
Remove spaces from input of HTML color in color picker
2023-07-24 19:33:34 +02:00
Yuri Sizov beb9c3834d Merge pull request #79713 from smix8/legacy_navmesh_struct_4.x
Remove unused struct from NavigationMesh
2023-07-24 19:33:15 +02:00
Yuri Sizov 6fb5d9e1e6 Merge pull request #79485 from smix8/tilemap_cell_size_4.x
Set default `cell_size` on new TileMap Layer navigation layer maps
2023-07-24 19:32:50 +02:00
Yuri Sizov 2f4c962929 Merge pull request #79434 from Calinou/2d-editor-allow-float-bone-size
Allow using floating-point bone sizes and outline widths in the 2D editor
2023-07-24 19:32:42 +02:00
Yuri Sizov 752b89dc36 Merge pull request #79403 from TokageItLab/fix-negative-timescale-transition
Fix `AnimationNodeTransition` with negative time scale
2023-07-24 19:32:37 +02:00
Yuri Sizov fb2c3ae8f7 Merge pull request #79308 from Geometror/refactor-graphedit
Clean up/refactor GraphEdit
2023-07-24 19:32:33 +02:00
Yuri Sizov 52078dc994 Merge pull request #79157 from smix8/navmesh_clear_4.x
Add `clear` function to NavigationMesh / NavigationPolygon
2023-07-24 19:32:24 +02:00
Yuri Sizov 2bd904e3db Merge pull request #73196 from Vilcrow/fix-lookup-symbol
Fix jumping to function definition using `Ctrl+LMB` or the "Lookup Symbol" button
2023-07-24 19:32:12 +02:00
Yuri Sizov d6bb6d42b2 Merge pull request #71394 from Ithamar/feat-imagetexlay-ser
Fix ImageTextureLayered serialisation issues
2023-07-24 19:32:06 +02:00
Hendrik Brucker a38fd09669 Clean up/refactor GraphEdit 2023-07-24 18:37:23 +02:00
Yuri Sizov 91258e52be
Merge pull request #79307 from Geometror/remove-graph-node-comment
Remove GraphNode's comment property and related functionality
2023-07-24 16:56:41 +02:00
Haoyu Qiu a7ab7e469b Fix crash when executing TileMap.fix_invalid_tiles 2023-07-24 20:01:27 +08:00
Mikko Ankkala 96b26574b9 Don't override SubViewport's cursor with SubViewportContainer's cursor
Add a warning for having a non-default value of `mouse_default_cursor_shape` in SubViewportContainer

Add test
2023-07-23 22:27:55 +03:00
Ithamar R. Adema f37c2b5be2 Fix ImageTextureLayered serialisation issues. 2023-07-23 13:54:04 +02:00
smix8 c63125c317 Disable NavigationMesh edge_max_length property by default
Disables NavigationMesh edge_max_length property by default.
2023-07-22 14:09:15 +02:00
guemax d934d00828
Remove spaces from input of HTML color in color picker
Fixes #79338
2023-07-22 12:11:28 +02:00
Markus Sauermann e0bce0bd7f Add determinant check for minimized windows
When the Window is minimized, the transform-determinant can be 0.
Add a check to prevent this case.
2023-07-22 00:02:37 +02:00
smix8 671839d5cd Set default cell_size on new TileMap Layer navigation layer maps
Sets default cell_size on new TileMap Layer navigation layer maps.
2023-07-21 18:02:21 +02:00
Yuri Sizov 4770e87616 Merge pull request #79655 from kleonc/scene-dubugger-remove-outdated-error-check
Fix arg count checks in `SceneDebugger`
2023-07-21 17:55:02 +02:00
Yuri Sizov 7a313318b2 Merge pull request #79645 from adamscott/fix-camera-2d-editor
Fix Camera2D crash when edited scene root is null
2023-07-21 17:54:58 +02:00
Yuri Sizov 1843781918 Merge pull request #79640 from Calinou/default-theme-scale-fix-corner-radius
Fix corner radius not scaling with theme scale in the default theme
2023-07-21 17:54:54 +02:00
Yuri Sizov e38dc58199 Merge pull request #76759 from Nidjo123/master
Fix RichTextLabel character line and paragraph index getters
2023-07-21 17:54:11 +02:00
Yuri Sizov 7835d42971 Merge pull request #79618 from HolonProduction/deleting-terrains-crash
Fix crash when deleting tileset terrains
2023-07-21 17:15:48 +02:00
Yuri Sizov 6a30f64dc8 Merge pull request #79595 from TokageItLab/rbmap-animblendtree
Make `AnimationNodeBlendTree` use `RBMap` insteads `HashMap`
2023-07-21 17:15:42 +02:00
Yuri Sizov 15c0e40375 Merge pull request #79546 from Sauermann/fix-input-handled-physics
Separate input-handled-state for different events during physics-picking
2023-07-21 17:15:36 +02:00
Yuri Sizov de0f7935dd Merge pull request #79524 from aaronfranke/gds-test-inst-placeholder
Change GDScript tests to use InstancePlaceholder as the example abstract class
2023-07-21 17:15:32 +02:00
Yuri Sizov 4d42d6fdf6 Merge pull request #78706 from RedworkDE/node-rename-inplace
Allow renaming child nodes in `_ready`
2023-07-21 17:15:26 +02:00
Yuri Sizov ac0204b201 Merge pull request #78328 from groud/tilemap_layers_as_another_class
Move TileMap layers to their own class
2023-07-21 17:15:18 +02:00
kleonc f12164d311 Fix CanvasModulate logic for updating canvas modulate 2023-07-21 15:33:36 +02:00
smix8 81930c6719 Remove unused struct from NavigationMesh
Removes unused struct from NavigationMesh.
2023-07-20 18:16:32 +02:00
Gilles Roudière d6379e9a93 Move TileMap layers to their own class 2023-07-20 17:23:38 +02:00
Ninni Pipping 2284689b0e Fix incorrect virtual function in `VideoStream.set_paused` 2023-07-20 15:55:18 +02:00
398utubzyt aac2dfc1b4 Snap CharFX transforms to pixels when enabled 2023-07-20 06:01:08 -07:00
Yuri Roubinski 01101134f4 Make the dragging connections more user-friendly in visual shaders 2023-07-20 15:00:19 +03:00
unknown cfe98c57b9 Add drag and drop option for line edit and rich text label 2023-07-19 22:18:34 -04:00
Markus Sauermann b408b05d7d Fix physics passive hovering for some cases
When the parent `SubViewportContainer` ignores mouse with
`MOUSE_FILTER_IGNORE` and also when the mouse is over a `Control`-node,
then the `SubViewport` shouldn't create mouse-move-events for passive
hovering.
2023-07-19 19:25:04 +02:00
kleonc 95809e58d5 Fix arg count checks in SceneDebugger 2023-07-19 18:13:15 +02:00
NL a77d8b3eb5 Check FLAG_POPUP to close an AcceptDialog when parent is focused 2023-07-19 16:06:02 +02:00
Adam Scott deb45c0cab
Fix Camera2D crash when edited scene root is null 2023-07-18 20:36:40 -04:00
Hugo Locurcio 4198fc9827
Fix corner radius not scaling with theme scale in the default theme
This also uses rounding consistently for scale multipliers, so that
behavior is more predictable with non-integer scale factors like `1.25`
and `1.5`.
2023-07-19 00:00:40 +02:00
Yuri Sizov e8aa8c17d2
Merge pull request #79574 from bruvzg/win_nat_d
[Windows] Implement native file selection dialog support.
2023-07-18 19:04:40 +02:00
HolonProduction 89c39c7f9d Fix crash when deleting terrains 2023-07-18 17:52:32 +02:00
bruvzg d3ca91ad6a [Windows] Implement native file selection dialog support. 2023-07-18 17:23:58 +03:00
Yuri Sizov 182b94c86a Merge pull request #79465 from smix8/navregion_bake_deferred_4.x
Make NavigationRegion3D baking NavMesh on the main thread not finish deferred
2023-07-18 13:15:15 +02:00
Silc Lizard (Tokage) Renew a3cdacdc4e Make AnimationNodeBlendTree use RBMap insteads HashMap 2023-07-18 17:57:53 +09:00
Markus Sauermann e6386bc843 Make `SubViewportContainer` event propagation aware of focused Control
Propagate `InputEvents` without position either
- during the Input-stage, when it has focus or
- during the Unhandled-Input-stage, otherwise

This makes sure that Gui-Input happens in the correct order.

Move "Unhandled key Input" handling before "Unhandled Input" handling,
so that Unicode input with Alt / Ctrl modifiers are sent to the nodes
in the correct order.

Change the default focus mode of `SubViewportContainer` from
`FOCUS_NONE` to `FOCUS_CLICK`, to automatically remove focus from
other `Control`-nodes, when clicking inside a `SubViewport`.
2023-07-17 22:38:35 +02:00
kobewi de4a3fa151 Unify and streamline connecting to Resource changes 2023-07-17 19:35:57 +02:00
Yuri Sizov 5954c58ee1
Merge pull request #79494 from timothyqiu/no-longer
Update OptionButton min size when disabling Fit to Longest Item
2023-07-17 19:12:03 +02:00
Yuri Sizov 38ccab2ab3
Merge pull request #79138 from aaronfranke/camera-exposure-range-hint
Change property hint range for camera attributes exposure multiplier
2023-07-17 17:17:16 +02:00
Hendrik Brucker a29a680920 Extract StyleBoxFlat, StyleBoxTexture and StyleBoxLine in their own file 2023-07-17 13:25:00 +02:00
Hugo Locurcio a39190a18f
Allow using floating-point bone sizes and outline widths in the 2D editor
This is useful when animating pixel art sprites in the 2D editor,
as a value of `1` is often too large when zoomed in.
2023-07-17 12:44:09 +02:00
Markus Sauermann 95d294b97a Separate input-handled-state for different events during physics-picking
Currently the input-handled-state for different events can interfere with
each other.
This PR makes sure, that the input_handled_state is reset before
processing and InputEvent during physics-picking.
2023-07-16 14:36:18 +02:00
Aaron Franke 6a8a9cd279
Change GDScript tests to use InstancePlaceholder as the example abstract 2023-07-15 18:28:08 -05:00
Haoyu Qiu 5384c1a579 Update OptionButton min size when disabling Fit to Longest Item 2023-07-15 11:10:23 +08:00
Yuri Sizov a7583881af Merge pull request #68460 from Geometror/split_texture_src
Extract and reorganize texture resource classes
2023-07-14 21:28:06 +02:00