Blender forbids property changes in .draw() methods. But they weren't
caught after a call to .template_list() with a custom list type.
Support nested calls that disallow writes.
This was really missing there (some COW tags behavior was also
documented in some code using them, like in `sound.c`, but not in their
definition).
Ref. T88555.
Change the dylib folder relative to `Blender` executable to be
the same as before rB652fbc200500497a67bd11d18b786587ba34e3d9 and same
as bpy.so : `@loader_path/../Resources/${BLENDER_VERSION}/lib`
The crash occurred calling because mesh_get_eval_final in edit-mode
freed all derived mesh data without tagging the object for updating.
However meshes in edit-mode weren't meant to be used as knife-project
source-data, adding support for multi object edit-mode caused this.
This makes texture sockets have a label by default. This can be changed
by adding the SOCK_HIDE_LABEL flag to the socket. With this change the
switch node now shows the labels "True" and "False" like for the other
types of sockets.
To be consistent with the image editors and 3D viewport
the cursor location can be changed from the sidebar.
This was missing from the clip editor, but support has been added in this commit.
Previously, the only way to precisely set the cursor was
to call the set cursor operator then use the redo panel to adjust the value.
The 2D cursor should be visible in both mask and uv edit modes.
This was likely and oversight when splitting the image editor
into the UV and Image editors
Pass `FileListReadJob` to the `read_job_fn` callback, instead of exploding
the struct into its individual fields, passing those as parameters, and
marking a bunch of those as unused again.
No functional changes.
Caused by fix for T90256 and a misunderstanding in D11928.
Don't skip tagging edges when the auto-smooth angle is 180 degrees
since this skips topology checks which are needed for properly
calculating edge loop normals.
`bpy.ops.font.text_insert(text="multiple characters")` wasn't working.
When the text is selected does not correctly insert multiple characters.
- When the text was selected from left to right,
the cursor only move one position next to the selected text.
- When the text is selected from right to left,
a part of the selected text remain.
Ref D12161
Fix poll_message_set API documentation to consistent with Python style
Reviewed By: Blendify
Differential Revision: https://developer.blender.org/D12150
The library has some modifications and it has been included in a diff.
Reviewed By: campbellbarton
Differential Revision: https://developer.blender.org/D12142
(Some minor changes done in the patch)
In the `FileList` struct, rename the `AssetLibraryReference
*asset_library` field to `asset_library_ref` -- it's a description of
which asset library is used, and not the asset library itself.
This is to make space for a future `AssetLibrary *asset_library` field,
which will point to an actual asset library struct/class.
No functional changes.
Reviewed by: Severin
Differential Revision: https://developer.blender.org/D12151
This corrects code that's currently disabled, see `USE_NURBS` define.
The name passed to `BKE_curve_add` was overwritten,
bypassing uniqueness and utf8 encoding checks.
Longer names would cause a buffer overrun as the length of the source
data was passed to `BLI_strncpy` instead of the destination.
Reviewed By: sybren
Ref D12125
This caused Cycles texture_space_mesh_modifier and panorama_dicing tests to
randomly fail.
The issue was introduced with D11377, due to a missing dependency. Now ensure
we first copy the texture space parameters, and only then use or recompute then.
In general it seems like this dependency should have already been there, since
parameter evaluation includes animation and drivers, and geometry evaluation
may depend on that (even if you would not typically animate e.g. an autosmooth
angle).
Thanks Campbell for tracking this one down.
Although the relevant structs (wmXrRuntime/XrActionMap/
XrActionMapItem) are zero-allocated, the selected and active action
map indices need to be initialized to -1 to prevent potential
out-of-bounds list access.
Just like the "Select by Material" node, this node outputs a
boolean attribute for control points that have a matching handle
type. By default left and right handles are considered, but it's
possible to only check one side with the toggle in the node.
Differential Revision: https://developer.blender.org/D12135
Some mesh primitives created using geometry nodes use loops to create
vertices and accumulates positions/angles in FP variables. This allows
rounding errors to accumulate and can introduce significant errors.
To minimize changes from original implementation, variables allowing
errors to accumulate are replaced by: delta * index. Affected Mesh
Primitives nodes are Line, Grid, Cylinder, Circle, Cone, and UV-Sphere.
Differential Revision: https://developer.blender.org/D12136
Assigning a mesh seems to do its own parameter copying, which
means we need to manual copy its vertex groups here, which was
just overlooked in rB3b6ee8cee708.
Differential Revision: https://developer.blender.org/D12110