Age | Commit message (Collapse) | Author |
|
Those were used in a very few places to detect whether iteration should
be stopped or not, but one can use `BKE_lib_query_foreachid_iter_stop`
now for that.
Also fix early break handling in embedded IDs processing.
Fix T90922: Fix return policy inconsistency in `scene_foreach_id`.
|
|
In case `library_foreach_ID_link` would return early in recursive
process, it would not properly free its utils data.
Also add proper iteration break in case some sub-calls requested it.
Finally, make this function return a boolean to know whether iteration
should be stopped or not (will be used in future commit to fix this
handling in embedded IDs case).
Part of T90922: Fix return policy inconsistency in `scene_foreach_id`.
|
|
The new `BKE_LIB_FOREACHID_PROCESS_FUNCTION_CALL` execute the given
statement and then check status of `LibraryForeachIDData` data, and
return in case stop of iteration is requested.
This is very similar to the other `BKE_LIB_FOREACHID_PROCESS_` existing
macros, and allows us to properly break iteration when a sub-function
has requested it.
Part of T90922: Fix return policy inconsistency in `scene_foreach_id`.
|
|
Add a function to check if iteration over ID usages should stop (using
internal `IDWALK_STOP` status flag).
Use it in `BKE_LIB_FOREACHID_PROCESS_` macros, and in
`window_manager_foreach_id` to handle properly the active workspace case
(previous code could skip the call to `BKE_workspace_active_set` in case
iteration over ID usages was stopped by callback on that specific ID
usage).
Part of T90922: Fix return policy inconsistency in `scene_foreach_id`.
|
|
|
|
|
|
Now, if a spreadsheet editor is maximized, it looks for its context in
the unmaximized screen "below".
|
|
Move all usages to new `BKE_libblock_relink_to_newid_new`, and rename
that one to `BKE_libblock_relink_to_newid`.
Fix T91413.
|
|
Calling `remove_unused_references` inside the `modify_geometry_sets` loop
was known to be not entirely reliable before. Now I just moved it out of
the loop which fixes the bug.
|
|
|
|
This fixes one (of possibly multiple) root issues. The collection passed into
the Collection Info node must not contain the current object, because that
would result in a dependency cycle and recursive instancing.
|
|
|
|
This is a better and more general fix for T92511 and T92508 than
the ones that I committed before.
Previously, we tagged caches dirty when first accessing attributes.
This led to incorrect caches when under some circumstances. Now
cache invalidation is part of `OutputAttribute.save()`.
A nice side benefit of this change is that it may make things more
efficient in some cases, because we don't invalidate caches when
they don't have to be invalidated.
Differential Revision: https://developer.blender.org/D13009
|
|
|
|
These can be enabled in the gizmos popover.
|
|
|
|
This is consistent with saving the preferences.
Ref D12896
|
|
Calling this 'fast' no longer made sense as the slower code-path
has been removed.
|
|
|
|
|
|
Simplification of BLF glyph loading
See D13026 for details.
Differential Revision: https://developer.blender.org/D13026
Reviewed by Campbell Barton
|
|
Simplification of BLF Kerning
See D13015 for more details.
Differential Revision: https://developer.blender.org/D13015
Reviewed by Campbell Barton
|
|
|
|
In this case, the uniform index sampling loop would fail to assign any
data to the samples, so fill the rest with the largest value possible,
corresponding to the end of the spline. Animation Nodes has the same
fix for this case.
|
|
|
|
This patch makes `widget_nodesocket` base the size of the drawn
socket icon on the rectangle that’s passed in to allow it to scale
with the rest of the interface.
Differential Revision: https://developer.blender.org/D11734
|
|
|
|
When doing a non portable build of blender, the executable
blender-thumbnailer would be installed in two locations:
/usr/bin/
/usr/
While cleaning up, also make the blender thumbnailer dll optional on
windows to bring the logic in line with what it is on linux and mac.
Reviewed By: Campbell Barton, Ray molenkamp
Differential Revision: http://developer.blender.org/D13014
|
|
|
|
When use Invert option, the weight must be inverted not omitted. This change invert the value if the point had assigned weight to get the right result.
|
|
The logic should be: show material mask panel if in_front is on,
it was inverted unintentionally.
|
|
This fixes unintentional line art error when custom camera doesn't
exist, now not adding custom camera relation in this case.
|
|
|
|
Remapping code could call collection resync code while processing
remapping, which is a good way to crash by accessing no-more-valid
pointers.
Similar issue as with liboverrides resync, fixed the same way by
preventing any collection resync until whole remapping has been done.
This was probably not an issue in practice in current code, since this
is only used by append code currently, which should not affect
layers/collections in current scene yet.
|
|
|
|
`CTX_data_selected_objects()` returns a `ListBase` of
`CollectionPointerLink`, not `PointerRNA`. This caused an alignment
issue, resulting in `owner_id == NULL` reported in T92507. Correcting
the pointer type fixed this.
In the end, the same pointer is used as before this commit, but the way
it is obtained is actually correct.
|
|
The logic should be: show material mask panel if in_front is on,
it was inverted unintentionally.
|
|
This fixes unintentional line art error when custom camera doesn't
exist, now not adding custom camera relation in this case.
|
|
|
|
|
|
|
|
Only regions with gizmos were checking for fallback tools.
|
|
|
|
Expose select & strip menus and shortcuts for sequencer preview.
|
|
|
|
Regression in 2bcf93bbbeb9e32f680c37a1e0054ff16cb00ef0.
|
|
|
|
The callers of `ED_view3d_cursor_snap_active` that must handle the snapping of the cursor.
Forcing release at the end can hide leaks.
|
|
Missed in rB32cc9ff03746
|
|
`free_tooltip` is no longer needed.
|