Blender Git Commits

Blender Git "master" branch commits.

Page: 353 / 5574

March 11, 2021, 23:15 (GMT)
Alembic procedural: fix potential zero scale matrix generation

This can happen during user edits or with files missing the global scale
property.
March 11, 2021, 22:42 (GMT)
Added missing file to last commit:

Nodes: Add Attribute Remove Node D10697
March 11, 2021, 22:06 (GMT)
Nodes: Add Attribute Remove Node

This patch adds a node, that removes an attribute if possible,
otherwise it adds an error message.

Differential Revision: https://developer.blender.org/D10697
March 11, 2021, 17:53 (GMT)
Nodes: Fix drag link from output to already linked Multi-Input Socket

This patch fixes a visual bug related to connecting an output socket to
a Multi-Input Socket, that already has a link to that same output.
In this case, the drag link got a new index and snapped to a new
position. This path makes the drag link snap to the same position as the
first link between the two sockets.

Differential Revision: https://developer.blender.org/D10689
Revision 8c6337e by Julian Eisel
March 11, 2021, 17:47 (GMT)
Fix missing UI updates, caused by own earlier commit

Caused by 46aa70cb486d.

RNA would send property update notifiers with the owner ID as `reference` data.
Since above's commit we'd only send the notifiers to editors if the reference
data address matches the space's address. So editors wouldn't get the notifiers
at all.

The owner ID for space properties is always the screen AFAIK. So allow
notifiers with the screen as reference to be passed to editors as well, think
this is reasonable to do either way.

For example, steps to reproduce were:
* Open Asset Browser
* Mark some data-blocks of different types as assets (e.g. object & its
material)
* Switch between the categories in the Asset Browser. The asset list wouldn't
be updated.
March 11, 2021, 17:20 (GMT)
Cleanup: remove unnecessary `const` from function declaration

No functional changes.
March 11, 2021, 17:17 (GMT)
GPencil: Remove limitation to use only one Lattice modifier

This limitation was necessary in older versions, but now can be removed.
Revision 7092d6a by Julian Eisel
March 11, 2021, 16:57 (GMT)
Fix warning from own previous commit
Revision 46aa70c by Julian Eisel
March 11, 2021, 16:43 (GMT)
UI: Avoid unnecessary redraws of unrelated editors on space changes

When adding a notifier, `reference` data can be passed. The notifier system
uses this to filter out listeners, for example if data of a scene changes,
windows showing a different scene won't get the notifiers sent to their
listeners.

For the `NC_SPACE` notifiers, a number of places also passed the space as
`reference`, but that wasn't used at all. The notifier would still be sent to
all listeners in all windows (and the listeners didn't use it either). Causing
some unnecessary updates (e.g. see ed2c4825d3e2344).
With this commit, passing a space will make sure the notifier is only sent to
that exact space. Some code seems to already have expected that to be the case.

However there were some cases that passed the space as `reference` without
reason, which would break with this commit (meaning they wouldn't redraw or
update correctly).
Corrected these so they don't pass the space anymore.
Revision ed2c482 by Julian Eisel
March 11, 2021, 16:43 (GMT)
Fix Asset Browser showing oudated list for changes done while browser is hidden

Steps to reproduce were:
* Open an Asset Browser
* "Mark Asset" on some data-block
* Change the Asset Browser into a different editor (not File Browser!)
* "Clear Asset" on the data-block again, or mark another asset
* Change back to the Asset Browser, it will show an outdated list

Now the file-browser reloads local file data after spaces were changed. Note
that the current notifier code doesn't limit the space-change notifiers to the
affected spaces, so changing any visible space will trigger this. That's an
issue to be fixed separately.
March 11, 2021, 16:23 (GMT)
GPencil: Fix unreported Fill fails if the stroke was tagged

In some situations the strokes could be tagged before filling, so it's necessary to reset before.
March 11, 2021, 16:21 (GMT)
Fix regression in 2cc5af9c553cfc00b7d4616445ad954597a92d94

The check for undo-depth increment/decrement assumed a newly loaded
window manager would have a different pointer.

This broke bl_animation_fcurves test indirectly,
the change to undo-depth caused the redo panel to attempt to popup
in background mode - which isn't supported.

Now the pointer is unchanged, the undo-depth is assumed to match
the value used when calling the operator.

The undo-depth is now properly maintained between file loads,
which is an improvement on the original behavior which reset it.
March 11, 2021, 15:51 (GMT)
Fix T86199: error when adding custom fluid diffusion preset

Differential Revision: https://developer.blender.org/D10694
March 11, 2021, 15:15 (GMT)
Fluid: Updated hidden symbol visibility comment

It turns out that on official arm64 devices (not DevKit) the linker
warnings still show up. So just leaving this as is.

Ref D9002
March 11, 2021, 13:51 (GMT)
Cleanup: spelling
March 11, 2021, 13:40 (GMT)
Cleanup: split file read and setup into separate steps

Currently file loading performs almost all reloading logic
even in the case loading the file fails, causing the file to be in
a state that isn't well defined: undo is cleared, timers are canceled &
scripts are re-registered.
March 11, 2021, 13:40 (GMT)
WM: keep the current state when a blend fails to load

Previously many operations would run on file load, even if the file
did not load. Pre/post load handlers were called, timers canceled,
all undo data freed, editors exited ... etc.

Now keep the blend file in it's current state.

This simplifies updating this area of code as there is one less
possible situation to account for.
March 11, 2021, 13:40 (GMT)
Fix T86431: Keep memory location of the window manager on file load

Keep the pointer location from the initial window-manager
between file load operations.

This is needed as the Python API may hold references to keymaps for e.g.
which are transferred to the newly loaded window manager,
without their `PointerRNA.owner_id` fields being updated.

Since there is only ever one window manager, keep the memory at the same location so the Python ID pointers stay valid.

Reviewed By: mont29

Ref D10690
March 11, 2021, 13:40 (GMT)
Cleanup: file loading/recover checks

- Don't set G.relbase_valid until the file is loaded.
- Remove unnecessary string pointer comparison.
- Remove unused filename being passed to 'setup_app_data'.
March 11, 2021, 13:26 (GMT)
LibOverride: Add a utils to check if override has been user-edited.

Part of T83811 & D10649.
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021