Commit graph

14156 commits

Author SHA1 Message Date
Yuri Sizov
0eb11e52ea Merge pull request #86221 from TokageItLab/fix-blend-left
Make default `blend_left` consider current blend amount
2024-01-22 20:38:42 +01:00
Yuri Sizov
e95456b7f3 Merge pull request #86073 from m4rr5/add_reflection_mask
Add a reflection mask to the reflection probes
2024-01-22 20:38:37 +01:00
Yuri Sizov
feb1157276 Merge pull request #83510 from Geometror/vs-connection-ops
Add connection related functionality to VisualShader (deleting, dropping/inserting a node)
2024-01-22 20:38:30 +01:00
Yuri Sizov
e0f8cf4acb Merge pull request #77730 from Jummit/fix-subviewport-1
Fix `push_input` events not going through after first pressed mouse event
2024-01-22 20:38:22 +01:00
mrcdk
c9bdccf7f2 Expose PopupMenu get_item_multistate(), get_item_multistate_max() and set_item_multistate_max() 2024-01-22 20:07:19 +01:00
风青山
0c6b6fe749 Fix issue where set_global_position(global_position) in Control resulted in a different result than global_position
Previously, the case where the pivot point was not at the origin was ignored.
2024-01-23 00:05:11 +08:00
风青山
567e76f935 Fix forgetting h_separation when internal elements exist 2024-01-22 22:20:01 +08:00
A Thousand Ships
552594ffdc
Redraw TreeItem on more changes
* Custom font changes
* Custom draw changes
* Custom as button
2024-01-22 13:51:20 +01:00
jsjtxietian
3c596094ab Fix pass int to tween's from with float property will be forced to interpolate as int 2024-01-22 10:47:52 +08:00
Marcel Offermans
25f573ca63 Add a reflection mask to the reflection probes.
Co-authored-by: Bastiaan Olij <mux213@gmail.com>
2024-01-20 08:07:31 +01:00
nikitalita
bcad569ed9 Skeleton3D: Convert 3.x skeletons 2024-01-19 17:43:09 -08:00
Markus Sauermann
7b00c136a1 Fix SubViewport physics picking
Apply the logic of `handle_input_locally` for physics picking.
2024-01-19 21:42:41 +01:00
Hendrik Brucker
f59419bfe0 Add connection-related VisualShader operations
- Insert a node in a connection
- Drop an unconnected node on a connection to insert it
- Delete a connection
2024-01-19 11:38:59 +01:00
Yuri Sizov
66b0bd9203 Merge pull request #86158 from Geometror/ge-connection-rework
Rework `GraphEdit` connections (drawing, API, optimizations)
2024-01-18 19:26:56 +01:00
Yuri Sizov
bc88d771e6 Merge pull request #64351 from Rindbee/fix-button-draw
Make the drawing logic clearer in `Button`
2024-01-18 19:26:48 +01:00
Hendrik Brucker
9d7c2978f4 Rework GraphEdit connections (drawing, API, optimizations)
- GraphEdit now uses Line2D nodes to draw connection lines and uses a dedicated canvas item shader for them
2024-01-18 16:53:15 +01:00
Rindbee
f29a7d302e Make the drawing logic clearer in Button
The drawing logic follows the calculation logic in `Button::get_minimum_size`.

According to the order of `stylebox`, `icon`, and `text`, and follow properties
such as alignment mode, to fill the display space of the button.

Add a `Button::_set_h_separation_is_valid_when_no_text` for Button derived
classes (like `OptionButton`) that expects a `h_separation` between `icon`
and theme icon even if the `text` is empty.
2024-01-18 22:57:22 +08:00
Gilles Roudière
9dfc012369 Remove unecessary _set_global_invalid added by mistake 2024-01-18 10:48:23 +01:00
Rémi Verschelde
8f9c815ddb
Merge pull request #87061 from KoBeWi/shadow_of_the_former_self
Add AudioStreamPlayerInternal to unify stream players
2024-01-18 09:34:42 +01:00
Rémi Verschelde
fa81059b9d
Merge pull request #85939 from adamscott/single-threaded-godot-4
Add `THREADS_ENABLED` macro in order to compile Godot to run on the main thread
2024-01-18 09:33:52 +01:00
Adam Scott
bd70b8e1f6
Add THREADS_ENABLED macro in order to compile Godot to run on the main thread 2024-01-17 13:58:29 -05:00
Yuri Sizov
788aab3a96 Merge pull request #87115 from groud/tilemap_layers_as_nodes
Make TileMapLayers extend Node2D and work as children of TileMap
2024-01-17 18:53:12 +01:00
Yuri Sizov
0724506cdd Merge pull request #86841 from groud/fix_global_transform_in_enter_tree
Fixes global transform being wrong on entering tree
2024-01-17 18:52:59 +01:00
Yuri Sizov
28cf7fe2f6 Merge pull request #85384 from HolonProduction/unique-name-completion
Suggest scene unique nodes in `get_node` autocompletion
2024-01-17 18:52:31 +01:00
Yuri Sizov
2e1f4f4a9d Merge pull request #84610 from jsjtxietian/update-gizmo-right-after-assign
Fix CollisionObject3D Gizmo not updated after calling `shape_owner_*` functions
2024-01-17 18:52:26 +01:00
Gilles Roudière
48bed5050b Make TileMapLayers extend Node2D and work as children of TileMap 2024-01-17 16:05:50 +01:00
kobewi
0c7db3cdad Add AudioStreamPlayerInternal to unify stream players 2024-01-17 13:12:02 +01:00
jsjtxietian
80a488a242 Fix CollisionObject3D Gizmo not updated after calling shape_owner_* functions 2024-01-17 10:43:16 +08:00
Gilles Roudière
0a726d692a Fixes global transform being wrong on entering tree 2024-01-16 16:02:37 +01:00
ajreckof
2f697926b0 Fix renaming a node to the name of its siblings breaking NodePath
Also fix cases where node name was not visually updated because name was not changed

Co-Authored-By: Nông Văn Tình <53887662+nongvantinh@users.noreply.github.com>
2024-01-16 15:18:30 +01:00
Rémi Verschelde
04eafd557f
Merge pull request #87249 from bruvzg/macos_menu_clear
[macOS] Do not unbind PopupMenu from global menu on `clear` call.
2024-01-16 15:07:47 +01:00
Rémi Verschelde
0f4bc9c085
Merge pull request #84312 from nickyfoo/fix-remove-paragraph-crash
[RichTextLabel] Fix `remove_paragraph` crash by popping current
2024-01-16 15:07:33 +01:00
bruvzg
5a61fecd0e
[macOS] Do not unbind PopupMenu from global menu on clear call. 2024-01-16 15:33:14 +02:00
Nicholas Foo
c0f8e0061d
Fix RichTextLabel.remove_paragraph crash by popping current 2024-01-16 13:52:19 +02:00
Yuri Sizov
95b27fe8c7 Reorganize code related to editor theming
This change introduces a new EditorThemeManager class
to abstract theme generatio and its subroutines.

Logic related to EditorTheme, EditorColorMap, and editor
icons has been extracted into their respective files with
includes cleaned up.

All related files have been moved to a separate folder to
better scope them in the project. This includes relevant
generated files as well.
2024-01-16 11:57:45 +01:00
Rémi Verschelde
3df0c5be6a
Merge pull request #86473 from reduz/audio-playback-parameters
Implement audio stream playback parameters.
2024-01-16 10:35:36 +01:00
Rémi Verschelde
039379d272
Merge pull request #84193 from kitbdev/dock-manager-extract
Extract `EditorDockManager` from `EditorNode`
2024-01-16 10:35:11 +01:00
Juan Linietsky
a40fe16866 Implement audio stream playback parameters.
Implements a way for audio stream playback to be configured via parameters
directly in the edited AudioStreamPlayer[2D/3D].

Currently, configuring the playback stream is not possible (or is sometimes hacky
as the user has to obtain the currently played stream, which is not always immediately available).

This PR only implements this new feature to control looping in stream playback instances (a commonly requested feature, which was lost in the transition from Godot 2 to Godot 3).
But the idea is that it can do a lot more:

* If effects are bundled to the stream, control per playback instance parameters such as cutoff or resoance, or any other exposed effect parameter per playback instance.
* For the upcoming interactive music PR (#64488), this exposes an easy way to change the active clip, which was not possible before.
* For the upcoming parametrizable audio support (https://github.com/godotengine/godot-proposals/issues/3394) this allows editing and animating audio graph parameters.

In any case, this PR is required to complete #64488.

Update modules/vorbis/audio_stream_ogg_vorbis.h

Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>

Update modules/minimp3/audio_stream_mp3.h

Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>

Update modules/minimp3/audio_stream_mp3.h

Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>

Update modules/vorbis/audio_stream_ogg_vorbis.h

Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>

Update doc/classes/AudioStream.xml

Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>
2024-01-16 10:31:52 +01:00
kit
2323f040e9 Extract editor dock manager 2024-01-15 15:15:42 -05:00
Rémi Verschelde
fe76b61743
Merge pull request #87160 from kleonc/tilemap-fix-debug-drawing-truncations-to-ints
Fix some `TileMap` debug drawing truncating to ints
2024-01-15 13:31:04 +01:00
Rémi Verschelde
3482da422d
Merge pull request #87012 from TheSofox/line-edit-undo-caret-fix
Fix `LineEdit` caret rendering/positioning on Undo.
2024-01-15 13:27:02 +01:00
Rémi Verschelde
03767fbf3b
Merge pull request #86446 from reduz/transient-to-focused
Implement a `transient_to_focused` Window mode
2024-01-15 13:25:00 +01:00
Rémi Verschelde
c1da69d8f2
Merge pull request #86141 from Maran23/popup-hover-height-calc
Fix Popup hover and height calculation are off by some pixels
2024-01-15 13:23:42 +01:00
Rémi Verschelde
ebc30b93ac
Merge pull request #84465 from KeyboardDanni/deferred_camera
Fix Camera2D frame delay (port from 3.x)
2024-01-15 13:22:28 +01:00
Juan Linietsky
15144c24bd Implement a transient_to_focused mode
This intends to be the correct way to handle non-child windows becoming covered by the current window when becoming focused.
Enabling this property on select windows, they will become transient to the currently focused one when becoming visible.

This deprecates the "unparent_when_invisible" function introduced by #76025.
2024-01-14 18:51:44 +01:00
kleonc
baa5504700 Fix some TileMap debug drawing truncating to ints 2024-01-14 02:02:46 +01:00
Jakub Marcowski
06534f8ad5 Add deprecation notice to a duplicate method of class Window 2024-01-12 18:18:28 +01:00
Rémi Verschelde
1b25b4ca5f
Merge pull request #83397 from thiagola92/readability_skeleton_2d_calculate_length_and_rotation
Refactor function `calculate_length_and_rotation()` from Skeleton2D
2024-01-11 20:44:26 +01:00
Rémi Verschelde
cab27498bd
Merge pull request #86957 from RandomShaper/mt_mends
A couple of enhancements to user-visible threading semantics
2024-01-11 17:40:37 +01:00
Rémi Verschelde
79791a3855
Merge pull request #86931 from LeoBelda/fix-create-prism-mesh-division-by-zero
Prevent division by 0 when creating vertices of a PrismMesh
2024-01-11 17:40:12 +01:00
Rémi Verschelde
087a397477
Merge pull request #86301 from KoBeWi/deferred_cleanup
Update deferred calls to use Callables
2024-01-11 17:36:29 +01:00
thiagola92
6a05825b24 Refactor function calculate_length_and_rotation() from Skeleton2D 2024-01-11 13:35:28 -03:00
Rémi Verschelde
f3fc35eb17
Merge pull request #81506 from twobitadder/reparent_keep_owner
Fix `reparent()` losing owner
2024-01-11 17:34:19 +01:00
Leo Belda
83992fd7bd Fix PrismMesh::_create_mesh_array division by 0 2024-01-10 23:01:43 +01:00
Rémi Verschelde
365755fb34
Merge pull request #84946 from DarkMessiah/default-theme-checkbox-disabled-state
Use disabled icons for CheckBox in DefaultTheme
2024-01-10 12:03:12 +01:00
Sofox
6888d957dc Fix LineEdit caret rendering/positioning on Undo. 2024-01-09 17:14:55 +00:00
kobewi
0e8f90f4c8 Update deferred calls to use Callables 2024-01-09 16:11:47 +01:00
Rémi Verschelde
1d3f98ac6a
Merge pull request #86894 from jsjtxietian/merge-dafault-font
In `merge_with` also merge some default fields of theme
2024-01-09 11:29:52 +01:00
Rémi Verschelde
4181027596
Merge pull request #84442 from Calinou/colorpicker-allow-more-hex-codes
Allow additional hexadecimal color codes in ColorPicker
2024-01-09 11:27:14 +01:00
Silc Lizard (Tokage) Renew
f8da9460c1 Make default blend_left consider current blend amount 2024-01-09 05:07:27 +09:00
Hugo Locurcio
80a770a8ed
Allow additional hexadecimal color codes in ColorPicker
The following formats are now accepted (leading `#` is optional):

- `#1` -> `#111111`
- `#12` -> `#121212`
- `#12345` -> `#11223344` (`5` at the end is discarded)
- `#1234567` -> `#123456` (`7` at the end is discarded)
2024-01-08 20:51:45 +01:00
Rémi Verschelde
84e205b5a1
Merge pull request #86950 from jsjtxietian/fix-compress-image-error
Fix wrong fail condition in compressed texture's `_set_data`
2024-01-08 14:53:43 +01:00
Rémi Verschelde
d8dc554241
Merge pull request #86847 from kleonc/tilemap-make-quadrant-canvas-item-position-local
Fix `TileMap` quadrant canvas item position not being local
2024-01-08 14:52:54 +01:00
Rémi Verschelde
a7e347482b
Merge pull request #86687 from TokageItLab/AnimationMixer-remove-object-pointer
Fix TrackCache conflict when tracks have same name but different type
2024-01-08 14:52:30 +01:00
Rémi Verschelde
129332e3b9
Merge pull request #82468 from kitbdev/tabcontainer-bottom
Option to put TabContainer tabs at bottom
2024-01-08 14:51:37 +01:00
kleonc
3c25274870 Fix TileMap quadrant canvas item position not being local 2024-01-08 14:20:16 +01:00
Silc Lizard (Tokage) Renew
a51958a2a0 Remove Object pointer/solve types conflict in AnimationTrackCache
Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2024-01-08 21:48:19 +09:00
Rémi Verschelde
4ca33d318b
Merge pull request #86908 from AdSkipper1337/collision-object-2d-gdextension-virtuals
Fix virtual calls for GDExtension in `CollisionObject2D`
2024-01-08 12:01:31 +01:00
Rémi Verschelde
c9ef2fdb0b
Merge pull request #86891 from Mickeon/autocompletion-get-node-or-null
Add autocompletion to `get_node_or_null`
2024-01-08 12:00:19 +01:00
Rémi Verschelde
6226388bac
Merge pull request #86874 from AThousandShips/no_3d_fix
Fix some build errors with `disable_3d=yes`
2024-01-08 11:59:31 +01:00
Rémi Verschelde
c7fb7273c5
Merge pull request #86811 from TheSofox/light2d-blend-3to4
Added compatibility for Blend Mode in `Light2D`/`PointLight2D` when converting from Godot 3 to 4.
2024-01-08 11:57:07 +01:00
Rémi Verschelde
665c3edee2
Merge pull request #86557 from kleonc/polygon2d-with-skeleton-transform-fix
Fix Polygon2D to Skeleton2D transform calculation
2024-01-08 11:55:06 +01:00
Rémi Verschelde
97607b6ab3
Merge pull request #86474 from KoBeWi/particular_velocity
Only update particle velocity when it changes
2024-01-08 11:53:53 +01:00
Rémi Verschelde
48b726deba
Merge pull request #86417 from LimestaX/tscn-escape-char-fix
Ensure special characters are escaped in TSCN connections and editable hint
2024-01-08 11:53:28 +01:00
Rémi Verschelde
26ae551108
Merge pull request #85870 from dsnopek/collision-object-3d-gdextension-virtuals
Fix overriding `CollisionObject3D::_mouse_enter()` and `_mouse_exit()` from GDExtension
2024-01-08 11:51:52 +01:00
Rémi Verschelde
81f618d63a
Merge pull request #85180 from AThousandShips/self_list_fix
[Core] Prevent copying of `SelfList` and `SelfList::List`
2024-01-08 11:51:27 +01:00
Rémi Verschelde
df29fc91ed
Merge pull request #82669 from 4d49/graph-node-slot-custom-icon
Add `set_slot_custom_icon` and `get_slot_custom_icon` to GraphNode
2024-01-08 11:49:46 +01:00
Rémi Verschelde
91dacb469d
Merge pull request #51156 from Muller-Castro/value2ref
Add const lvalue ref to container parameters
2024-01-08 11:48:34 +01:00
LimestaX
0a32c160ac
Ensure special characters are escaped in tscn connections and editable hint 2024-01-08 11:42:30 +01:00
Pedro J. Estébanez
631d1e3a86 Let read thread guards allow access to out-of-tree nodes 2024-01-08 10:33:09 +01:00
Mansur Isaev
631d722674
Add set_slot_custom_icon and get_slot_custom_icon to GraphNode 2024-01-08 08:30:10 +01:00
jsjtxietian
6a3b63eb36 Fix wrong fail contion in compressed texture and some clean up 2024-01-08 12:53:18 +08:00
jsjtxietian
6f3568e3db In merge_with also merge some default fileds of theme 2024-01-08 10:41:30 +08:00
Nikolai Davydov
0517000e6f Fix virtual calls for GDExtension in CollisionObject2D for _mouse_enter, _mouse_exit, _mouse_shape_enter, _mouse_shape_exit 2024-01-07 05:30:26 +01:00
A Thousand Ships
904ecb1d36
[Core] Prevent copying of SelfList and SelfList::List
Copying of these types is unsafe and should be detected

Also removed unnecessary constructors for `TileMap` `DebugQuadrant` and
`RenderingQuadrant` which used copying of `SelfList::List`
2024-01-07 00:48:23 +01:00
A Thousand Ships
c6a1ae7875
Fix some build errors with disable_3d=Yes
* Some tests were incorrectly included
* SCU builds with animation
* Animation `switch`
2024-01-07 00:44:33 +01:00
kit
f6a212837b TabContainer bottom position 2024-01-06 15:31:08 -05:00
nklbdev
e72ccc2080 Fix lossless formats in PortableCompressedTexture2D (fix data format storing) 2024-01-06 22:56:25 +05:00
Micky
f996003fb4 Add autocompletion to get_node_or_null 2024-01-06 17:33:32 +01:00
Muller-Castro
96a95cb974 Add const lvalue ref to container parameters 2024-01-05 14:49:57 -03:00
Sofox
58ae3c577c Added compatibility for Blend Mode in Light2D/PointLight2D when converting from Godot 3 to 4 2024-01-05 15:39:47 +00:00
Rémi Verschelde
62616fb14f
Merge pull request #86799 from Mickeon/autocompletion-animationlibrary
Add autocompletion for AnimationLibrary & AnimationMixer's methods
2024-01-05 12:06:21 +01:00
Rémi Verschelde
1e676e4a0a
Merge pull request #85791 from groud/move_tilemap_layers_to_own_file
Move TileMapLayer to its own files
2024-01-05 12:04:18 +01:00
Rémi Verschelde
dc5b57ea44
Merge pull request #81325 from AttackButton/path_2d_editor_plugin-clear_points
Add a button to clear curve points in the Path2D editor
2024-01-05 12:02:41 +01:00
Rémi Verschelde
d1b7c60afc
Merge pull request #77712 from nklbdev/Fix_lossless_formats_in_PortableCompressedTexture2D
Fix lossless formats in PortableCompressedTexture2D
2024-01-05 12:02:14 +01:00
Rémi Verschelde
85e999dc5e
Merge pull request #64908 from marcinn/lightmap-gi-texel-scale
Add `texel_scale` property to LightmapGI
2024-01-05 12:01:49 +01:00
Gilles Roudière
6bc5b3f812 Move TileMapLayer to its own files 2024-01-05 11:58:21 +01:00
Micky
787f61d70b Add autocompletion for AnimationLibrary's & AnimationMixer 2024-01-04 21:11:36 +01:00
nklbdev
47d991678d Fix lossless formats in PortableCompressedTexture2D
Update scene/resources/portable_compressed_texture.cpp

Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2024-01-05 00:11:01 +05:00
Rémi Verschelde
f4059d0e3c
Merge pull request #86576 from bikemurt/no-concave-warnings
Add warning for using concave shape on CharacterBody3D
2024-01-04 16:40:10 +01:00