Commit Graph

138720 Commits

Author SHA1 Message Date
Campbell Barton
04b7e8fe1d Merge branch 'blender-v4.2-release' 2024-07-06 15:00:40 +10:00
Campbell Barton
c3c69c8956 Merge branch 'blender-v4.2-release' 2024-07-06 15:00:38 +10:00
Campbell Barton
60be3d1aeb Merge branch 'blender-v4.2-release' 2024-07-06 15:00:34 +10:00
Campbell Barton
850e715682 UI: add UILayout.template_popup_confirm(..) function
This makes it possible for popups to have their confirm & cancel buttons
defined in the operator's draw callback.

When used with popups created by: `WindowManager::invoke_props_dialog()`
to override the default confirm/cancel buttons.

In the case of `WindowManager::popover(..)` & `bpy.ops.wm.call_panel()`
this can be used to add confirm/cancel buttons.

Details:

- When the confirm or cancel text argument is a blank string the button
  isn't shown, making it possible to only show a single button.
- The template is similar to UILayout::operator in that it returns the
  operator properties for the confirm action.
- MS-Windows alternate ordering of Confirm/Cancel is followed.

Needed to resolve #124098.

Ref !124139
2024-07-06 14:49:39 +10:00
Campbell Barton
bdf06e6d82 Cleanup: spelling in comments 2024-07-06 14:21:24 +10:00
Campbell Barton
c4ab17ab79 Cleanup: quiet compiler warnings 2024-07-06 13:37:16 +10:00
Jesse Yurkovich
b2dbf54929 Fix: MEM_new/MEM_freeN mismatch for CustomDataTransferLayerMap
Pull Request: https://projects.blender.org/blender/blender/pulls/124265
2024-07-06 02:43:03 +02:00
Jesse Yurkovich
8d26b2b80d Merge branch 'blender-v4.2-release' 2024-07-05 11:21:12 -07:00
Charles Wardlaw
5224b1cab2 Fix #124206: USD: Always export animation transforms, even when identity
Now the export only skips identity transforms on static exports, to save
space.

Co-authored-by: Charles Wardlaw <cwardlaw@nvidia.com>
Pull Request: https://projects.blender.org/blender/blender/pulls/124251
2024-07-05 20:19:47 +02:00
Hans Goudey
bc1c4f7f1d Fix #124256: Socket value hidden for string sockets
Mistake in df98aa61bba9ad3b800ad1c77da4c1eb4548340a.
2024-07-05 14:03:32 -04:00
Harley Acheson
c89400dcfb Merge branch 'blender-v4.2-release' 2024-07-05 10:37:58 -07:00
Harley Acheson
938f50e1f7 Fix #124168: Allow File Browser Layout Initialization While Minimized
If you change an area to a File Browser while it is vertically
minimized we get an assert on layout initialization since there
are no visible rows. But this state is valid and it works great
without this assert. This PR removes the assert and adds a comment.

Pull Request: https://projects.blender.org/blender/blender/pulls/124253
2024-07-05 19:36:49 +02:00
Harley Acheson
87687d08c1 Merge branch 'blender-v4.2-release' 2024-07-05 10:35:05 -07:00
Hans Goudey
b9edd2e02e Fix #124216: "Remove Hook" operator causes crash with geometry nodes
It looks like the "user edited flag propagation" node built for the geometry
nodes modifier is unchanged after modifiers are removed. My guess is this
is now a more general problem when modifiers are removed-- I guess the
depsgraph nodes for an object have to be rebuilt when that happens now.

Maybe there is a more general fix, but to fix the crash mentioned in the
report, I tagged the depsgraph for a relations update, which rebuilds the
problematic modifier node.

Pull Request: https://projects.blender.org/blender/blender/pulls/124252
2024-07-05 19:35:03 +02:00
Harley Acheson
fd06a407e1 Fix #124163: Update SO_DATA_API Outliner When Windows are Removed
On Window close send NC_WINDOW | NA_REMOVED notification. If Outliner
is in SO_DATA_API mode with this message then refresh.

Pull Request: https://projects.blender.org/blender/blender/pulls/124205
2024-07-05 19:33:27 +02:00
Philipp Oeser
c69b7e71a3 Merge branch 'blender-v4.2-release' 2024-07-05 18:56:39 +02:00
Philipp Oeser
4b168dd645 Fix #124166: Assetbrowser crash on quick Editor change (from py)
FileList can still be uninitialized while loading, so simple nullptr
check.

Pull Request: https://projects.blender.org/blender/blender/pulls/124243
2024-07-05 18:56:11 +02:00
Falk David
f23ade5ac4 Refactor: Replace BKE_attributes_supported with C++ API
This removes `BKE_attributes_supported`.
Instead, a static method `from_id`
is added to the `AttributeAccessor` class that constructs
the accessor from the given ID. If this fails, `std::nullopt`
is returned.

Pull Request: https://projects.blender.org/blender/blender/pulls/124245
2024-07-05 18:41:49 +02:00
Jacques Lucke
5360722449 Merge branch 'blender-v4.2-release'
This also reverts da2a262658a396 and 57e925b38feb19b and fixes a
merge conflict in `action.cc`.
2024-07-05 18:16:08 +02:00
Jacques Lucke
57e925b38f Fix: don't show grease pencil domain in Domain Size node
This fixes part of #123935. The change has to be reverted
in the `main` branch.
2024-07-05 18:09:38 +02:00
Jacques Lucke
da2a262658 Fix: don't show layer domain in viewer node
This fixes part of #123935.
2024-07-05 18:09:38 +02:00
Miguel Pozo
b20bacf657 Fix #123758: Viewport Render Animation doesn't track World updates
Viewport instances created by the Viewport Render Animation operator
don't get `view_updated` notifications.
Fix update detection by implementing a `last_update` timestamp for
`World`, similar to the ones added in #115196.

Pull Request: https://projects.blender.org/blender/blender/pulls/124114
2024-07-05 18:05:27 +02:00
Christoph Lendenfeld
c446813dd3 Fix #123943: manual channel ordering no longer works
The issue was that the function `animfilter_action` got a new
code segment at the start which checked `if (action.is_empty())`.
That function didn't check if the `groups` list of the action is empty
though. Regular keyframe animation is usually sorted into
keyframe groups, which means it is not stored under `curves` of the action.
However in the anim filtering code, the function `split_groups_action_temp`
moves the fcurves to their groups under the `groups` listbase.

Pull Request: https://projects.blender.org/blender/blender/pulls/124172
2024-07-05 17:56:45 +02:00
Jacques Lucke
e4c9b73051 Fix #124160: crash when trying to load unavailable grid
The openvdb API was used incorrectly before. I didn't notice that this is
a static function and requires the type to be passed in.

Note that this does not solve the cache invalidation issue yet. Instead
it handles the case more gracefully when the stored .vdb file changes
when Blender doesn't expect it to change.
2024-07-05 17:55:04 +02:00
0aa75ab57b Refactor: rename "Animation data-block" to "Action"
Rename "Animation data-block" to "Action" or "Layered Action", where
appropriate. Some uses of the term actually refer to the `AnimData`
struct, in which case they were left as-is.

No real functional changes, just changing some messages & descriptions.

Pull Request: https://projects.blender.org/blender/blender/pulls/124170
2024-07-05 17:52:55 +02:00
c0364efec0 Refactor: rename 'Action Binding' to 'Action Slot'
Rename 'Binding' to 'Slot'. The old term was causing all kind of
confusion, and 'slot' was considered to be a better term for the
intended functionality.

This commit breaks existing blend files that were using the new layered
Action for their animation. The animation data will be lost due to the
rename, as there is no versioning code or DNA renaming logic. At this
time the new system is still marked as experimental, so shouldn't be
used for anything serious anyway.

Pull Request: https://projects.blender.org/blender/blender/pulls/124170
2024-07-05 17:52:55 +02:00
Dalai Felinto
e969769a0c UI: Extensions: Update the tooltip for Allow Online Access
Some users were concerned that the tooltip wasn't clear enough on
indicating that Blender doesn't really inforce an offline mode.

The final text was a collaborative effort together with the UI team and
participants from the user-interface-module chat.

The tooltip talks about internet instead of specifically extensions or
repositories to leave room to be used in the future for other things
(e.g., for Blender to check for new release updates).
2024-07-05 17:49:10 +02:00
Dalai Felinto
7f6feb2872 UI: Extensions: Update the tooltip for Allow Online Access
Some users were concerned that the tooltip wasn't clear enough on
indicating that Blender doesn't really inforce an offline mode.

The final text was a collaborative effort together with the UI team and
participants from the user-interface-module chat.

The tooltip talks about internet instead of specifically extensions or
repositories to leave room to be used in the future for other things
(e.g., for Blender to check for new release updates).
2024-07-05 17:44:03 +02:00
Hans Goudey
ecebf94e25 Fix #124212: Edit mode undo crash with no faces
Just a missing null check here.
Caused by 734e9fa4b82cf8f6e291fc0e9755bafec1548c61.
2024-07-05 11:26:22 -04:00
Sebastian Parborg
75959af2ed Merge branch 'blender-v4.2-release' 2024-07-05 17:25:03 +02:00
Sebastian Parborg
f853d097a5 Fix: GLSL error in the sequencer when running mesa
It would error out with "illegal use of reserved word 'active'"
Rename the boolan value to not use the reserved word.
2024-07-05 17:22:52 +02:00
Iliya Katueshenock
a2a5532818 Fix #121110: Allow changing type of reroute node sockets
Simple fix to avoid regression of reroute sockets in a custom nodes system.
Proper solution will be in 4.3: #121146.

Pull Request: https://projects.blender.org/blender/blender/pulls/124244
2024-07-05 17:14:54 +02:00
Sergey Sharybin
1bb12fda96 Merge branch 'blender-v4.2-release' 2024-07-05 16:55:04 +02:00
Sergey Sharybin
e9d46b52df Fix #124109: Blender Crash on certain verticles in Dyntopo
Caused by 396ad5db83

It is possible that some edge collapsing of non-manifold mesh will
eventually result in extra wire edges, and loose vertices. This was
not properly handled in the boundary checks, assuming that all
modifications preserve mesh manifold.

This fix avoids the crash by adding nullptr check in the boundary
check.

While this is not fully ideal from the result perspective, it is
a safe change for 4.2. Ideally the wire edges and loose vertices
will be removed, but this is a bigger and more risky change. Also,
in Blender 4.0 it was possible to generate loose geometry in
dyntopo as well, so it just a general improvement to happen (and not
a regression).

Pull Request: https://projects.blender.org/blender/blender/pulls/124236
2024-07-05 16:54:29 +02:00
Pratik Borhade
1ca8dce9cc Fix: Assert when calling node tool
similar to f4ef3de32ba4addcfd822868793f95829d03b218

Pull Request: https://projects.blender.org/blender/blender/pulls/124220
2024-07-05 16:41:46 +02:00
Hans Goudey
b4c5334af7 Sculpt: Use new "offset brush" implementation for brush gravity
Part of #118145.
2024-07-05 10:31:36 -04:00
Hans Goudey
993361c2f0 Sculpt: Data oriented refactor for topology slide brush
Part of #118145.
Note that topology relax isn't affected here, only the slide part of the
brush. I did make one small logic change-- the brush strength is now
applied to the final translations rather than taken into account when
adding the influence from every vertex neighbor. The behavior doesn't
seem meaningfully different that way and it's easier to use common
utilities.
2024-07-05 10:20:22 -04:00
Hans Goudey
7c9b323b56 Cleanup: Sculpt: Changes for consistency in draw sharp brush 2024-07-05 10:20:22 -04:00
Lukas Stockner
fad8d451ef Fix: MEM_new/MEM_freeN mismatch in Curvemap UI 2024-07-05 15:32:02 +02:00
Falk David
a9c0dc9084 GPv3: Draw Tool: Trim Stroke Ends option
This adds the "Trim Stroke Ends" option to the GPv3 draw tool.
It uses the same core function as the Cutter tool.

Pull Request: https://projects.blender.org/blender/blender/pulls/124232
2024-07-05 14:42:50 +02:00
Pratik Borhade
924aa88877 Fix #124082: GPv3: New frames created in sculpt mode are empty
Allow inserting duplicate keys of visible drawing when using sculpt tools.
Added new variable `is_tool_supported` to include cases where
duplicating drawings is required.

Pull Request: https://projects.blender.org/blender/blender/pulls/124087
2024-07-05 14:09:08 +02:00
Falk David
969efcad7b Refactor: GPv3: Move core cutter function
This moves the core of the cutter tool to
`ed::greasepencil::cutter::trim_curve_segments`.
This is in preperation for the draw tool which
also needs to be able to trim the stroke.

No functional changes expected.
2024-07-05 13:47:26 +02:00
b33ad47ee0 Anim: fix unsafe use of BLI_snprintf_rlen() in the NLA drawing code
Replace `BLI_snprintf_rlen()` with `STRNCPY_RLEN()`, as the string to
copy is not actually a printf-style format string, but just a plain string.

Pull Request: https://projects.blender.org/blender/blender/pulls/124228
2024-07-05 13:39:05 +02:00
Campbell Barton
a2482ab450 Merge branch 'blender-v4.2-release' 2024-07-05 21:05:28 +10:00
Campbell Barton
46743e8e3f AUTHORS: add 2 new authors, 3 updated names 2024-07-05 21:04:39 +10:00
Campbell Barton
8250ac142f Merge branch 'blender-v4.2-release' 2024-07-05 20:49:47 +10:00
Campbell Barton
337abcdfc1 Merge branch 'blender-v4.2-release' 2024-07-05 20:49:45 +10:00
Campbell Barton
4282187e72 Merge branch 'blender-v4.2-release' 2024-07-05 20:49:42 +10:00
Campbell Barton
2b88bcdd3a Merge branch 'blender-v4.2-release' 2024-07-05 20:49:38 +10:00
Campbell Barton
a53aad6f73 Extensions: refactor message logging into a class
Pass a logging class between functions instead of a function. Has the
advantage that different kinds of messages are exposed as methods.
2024-07-05 20:46:40 +10:00