Commit Graph

14179 Commits

Author SHA1 Message Date
bruvzg 6d17fc1f73
[RTL] Connect image update signals. 2024-01-26 12:18:24 +02:00
Yuri Sizov 68d5043e88 Merge pull request #87541 from clayjohn/TextureRD-property
Avoid saving the texture_rd_rid property of TextureRD resources
2024-01-25 16:27:17 +01:00
Yuri Sizov 91ac53ec1b Merge pull request #87385 from Sauermann/fix-subviewport-physics-picking
Fix SubViewport physics picking
2024-01-25 16:27:02 +01:00
Yuri Sizov 672b034076 Merge pull request #87303 from bruvzg/fd_options_no_editor
[Native File Dialog] Add support for adding custom options to the dialogs (w/o editor changes).
2024-01-25 16:26:58 +01:00
ACB 9d0302d708 Make CharacterBody properties public 2024-01-25 10:31:16 +01:00
jsjtxietian ff089f8cea Check is the ref shader valid in visual shader's update_option_menu 2024-01-25 11:54:23 +08:00
clayjohn efb1cbaad4 Add GLES3 infrastructure for lightmap baking in the compatibility backend 2024-01-24 17:13:30 -08:00
Álex Román Núñez c892582779 Replace internal usage of ImageTexture in VideoStreamPlayer for Texture2D 2024-01-24 23:44:46 +01:00
clayjohn c6316bff65 Avoid saving the texture_rd_rid property of TextureRD resources
RIDs do not persist between runs, so they should not be saved
2024-01-24 10:34:51 -08:00
Emmanouil Papadeas e864b26e54 Fix `MenuBar` hover position scaling properly with the scale factor multiplier 2024-01-24 15:22:16 +02:00
Yuri Sizov 9c9a00f3a8 Merge pull request #87432 from Rindbee/fix-set_global_position-in-control
Fix issue where `set_global_position(global_position)` in `Control` resulted in a different result than `global_position`
2024-01-24 14:08:40 +01:00
Yuri Sizov a32a2eaedc Merge pull request #87417 from AThousandShips/tree_clear
Use callable for `TreeItem` custom draw
2024-01-24 14:08:36 +01:00
Yuri Sizov d454fccdb3 Merge pull request #87395 from mrcdk/popupmenu_get_state
Expose `PopupMenu` `get_item_multistate()` and `set/get_item_multistate_max()`
2024-01-24 14:08:32 +01:00
Yuri Sizov adcfe3d1a0 Merge pull request #87252 from ajreckof/Fix-renaming-a-node-to-the-name-of-its-siblings-breaking-NodePath
Fix renaming a node to the name of its siblings breaking NodePath
2024-01-24 14:08:20 +01:00
Yuri Sizov 54deaafef6 Merge pull request #85660 from Maran23/theme-basic
Mark `gui/theme/custom` and `gui/theme/custom_font` as basic properties
2024-01-24 14:07:58 +01:00
Yuri Sizov 2ce450f8bc Merge pull request #84894 from clayjohn/tangent-error-message
Store ArrayMesh path in RenderingServer for use in error messages
2024-01-24 14:07:47 +01:00
bruvzg a8f521bcad
[Native File Dialog] Add support for adding custom options to the dialogs.
Add support for adding custom options (checkboxes and optionboxes) to the dialogs (both native and built-in).
2024-01-24 15:00:31 +02:00
Mikael Hermansson a3f07ad858 Fix error when pinning soft body point without attachment 2024-01-23 16:37:48 +01:00
A Thousand Ships 257d03681c
Use callable for `TreeItem` custom draw
Deprecating old functionality
2024-01-23 12:07:43 +01:00
Yuri Sizov a07df648ec Merge pull request #87474 from Rindbee/fix-forgetting-h_separation-when-internal_elements-exist
Fix forgetting `h_separation` when internal elements exist
2024-01-22 20:39:36 +01:00
Yuri Sizov fc25ff021a Merge pull request #87415 from AThousandShips/tree_font
Redraw `TreeItem` on more changes
2024-01-22 20:39:29 +01:00
Yuri Sizov 36f5050c34 Merge pull request #87050 from nikitalita/convert-3.x-skeletons
Skeleton3D: Convert 3.x skeletons
2024-01-22 20:38:51 +01:00
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