When reloading C# classes and keep their properties values they are
retrieved and stored in a state list.
Retrieving the properties was only getting the fields of the C# class
and not inherited fields so those properties values were lost on reload.
Now we also try to find the field in the parent classes.
Resolves godotengine/godot-proposals#106.
Adds the following property menu options with default bindings:
- Copy Property (ctrl+c)
- Paste Property (ctrl+v)
- Copy Property Path (ctrl+shift+c)
If you hover over a property label in the inspector dock, you can copy
either the property value or the property path to the system clipboard
using the shortcuts above This is especially useful for the
`AnimationTree`, where code might reference properties like
"parameters/state/aim/move/blend_position".
One issue is that if you click a property, then click on the node you
currently have selected in the node tree, then press ctrl+shift+c, it
will still copy the selected property path rather than the node path. If
you click on a different node in the nodetree, however, ctrl+shift+c
will return to copying the nodepath.
The property value copy/paste was implemented by KoBeWi at #39398 and
merged into this PR due to their similarity.
Backport of 0205fffbf3 from master.
Blend shapes did not take into account octahedral compressed vertex
attribute layouts and this resulted in incorrect lighting on the
resulting blended mesh
Now make the blend_shapes shader octahedral compression aware!
Confusingly, these two properties had identical descriptions even though they measure different things.
"relative_index" measures character count from the custom effect's bbcode opening tag.
"absolute_index" measures character count from the start of the bbcode text that includes the custom effect.
See the code author's own explanation here: https://github.com/godotengine/godot/pull/23658
NOTE: Doco for CharFXTransform.xml has changed significantly in 4.0, where terminology has changed to "glyph". Therefore, proposing this change for 3.x branch only.
Swap the first lines of the descriptions for set_cell and set_cellv to correctly describe which accepts x and y as separate arguments and which accepts a Vector2.
Fix not relevant to master branch due to changes to TileMap.
This is the new base branch for the classref translations to prepare them
for the 3.5 release.
This means that the 3.4 class ref translations will likely no longer get
updates, as we can't easily maintain two slightly different branches on
Weblate.
It's useful context for translators but it generates very spammy diffs whenever
a line is added or removed, changing the comments for hundreds or thousands of
msgids needlessly.
We still have the file names so it's relatively easy to search in file to find
the location of the source string.
(cherry picked from commit dbfe36728e)
A summary of the tweaked descriptions:
* "get_camera_position()" is explains what the camera position is, and mitigates the confusion between this method and Node2D.position;
* "get_camera_screen_center()" links to the "get_camera_position" method;
* "reset_smoothing()" links to the "smoothing_enabled" propriety;
* "drag_horizontal_offset" and "drag_vertical_offset" link to their respective _enabled_ properties;
* "limit_smoothed" links to the "smoothing_enabled" propriety;
* "rotating" clarifies that the camera _view_ rotates when enabled.
Partially closes https://github.com/godotengine/godot-docs/issues/5417, as some of the issues described are no longer present in 4.0, or are not fully solved in this PR.
Further tweaks are welcome, as I'm afraid this could be a too verbose. A few of these could be split into their PR if necessary.
(cherry picked from commit 6cf2623a20)
Many assets include links in the description.
This change enables selection for the links,
and other information such as version numbers,
to be copied/pasted.
(cherry picked from commit 814a4ee434)
Remove upstreamed patches.
Re-apply padlock and uwp patches.
NOTE: We could replace our padloack patch with mbedtls 3452.
(cherry picked from commit 36d316876b)
When folders are moved/removed from the file system, the `.csproj`
may need to be edited to update the path of C# scripts or remove them.
If a C# solution has not been created, the `.csproj` file does not exist
and therefore there is no need to edit it.