This is an alternate solution to !146889 to improve labels in the
camera UI, while being much less invasive. It doesn't take custom
labels into account, but it simply uses the parameter names with title
case.
Pull Request: https://projects.blender.org/blender/blender/pulls/148141
When saving asset catalogs to an already-existing file, only perform
that save when there were local changes to the catalogs. This prevents
unnecessary writes to the catalog definition file, as that can cause
conflicts when multiple Blender instances share the same asset library
(either directly or via Syncthing/Dropbox/etc.)
Pull Request: https://projects.blender.org/blender/blender/pulls/148205
Swapchains can be destroyed safely after a new image
is presented in a new swapchain or when all submission
and presentation fences are signaled, this last ones
where missing causing issues with some drivers when
recreating swapchains.
Pull Request: https://projects.blender.org/blender/blender/pulls/147226
This has ripple effects by making the "hide value" setting ineffective and
always hiding socket values as well as graying out the "hide value" node group
option.
Pull Request: https://projects.blender.org/blender/blender/pulls/148188
Follow on from PR #141891. The `MTLAccelerationStructureUsagePreferFastIntersection` flag didn't exist until Xcode 26.0, so we ensure that it is defined for forward-compatibility. The runtime `if (@available(macos 26.0, *))` checks still remain.
Pull Request: https://projects.blender.org/blender/blender/pulls/147561
The bone collection operator was not updated to handle the new flag
which is now on the `bPoseChannel` instead of the `Bone`.
For this to work, the operator now needs the `bArmature` as well as the `Object`
and they need to be in sync. Additional code was added to the poll function
to ensure this is the case.
As a bonus, when working with multiple armatures this now works as expected
where only the bones of the active armature are selected even if the armature is
shared. The active object is determined by the last bone clicked.
Pull Request: https://projects.blender.org/blender/blender/pulls/148185
Instead of always resetting the 'standard' transform, only reset those
array elements that were actually animated (and whose animation has
thus been transfered to the corresponding 'delta' transform).
This approach also has the advantage of using the defaults from RNA,
rather than hard-coding defaults based on the property name.
Pull Request: https://projects.blender.org/blender/blender/pulls/147982
When connecting node sockets, a search menu opens. Its items need to
be added, and translated manually. This commits adds a few missing
items from recent nodes.
It does the same for sockets coming from node group assets.
Reported by Ye Gui in #43295.
Pull Request: https://projects.blender.org/blender/blender/pulls/148079
This PR slightly raises the accepted noise level for the following EEVEE
tests that were likely incorrectly marked as failed on Intel GPUs:
- render_layer: aov_transparency
- light: triangle_light_sampling
- bsdf: metallic_thinfilm_physical, metallic_thinfilm_f82
- principled_bsdf: principled_bsdf_transmission
Brush directions are dynamic, the enum can have different options
depending on brush type. This commit manually extracts the options.
The labels use the "Brush" translation context, to disambiguate
"Deflate", the operation, with the compression algorithm.
Also `smooth_direction_items` is moved inside
`rna_Brush_direction_itemf()`, since it is used only there, same as
the other brush direction items.
Reported by Ye Gui in #43295.
Pull Request: https://projects.blender.org/blender/blender/pulls/148081
When select-sync was used with both edge & face modes enabled,
vertex selection logic was used which resulted in no visible selection.
Now edge selection is used when both edge and face modes are enabled.
Ref !148181
Implement pinned with select-sync (technically not a bug),
more an oversight in !138197.
Some subtle functional changes have been made.
- Select pinned now only works in vertex select mode
since previously it was possible to select vertices in edge/face modes
where the selection wasn't displayed.
- The island selection option is ignored when selecting pinned.
- The select pinned operator wasn't working with select sync edge/face
modes. Exits with an error instead.
Ref !148181
Some less obvious uses of the `Bone.hide` property were missed in the last fix.
Since the property was moved to the pose bone this no longer worked
and has been replaced with `PoseBone.hide`
Pull Request: https://projects.blender.org/blender/blender/pulls/148183
Resolve regression with GNOME-48 & LIBDECOR caused by fix for GNOME-49
(see !148104).
New normal (non-maximized) windows were not refreshing and ignored
cursor input. Workaround the issue be resetting the title.
See code-comments for details.
Ref !148178
PRs #147511 and #147595 ensured that any check for scene strip renders
in the prefetch thread would also recurse into "sequencer-type" scene
strips, but this introduced the potential for an infinite recursion.
Fix by using `SeqRenderState` to detect such a recursion.
Also remove unused `seqbasep` context member in `PrefetchJob`, and
add a check for non-nullptr `Editing`, fixing a crash where the scene was
present without an `Editing` counterpart.
Pull Request: https://projects.blender.org/blender/blender/pulls/147949
Add a simple check to the Marker keymap poll. Since there's no `bContext`
passed to the function we can reconstruct it from the workspace.
We can exit early if there is no sequencer scene (when no markers are
guaranteed). View layer can remain the same since it only applies in the
`SPACE_ACTION` case.
Pull Request: https://projects.blender.org/blender/blender/pulls/147903
It was requested to allow strips inside of meta strips to be used as
masks for modifiers. There is need for mask is to be shared between
multiple strips in multiple meta strips. More discussion is in #146970.
Pull Request: https://projects.blender.org/blender/blender/pulls/148097
`socket.socket_typeinfo()` can be nullptr when reading blend files that
contains custom socket types that are not registered yet. This fix
prevents crashing when this happenes (but the socket will stay
unregistered).
Pull Request: https://projects.blender.org/blender/blender/pulls/148103